5#ifndef LARIDENTIFIER_LARELECTRODEID_H
6#define LARIDENTIFIER_LARELECTRODEID_H
128 std::vector<HWIdentifier>::const_iterator
electrode_end()
const;
368inline int LArElectrodeID::module(
const HWIdentifier id)
const
371 return (m_module_impl.unpack(
id));
436 det == 5 && hveta == 1
450 det == 5 && hveta == 2
463 det == 5 && hveta == 3
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
static const int s_larconfig_value
int lar_field_value() const
AtlasDetectorID(const std::string &name, const std::string &group)
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
IdDictFieldImplementation is used to capture the specification of a single field of an Identifier.
This is a "hash" representation of an Identifier.
Helper for the Liquid Argon Calorimeter cell at the electrode level.
IdentifierHash electrodeHash(HWIdentifier electrode_id) const
Create an electrode hash identifier from an electrode identifier.
IdDictFieldImplementation m_atlas_impl
Field Implementation.
size_type m_detector_index
bool isFCAL3(const HWIdentifier id) const
Return yes if electrode is in FCAL wheel 3.
bool isFCAL(const HWIdentifier id) const
Return yes if electrode is in FCAL.
IdDictFieldImplementation m_hveta_impl
bool isEMBPUR(const HWIdentifier id) const
Return yes if electrode is in EMB PUR.
IdDictFieldImplementation m_hvphi_impl
IdDictFieldImplementation m_detector_impl
Identifier::size_type size_type
std::vector< HWIdentifier >::const_iterator electrode_begin() const
Return an iterator pointing to a collection of electrode identifiers.
bool isEMECoutWHEEL(const HWIdentifier id) const
Return yes if electrode is in EMEC outer wheel.
size_type m_electrode_index
IdDictFieldImplementation m_configuration_impl
IdDictFieldImplementation m_hvgap_impl
size_type m_larelectrode_index
MultiRange m_full_larelectrode_range
IdContext electrodeContext() const
Define feedthrough Context.
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr)
Initialization from the identifier dictionary.
bool isEMEC(const HWIdentifier id) const
Return yes if electrode is in EMEC.
virtual ~LArElectrodeID()
Default destructor.
void electrodeId_checks(int det, int side, int mod, int phi, int eta, int hvgap, int elec) const
IdDictFieldImplementation m_electrode_impl
size_type m_configuration_index
bool isFCAL1(const HWIdentifier id) const
Return yes if electrode is in FCAL wheel 1.
IdDictFieldImplementation m_zside_impl
size_type m_larElectrodeRegion_index
HWIdentifier ElectrodeId(int det, int side, int mod, int phi, int eta, int gap, int elec) const
Create an Electrode identifier from fields.
int hv_eta(const HWIdentifier id) const
Return an integer corresponding to the high volatge eta sector of an hardware electrode identifier.
LArElectrodeID()
Default constructor.
int zside(const HWIdentifier id) const
Return an integer corresponding to the side of an hardware electrode identifier.
IdentifierHash electrode_hash_binary_search(HWIdentifier elecId) const
std::vector< HWIdentifier > m_electrode_vec
bool isEMECinWHEEL(const HWIdentifier id) const
Return yes if electrode is in EMEC inner wheel.
int get_expanded_id(const HWIdentifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const
int gap(const HWIdentifier id) const
Return an integer corresponding to the cell gap of an hardware electrode identifier.
size_type electrodeHashMax() const
Define hash tables max size.
std::vector< HWIdentifier >::const_iterator electrode_end() const
bool isEMECPS(const HWIdentifier id) const
Return yes if electrode is in EMEC PreSampler.
bool isEMBPS(const HWIdentifier id) const
Return yes if electrode is in EMBPS.
size_type m_electrodeHashMax
bool isECPUR(const HWIdentifier id) const
Return yes if electrode is in EC PUR.
bool isEMB(const HWIdentifier id) const
Return boolean yes if electrode is in EMB.
const IdDictDictionary * m_dict
bool isFCAL2(const HWIdentifier id) const
Return yes if electrode is in FCAL wheel 2.
int electrode(const HWIdentifier id) const
Return an integer corresponding to the electrode number of an hardware electrode identifier.
int detector(const HWIdentifier id) const
Return an integer corresponding to the detector of an hardware electrode identifier.
IdDictFieldImplementation m_module_impl
bool isHEC(const HWIdentifier id) const
Return yes if electrode is in HEC.
MultiRange m_full_electrode_range
int hv_phi(const HWIdentifier id) const
Return an integer corresponding to the high voltage phi sector of an hardware electrode identifier.
A MultiRange combines several Ranges.