5#ifndef ATLASDETDESCR_ATLASDETECTORID_H
6#define ATLASDETDESCR_ATLASDETECTORID_H
22#include "Identifier/Identifier.h"
95 const std::string&
group()
const;
155 const IdContext* context = 0)
const override;
160 const IdContext* context = 0)
const override;
179 char sep =
'.' )
const;
183 char sep =
'.' )
const;
257 const std::vector<std::string>&
dict_names(
void)
const;
259 const std::vector<std::string>&
file_names(
void)
const;
261 const std::vector<std::string>&
dict_tags (
void)
const;
266 virtual bool do_checks (
void)
const override;
343 const std::string& dict_name);
715 if (!
is_muon(
id))
return false;
731 if (!
is_muon(
id))
return false;
747 if (!
is_muon(
id))
return false;
758 if (!
is_muon(
id))
return false;
769 if (!
is_muon(
id))
return false;
780 if (!
is_muon(
id))
return false;
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Identifier lar_hec(void) const
virtual std::string dictionaryVersion(void) const override
Range::field m_lvl1_field
ExpandedIdentifier zdc_exp(void) const
int mm_field_value() const
bool m_do_checks
Flag for subclasses to know whether or not to perform checks.
int muon_field_value() const
Identifier hgtd(void) const
Identifier lar_dm(void) const
std::string m_dict_version
bool m_do_neighbours
Flag for subclasses to know whether or not to perform neighbour initialization.
HelperType
enum class for eventual final derived types of this class
IdDictFieldImplementation m_det_impl
int csc_field_value() const
const IdDictDictionary * m_calo_dict
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr) override
Initialization from the identifier dictionary.
virtual bool do_neighbours(void) const override
Neighbour initialization is performed by default One can switch or query this mode for any idHelper w...
bool is_lar_em(Identifier id) const
Identifier tile(void) const
IdContext detsystem_context(void) const
IdContext (indicates id length) for detector systems.
Range::field m_lar_dm_field
virtual int get_id(const IdentifierHash &hash_id, Identifier &id, const IdContext *context=0) const override
Create compact id from hash id (return == 0 for OK)
int lar_hec_field_value() const
std::string print_to_string(Identifier id, const IdContext *context=0) const
or provide the printout in string form
bool reinitialize(const IdDictMgr &dict_mgr)
Test whether an idhelper should be reinitialized based on the change of tags.
const IdDictDictionary * m_muon_dict
IdDictFieldImplementation m_calo_side_impl
ExpandedIdentifier bcm_exp(void) const
ExpandedIdentifier lar_em_exp(void) const
LAr.
std::string fix_barrel_ec(const std::string &barrel_ec) const
ExpandedIdentifier sct_exp(void) const
int lar_fcal_field_value() const
Identifier trt(void) const
std::vector< std::string > m_dict_names
List of dictionary names used by this helper.
AtlasDetectorID & operator=(const AtlasDetectorID &other)=delete
ExpandedIdentifier pixel_exp(void) const
Inner Detector:
Identifier::size_type size_type
bool is_mdt(Identifier id) const
std::string m_group
Group name.
bool is_indet(Identifier id) const
AtlasDetectorID(const AtlasDetectorID &other)=delete
int lumi_field_value() const
ExpandedIdentifier lar_exp(void) const
virtual void setDictVersion(const IdDictMgr &dict_mgr, const std::string &name) override
int plr_field_value() const
Identifier stgc(void) const
int pixel_field_value() const
ExpandedIdentifier lar_hec_exp(void) const
int bcm_field_value() const
ExpandedIdentifier muon_exp(void) const
IdDictFieldImplementation m_lar_part_impl
int register_dict_tag(const IdDictMgr &dict_mgr, const std::string &dict_name)
Register the file and tag names for a particular IdDict dictionary.
bool is_lar(Identifier id) const
Range::field m_lvl1_onl_field
bool is_bcm(Identifier id) const
int hgtd_field_value() const
virtual bool do_checks(void) const override
Checks are performed by default in debug compilation and NOT in optimized compilation.
int tgc_field_value() const
bool is_stgc(Identifier id) const
IdDictFieldImplementation m_lar_fcal_module_impl
IdDictFieldImplementation m_muon_mdt_impl
bool is_rpc(Identifier id) const
virtual ~AtlasDetectorID()
int sct_field_value() const
int mdt_field_value() const
IdDictFieldImplementation m_indet_part_impl
Identifier mdt(void) const
void show(Identifier id, const IdContext *context=0, char sep='.') const
Short print out of any identifier (optionally provide separation character - default is '.
Identifier lar_lvl1(void) const
bool is_sct(Identifier id) const
IdDictFieldImplementation m_muon_rpc_impl
ExpandedIdentifier indet_exp(void) const
Detector systems:
ExpandedIdentifier lumi_exp(void) const
bool is_lar_dm(Identifier id) const
LAr/Tile dead material:
int trt_field_value() const
int calo_field_value() const
virtual void set_do_checks(bool do_checks) override
std::vector< std::string > m_dict_tags
List of dictionary versions used by this helper.
bool is_tgc(Identifier id) const
size_type m_MUON_SUBDET_INDEX
ExpandedIdentifier lar_fcal_exp(void) const
bool is_lar_fcal(Identifier id) const
bool is_pixel(Identifier id) const
int forward_field_value() const
bool is_alfa(Identifier id) const
std::string to_range(const ExpandedIdentifier &id) const
bool is_plr(Identifier id) const
const std::vector< std::string > & dict_names(void) const
Dictionary names.
const std::vector< std::string > & dict_tags(void) const
Version tags for subdet dictionaries.
bool is_lvl1_online(Identifier id) const
const std::vector< std::string > & file_names(void) const
File names for subdet dictionaries.
const IdDictDictionary * m_tile_dict
ExpandedIdentifier fwd_exp(void) const
const IdDictDictionary * m_fwd_dict
int alfa_field_value() const
bool is_muon(Identifier id) const
Identifier mm(void) const
int initLevelsFromDict(const IdDictMgr &dict_mgr)
ExpandedIdentifier trt_exp(void) const
int lar_field_value() const
bool is_hgtd(Identifier id) const
friend class AtlasDetectorIDHelper
bool is_calo(Identifier id) const
IdContext subdet_context(void) const
IdContext (indicates id length) for sub-detector.
Identifier calo(void) const
bool is_tile_dm(Identifier id) const
std::string show_to_string(Identifier id, const IdContext *context=0, char sep='.') const
or provide the printout in string form
Identifier csc(void) const
bool is_csc(Identifier id) const
Identifier lar(void) const
Identifier sct(void) const
Identifier pixel(void) const
int stgc_field_value() const
bool is_tile(Identifier id) const
int zdc_field_value() const
Identifier muon(void) const
ExpandedIdentifier tile_exp(void) const
bool is_lar_minifcal(Identifier id) const
AtlasDetectorIDHelper * m_helper
bool is_mm(Identifier id) const
const IdDictDictionary * m_indet_dict
void print(Identifier id, const IdContext *context=0) const
Expanded print out of any identifier.
ExpandedIdentifier lucid_exp(void) const
Identifier lumi(void) const
bool is_forward(Identifier id) const
virtual void set_do_neighbours(bool do_neighbours) override
const IdDictDictionary * m_atlas_dict
bool is_lumi(Identifier id) const
ExpandedIdentifier alfa_exp(void) const
Forward.
bool is_lucid(Identifier id) const
ExpandedIdentifier hgtd_exp(void) const
int tile_field_value() const
bool is_lar_hec(Identifier id) const
Identifier lar_em(void) const
Identifier rpc(void) const
const IdDictDictionary * m_lar_dict
const std::string & group() const
Group name for this helper.
virtual int get_hash(const Identifier &id, IdentifierHash &hash_id, const IdContext *context=0) const override
Create hash id from compact id (return == 0 for OK)
int rpc_field_value() const
Identifier tgc(void) const
Identifier lar_fcal(void) const
bool is_trt(Identifier id) const
ExpandedIdentifier calo_exp(void) const
std::vector< unsigned int > m_muon_tech_bits
Range::field m_tile_dm_field
bool m_isHighLuminosityLHC
bool is_zdc(Identifier id) const
int m_LAR_FCAL_MODULE_INDEX
bool m_is_initialized_from_dict
Identifier indet(void) const
Detector systems:
AtlasDetectorID(const std::string &name, const std::string &group)
IdDictFieldImplementation m_fwd_part_impl
bool is_lvl1_trig_towers(Identifier id) const
int lar_em_field_value() const
virtual HelperType helper() const
Type of helper, defaulted to 'Unimplemented'.
int indet_field_value() const
Provide efficient access to individual field values, for subclass idhelpers.
IdDictFieldImplementation m_muon_station_name_impl
int lucid_field_value() const
Identifier tile_dm(void) const
std::vector< std::string > m_file_names
List of dictionary file names used by this helper.
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 an abstract base class for helper classes that know how to convert Identifier <-> IdentifierH...
This is a "hash" representation of an Identifier.
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.