![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
This class factors out code common between LArEM_ID and LArEM_SuperCell_ID.
More...
#include <LArEM_Base_ID.h>
|
class | HashCalc |
| small class holding the starting hash value, the min eta and the number of phi bins of each region More...
|
|
|
typedef Identifier::size_type | size_type |
|
typedef std::vector< Identifier >::const_iterator | id_iterator |
| Type for iterators over identifiers. More...
|
|
typedef boost::iterator_range< id_iterator > | id_range |
| Type for range over identifiers. More...
|
|
enum | { NOT_VALID =999999
} |
|
enum | HelperType {
HelperType::Unimplemented = -1,
HelperType::Silicon = 0,
HelperType::Pixel,
HelperType::PLR,
HelperType::SCT,
HelperType::TRT,
HelperType::LArEM,
HelperType::LArFCal,
HelperType::LArFCalSuperCell,
HelperType::LArHEC,
HelperType::LArHEC_SuperCell,
HelperType::LARMiniFCal,
HelperType::Tile,
HelperType::TileSuperCell,
HelperType::LArOnline,
HelperType::LArOnlineSuperCell,
HelperType::LArElectrode,
HelperType::LArHVLine,
HelperType::TileHardware,
HelperType::TileTestbeam,
HelperType::CaloCell,
HelperType::CaloSuperCell,
HelperType::CaloDM,
HelperType::CaloLvl1,
HelperType::GTower,
HelperType::JTower,
HelperType::Muon,
HelperType::LUCID,
HelperType::LUCID_Hardware,
HelperType::Zdc,
HelperType::ZdcHardware,
HelperType::TT
} |
| enum class for eventual final derived types of this class More...
|
|
|
| LArEM_Base_ID (const std::string &name, bool supercell) |
| Constructor. More...
|
|
| ~LArEM_Base_ID (void) |
|
Identifier | region_id (const ExpandedIdentifier &exp_id) const |
| Build a cell identifier from an expanded identifier. More...
|
|
Identifier | channel_id (const ExpandedIdentifier &exp_id) const |
| Build a cell identifier from an expanded identifier. More...
|
|
Identifier | region_id (int barrel_ec, int sampling, int region) const |
| build a region identifier More...
|
|
Identifier | region_id (int barrel_ec, int sampling, int region, bool checks) const |
|
Identifier | channel_id (int barrel_ec, int sampling, int region, int eta, int phi) const |
| build a cell identifier More...
|
|
Identifier | channel_id (int barrel_ec, int sampling, int region, int eta, int phi, bool checks) const |
|
Identifier | region_id (const Identifier channelId) const |
| allows to know in which region is a channel/cell – valid for both kinds of channels More...
|
|
Identifier | channel_id (const Identifier regionId, int eta, int phi) const |
| allows to build a cell id starting from a region id (e.g. More...
|
|
Identifier | channel_id (const Identifier regionId, int eta, int phi, bool checks) const |
|
IdentifierHash | channel_hash (Identifier channelId) const |
| create hash id from channel id
More...
|
|
IdentifierHash | channel_hash_binary_search (Identifier channelId) const |
| create hash id from channel id – method NOT optimised, please use channel_hash() above More...
|
|
id_iterator | reg_begin (void) const |
| begin iterator over set of Region Identifiers More...
|
|
id_iterator | reg_end (void) const |
| end iterator over set of Region Identifiers More...
|
|
id_range | reg_range () const |
| Range over set of Region Identifiers. More...
|
|
id_iterator | em_begin (void) const |
| begin iterator over full set of EM Identifiers More...
|
|
id_iterator | em_end (void) const |
| end iterator over full set of EM Identifiers More...
|
|
id_range | em_range () const |
| Range over full set of EM Identifiers. More...
|
|
const std::vector< Identifier > & | channel_ids () const |
| provide access to channel id vector, accessed via hash More...
|
|
bool | is_em_barrel (const Identifier id) const |
| test if the id belongs to the EM barrel More...
|
|
bool | is_em_endcap (const Identifier id) const |
| test if the id belongs to the EM Endcap More...
|
|
bool | is_em_endcap_inner (const Identifier id) const |
| test if the id belongs to the EM Endcap inner wheel More...
|
|
bool | is_em_endcap_outer (const Identifier id) const |
| test if the id belongs to the EM Endcap outer wheel More...
|
|
int | barrel_ec (const Identifier id) const |
| return barrel_ec according to :
More...
|
|
int | sampling (const Identifier id) const |
| return sampling according to :
More...
|
|
int | region (const Identifier id) const |
| return region according to :
More...
|
|
int | eta (const Identifier id) const |
| return eta according to :
More...
|
|
int | phi (const Identifier id) const |
| return phi according to :
More...
|
|
bool | is_supercell (const Identifier id) const |
| Test if the identifier represents a supercell. More...
|
|
int | eta_min (const Identifier regId) const |
| min value of eta index (-999 == failure) More...
|
|
int | eta_max (const Identifier regId) const |
| max value of eta index (-999 == failure) More...
|
|
int | phi_min (const Identifier regId) const |
| min value of phi index (-999 == failure) More...
|
|
int | phi_max (const Identifier regId) const |
| max value of phi index (-999 == failure) More...
|
|
int | initialize_base_from_dictionary (const IdDictMgr &dict_mgr, const std::string &group_name) |
| initialization from the identifier dictionary More...
|
|
bool | twoSymSides () const |
| True if the + and - sides of the calorimeter are identical (true layout). More...
|
|
int | get_neighbours (const IdentifierHash id, const LArNeighbours::neighbourOption &option, std::vector< IdentifierHash > &neighbourList) const |
| access to hashes for neighbours return == 0 for neighbours found
option = prevInPhi, nextInPhi, prevInEta, nextInEta, faces2D, corners2D, all2D, prevInSamp, nextInSamp, upAndDown, prevSubDet, nextSubDet, all3D
More...
|
|
Identifier | region_id (IdentifierHash hashId) const |
| Return the region Identifier for a given hash code (no checking). More...
|
|
IdentifierHash | region_hash (Identifier regionId) const |
| Convert a connected region Identifier to a hash code. More...
|
|
Identifier | channel_id (IdentifierHash hashId) const |
| Return the channel (cell) Identifier for a given hash code (no checking). More...
|
|
const HashGroup & | channels () const |
| Return the HashGroup for channels (cells). More...
|
|
const HashGroup & | regions () const |
| Return the HashGroup for regions. More...
|
|
Identifier | channel_id (IdentifierHash hashId) const |
| Return the channel (cell) Identifier for a given hash code (no checking). More...
|
|
Identifier | region_id (IdentifierHash hashId) const |
| Return the region Identifier for a given hash code (no checking). More...
|
|
IdentifierHash | region_hash (Identifier regionId) const |
| Convert a connected region Identifier to a hash code. More...
|
|
virtual int | get_id (const IdentifierHash &hash_id, Identifier &id, const IdContext *context=0) const |
| Convert a hash code to an Identifier for either channels or regions, depending on the context. More...
|
|
virtual int | get_hash (const Identifier &id, IdentifierHash &hash_id, const IdContext *context=0) const |
| Convert an Identifier to a hash code for either channels or regions, depending on the context. More...
|
|
size_type | channel_hash_max () const |
| One more than the largest channel (cell) hash code. More...
|
|
size_type | region_hash_max () const |
| One more than the largest region hash code. More...
|
|
IdContext | channel_context () const |
| Return the context for channels (cells). More...
|
|
IdContext | region_context () const |
| Return the context for regions. More...
|
|
const std::vector< const IdDictRegion * > & | dictRegions () const |
| Return the vector of IdDictRegion , accessed via region hash. More...
|
|
float | etaGranularity (const IdentifierHash regHash) const |
| Return the eta granularity of a region, or NOT_VALID . More...
|
|
float | phiGranularity (const IdentifierHash regHash) const |
| Return the phi granularity of a region, or NOT_VALID . More...
|
|
float | eta0 (const IdentifierHash regHash) const |
| Return the minimum eta of region, or NOT_VALID . More...
|
|
float | phi0 (const IdentifierHash regHash) const |
| Return the minimum phi of region, or NOT_VALID . More...
|
|
std::string | name () const |
| Return the name for this helper. More...
|
|
IMessageSvc * | msgSvc () |
| Return the message service for this helper (may be null). More...
|
|
bool | msgLvl (const MSG::Level lvl) const |
| Test the output level. More...
|
|
MsgStream & | msg () const |
| The standard message stream. More...
|
|
MsgStream & | msg (const MSG::Level lvl) const |
| The standard message stream. More...
|
|
void | setLevel (MSG::Level lvl) |
| Change the current logging level. More...
|
|
|
void | region_id_checks (int barrel_ec, int sampling, int region) const |
|
void | channel_id_checks (int barrel_ec, int sampling, int region, int eta, int phi) const |
|
void | channel_id_checks (const Identifier regionId, int eta, int phi) const |
|
virtual int | get_expanded_id (const Identifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const |
| create expanded Identifier from Identifier (return == 0 for OK) More...
|
|
int | phi_min_init (const Identifier regId) const |
|
int | initLevelsFromDict (const std::string &group_name) |
|
int | init_hashes (void) |
|
int | get_prevInEta (const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const float &gPhi, const unsigned int &minHash, int &neighbourIndex, IdentifierHash *neighbList, unsigned int &nBiggerCell) const |
|
int | get_nextInEta (const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const float &gPhi, const unsigned int &maxHash, int &neighbourIndex, IdentifierHash *neighbList, unsigned int &nBiggerCell) const |
|
int | get_prevInSamp (const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, const double &gEta, const float &gPhi, const double &absEta, int &neighbourIndex, IdentifierHash *neighbList) const |
|
int | get_nextInSamp (const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, const double &gEta, const float &gPhi, const double &absEta, int &neighbourIndex, IdentifierHash *neighbList) const |
|
int | get_prevInSubdet (const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, const double &gEta, const float &gPhi, const double &absEta, int &neighbourIndex, IdentifierHash *neighbList) const |
|
int | get_nextInSubdet (const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, const double &gEta, const float &gPhi, const double &absEta, int &neighbourIndex, IdentifierHash *neighbList) const |
|
int | init_neighbors (void) |
|
| LArEM_Base_ID (const LArEM_Base_ID &) |
|
LArEM_Base_ID & | operator= (const LArEM_Base_ID &) |
|
void | initMessaging () const |
| Initialize our message level and MessageSvc. More...
|
|
|
static int | get_prevInPhi (const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, int &neighbourIndex, IdentifierHash *neighbList) |
|
static int | get_nextInPhi (const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, int &neighbourIndex, IdentifierHash *neighbList) |
|
This class factors out code common between LArEM_ID and LArEM_SuperCell_ID.
Definition at line 37 of file LArEM_Base_ID.h.
◆ id_iterator
◆ id_range
◆ size_type
◆ anonymous enum
◆ anonymous enum
◆ HelperType
enum class for eventual final derived types of this class
Enumerator |
---|
Unimplemented | |
Silicon | |
Pixel | |
PLR | |
SCT | |
TRT | |
LArEM | |
LArFCal | |
LArFCalSuperCell | |
LArHEC | |
LArHEC_SuperCell | |
LARMiniFCal | |
Tile | |
TileSuperCell | |
LArOnline | |
LArOnlineSuperCell | |
LArElectrode | |
LArHVLine | |
TileHardware | |
TileTestbeam | |
CaloCell | |
CaloSuperCell | |
CaloDM | |
CaloLvl1 | |
GTower | |
JTower | |
Muon | |
LUCID | |
LUCID_Hardware | |
Zdc | |
ZdcHardware | |
TT | |
Definition at line 60 of file AtlasDetectorID.h.
65 LArEM, LArFCal, LArFCalSuperCell,
66 LArHEC, LArHEC_SuperCell, LARMiniFCal,
70 LArOnline, LArOnlineSuperCell,
72 LArElectrode, LArHVLine,
73 TileHardware, TileTestbeam,
80 LUCID, LUCID_Hardware,
◆ ID
◆ LArEM_Base_ID() [1/2]
LArEM_Base_ID::LArEM_Base_ID |
( |
const std::string & |
name, |
|
|
bool |
supercell |
|
) |
| |
Constructor.
If SUPERCELL is true, this helper is for supercells.
Definition at line 22 of file LArEM_Base_ID.cxx.
◆ ~LArEM_Base_ID()
LArEM_Base_ID::~LArEM_Base_ID |
( |
void |
| ) |
|
◆ LArEM_Base_ID() [2/2]
◆ alfa_exp()
◆ alfa_field_value()
int AtlasDetectorID::alfa_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ barrel_ec()
return barrel_ec according to :
element range meaning
------- ----- -------
barrel_ec +/-1 positive/negative barrel - A/C side or P/M half barrel
" +/-2 positive/negative endcap outer wheel - A/C side
" +/-3 positive/negative endcap inner wheel - A/C side
◆ bcm_exp()
◆ bcm_field_value()
int AtlasDetectorID::bcm_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ calo()
◆ calo_exp()
◆ calo_field_value()
int AtlasDetectorID::calo_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ channel_context()
IdContext CaloIDHelper::channel_context |
( |
| ) |
const |
|
inherited |
Return the context for channels (cells).
◆ channel_hash()
create hash id from channel id
◆ channel_hash_binary_search()
create hash id from channel id – method NOT optimised, please use channel_hash() above
◆ channel_hash_max()
size_type CaloIDHelper::channel_hash_max |
( |
| ) |
const |
|
inherited |
One more than the largest channel (cell) hash code.
◆ channel_id() [1/7]
Build a cell identifier from an expanded identifier.
◆ channel_id() [2/7]
allows to build a cell id starting from a region id (e.g.
from descriptors) – valid for both kinds of channels
◆ channel_id() [3/7]
◆ channel_id() [4/7]
Return the channel (cell) Identifier for a given hash code (no checking).
◆ channel_id() [5/7]
Return the channel (cell) Identifier for a given hash code (no checking).
◆ channel_id() [6/7]
Identifier LArEM_Base_ID::channel_id |
( |
int |
barrel_ec, |
|
|
int |
sampling, |
|
|
int |
region, |
|
|
int |
eta, |
|
|
int |
phi |
|
) |
| const |
◆ channel_id() [7/7]
Identifier LArEM_Base_ID::channel_id |
( |
int |
barrel_ec, |
|
|
int |
sampling, |
|
|
int |
region, |
|
|
int |
eta, |
|
|
int |
phi, |
|
|
bool |
checks |
|
) |
| const |
◆ channel_id_checks() [1/2]
void LArEM_Base_ID::channel_id_checks |
( |
const Identifier |
regionId, |
|
|
int |
eta, |
|
|
int |
phi |
|
) |
| const |
|
private |
Definition at line 178 of file LArEM_Base_ID.cxx.
188 std::string errorMessage =
"LArEM_Base_ID::channel_id_checks(regId) result is not OK: ID = "
196 std::string errorMessage =
"LArEM_Base_ID::channel_id_checks(regId) result is not OK: ID, range = "
◆ channel_id_checks() [2/2]
void LArEM_Base_ID::channel_id_checks |
( |
int |
barrel_ec, |
|
|
int |
sampling, |
|
|
int |
region, |
|
|
int |
eta, |
|
|
int |
phi |
|
) |
| const |
|
private |
Definition at line 162 of file LArEM_Base_ID.cxx.
172 std::string errorMessage =
"LArEM_Base_ID::channel_id_checks() result is not OK: ID, range = "
◆ channel_ids()
provide access to channel id vector, accessed via hash
◆ channels() [1/2]
Return the HashGroup
for channels (cells). non-const.
◆ channels() [2/2]
Return the HashGroup
for channels (cells).
◆ csc()
◆ csc_field_value()
int AtlasDetectorID::csc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ detsystem_context()
IdContext AtlasDetectorID::detsystem_context |
( |
void |
| ) |
const |
|
inherited |
◆ dict()
Return the dictionary for this subdetector.
◆ dict_names()
std::vector< std::string > AtlasDetectorID::dict_names |
( |
void |
| ) |
const |
|
inherited |
◆ dict_tags()
std::vector< std::string > AtlasDetectorID::dict_tags |
( |
void |
| ) |
const |
|
inherited |
Version tags for subdet dictionaries.
Version tag for subdet dictionary.
Definition at line 723 of file AtlasDetectorID.cxx.
◆ dictionaryVersion()
std::string AtlasDetectorID::dictionaryVersion |
( |
void |
| ) |
const |
|
overridevirtualinherited |
◆ dictRegions()
Return the vector of IdDictRegion
, accessed via region hash.
◆ do_checks()
bool AtlasDetectorID::do_checks |
( |
void |
| ) |
const |
|
overridevirtualinherited |
Checks are performed by default in debug compilation and NOT in optimized compilation.
One can switch or query this mode for any idHelper with the following methods:
Implements IdHelper.
Definition at line 728 of file AtlasDetectorID.cxx.
◆ do_neighbours()
bool AtlasDetectorID::do_neighbours |
( |
void |
| ) |
const |
|
overridevirtualinherited |
Neighbour initialization is performed by default One can switch or query this mode for any idHelper with the following method:
Implements IdHelper.
Definition at line 738 of file AtlasDetectorID.cxx.
◆ em_begin()
◆ em_end()
◆ em_range()
id_range LArEM_Base_ID::em_range |
( |
| ) |
const |
◆ eta()
return eta according to :
Cells:
element range meaning
eta for barrel [0,60] presampler - 0< eta <1.52 - deta is approximately equal to 0.025
" [0,447] sampling 1 region 0 0 < eta < 1.4 - deta = 0.025/8
" [0,2] sampling 1 region 1 1.4 < eta < 1.475 - deta = 0.025
" [0,55] sampling 2 region 0 0 < eta < 1.4 - deta = 0.025
" 0 sampling 2 region 1 1.4 < eta < 1.475 - deta = 0.075
" [0,26] sampling 3 region 0 0 < eta < 1.35 - deta = 0.050
"
eta for endcap [0,11] presampler sampling 0 region 0 1.5 < eta < 1.8 - deta = 0.025
" 0 outer wheel sampling 1 region 0 1.375 < eta < 1.425 - deta = 0.05
" [0,2] outer wheel sampling 1 region 1 1.425 < eta < 1.5 - deta = 0.025
" [0,95] outer wheel sampling 1 region 2 1.5 < eta < 1.8 - deta = 0.025/8
" [0,47] outer wheel sampling 1 region 3 1.8 < eta < 2.0 - deta = 0.025/6
" [0,63] outer wheel sampling 1 region 4 2.0 < eta < 2.4 - deta = 0.025/4
" [0,3] outer wheel sampling 1 region 5 2.4 < eta < 2.5 - deta = 0.025
" [0,6] inner wheel sampling 1 region 0 2.5 < eta < 3.2 - deta = 0.1
" 0 outer wheel sampling 2 region 0 1.375 < eta < 1.425 - deta = 0.05
" [0,42] outer wheel sampling 2 region 1 1.425 < eta < 2.5 - deta = 0.025
" [0,6] inner wheel sampling 2 region 0 2.5 < eta < 3.2 - deta = 0.1
" [0,19] outer wheel sampling 3 region 0 1.5 < eta < 2.5 - deta = 0.05
Supercells:
element range meaning
eta for barrel [0,15] presampler - 0< eta <1.52 - deta is approximately equal to 0.1
" [0,55] sampling 1 region 0 0 < eta < 1.4 - deta = 0.025
" [0,2] sampling 1 region 1 1.4 < eta < 1.475 - deta = 0.025
" [0,55] sampling 2 region 0 0 < eta < 1.4 - deta = 0.025
" 0 sampling 2 region 1 1.4 < eta < 1.475 - deta = 0.075
" [0,13] sampling 3 region 0 0 < eta < 1.35 - deta = 0.1
"
eta for endcap [0,2] presampler sampling 0 region 0 1.5 < eta < 1.8 - deta = 0.1
" 0 outer wheel sampling 1 region 0 1.375 < eta < 1.425 - deta = 0.125
" [0,11] outer wheel sampling 1 region 2 1.5 < eta < 1.8 - deta = 0.025
" [0,7] outer wheel sampling 1 region 3 1.8 < eta < 2.0 - deta = 0.033
" [0,15] outer wheel sampling 1 region 4 2.0 < eta < 2.4 - deta = 0.025
" 0 outer wheel sampling 1 region 5 2.4 < eta < 2.5 - deta = 0.1
" [0,2] inner wheel sampling 1 region 0 2.5 < eta < 3.1 - deta = 0.2
" 0 inner wheel sampling 1 region 1 3.1 < eta < 3.2 - deta = 0.1
" 0 outer wheel sampling 2 region 0 1.375 < eta < 1.425 - deta = 0.05
" [0,42] outer wheel sampling 2 region 1 1.425 < eta < 2.5 - deta = 0.025
" [0,2] inner wheel sampling 2 region 0 2.5 < eta < 3.1 - deta = 0.2
" 0 inner wheel sampling 2 region 0 3.1 < eta < 3.2 - deta = 0.1
" [0,9] outer wheel sampling 3 region 0 1.5 < eta < 2.5 - deta = 0.1
◆ eta0()
Return the minimum eta of region, or NOT_VALID
.
- Parameters
-
Definition at line 207 of file CaloIDHelper.cxx.
◆ eta_max()
max value of eta index (-999 == failure)
- Warning
- input = REGION ID !!
Definition at line 78 of file LArEM_Base_ID.cxx.
86 if (
range.match(expId)) {
◆ eta_min()
min value of eta index (-999 == failure)
- Warning
- input = REGION ID !!
Definition at line 52 of file LArEM_Base_ID.cxx.
60 if (
range.match(expId)) {
◆ etaGranularity()
Return the eta granularity of a region, or NOT_VALID
.
- Parameters
-
Definition at line 185 of file CaloIDHelper.cxx.
◆ file_names()
std::vector< std::string > AtlasDetectorID::file_names |
( |
void |
| ) |
const |
|
inherited |
◆ fill_vec_of_dict_regions()
int CaloIDHelper::fill_vec_of_dict_regions |
( |
const std::string & |
group_name = "" | ) |
|
|
protectedinherited |
Initialize the list of detector regions.
init_regions
should have been called first.
- Parameters
-
group_name | The group for this helper. |
- Returns
- 0 on success; non-zero on failure.
Definition at line 259 of file CaloIDHelper.cxx.
◆ fix_barrel_ec()
std::string AtlasDetectorID::fix_barrel_ec |
( |
const std::string & |
barrel_ec | ) |
const |
|
protectedinherited |
◆ forward_field_value()
int AtlasDetectorID::forward_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ fwd_exp()
◆ get_expanded_id()
◆ get_hash()
Convert an Identifier to a hash code for either channels or regions, depending on the context.
Uses binary search. Some of the subdetector-specific helpers define faster versions of channel_hash
and region_hash
(that, however, do less checking).
- Parameters
-
| id | The identifier to convert. |
[out] | hash_id | The resulting hash code. Will be invalid if there was an error. |
| context | The context in which to do the conversion (specifies whether we want channels or regions). |
- Returns
- 0 for success, non-zero for failure (unrecognized context or Identifier.
Reimplemented from AtlasDetectorID.
Reimplemented in Tile_Base_ID.
Definition at line 161 of file CaloIDHelper.cxx.
169 const HashGroup* hg =
nullptr;
◆ get_id()
Convert a hash code to an Identifier for either channels or regions, depending on the context.
If you know the context at compile-time, channel_id
and region_id
will be faster (but they don't do range checking).
- Parameters
-
| hash_id | The hash code to convert. |
[out] | id | The resulting Identifier. Will be invalid if there was an error. |
| context | The context in which to do the conversion (specifies whether we want channels or regions). |
- Returns
- 0 for success, non-zero for failure (unrecognized context, or hash code out of range).
Reimplemented from AtlasDetectorID.
Reimplemented in Tile_Base_ID.
Definition at line 119 of file CaloIDHelper.cxx.
130 const HashGroup* hg =
nullptr;
135 if (hash_id < hg->hash_max()) {
136 id = hg->
id (hash_id);
◆ get_neighbours()
access to hashes for neighbours return == 0 for neighbours found
option = prevInPhi, nextInPhi, prevInEta, nextInEta, faces2D, corners2D, all2D, prevInSamp, nextInSamp, upAndDown, prevSubDet, nextSubDet, all3D
in 'nextInEta', 'nextInSamp', 'nextSubDet', next means 'away from the centre of Atlas'
in 'prevInEta', 'prevInSamp', 'prevSubDet', prev means 'towards the centre of Atlas'
faces2D means prevInPhi + nextInPhi + prevInEta + nextInEta
corners2D means corners in the same sampling, not only touching cells but all corner cells forming a square (in case of change in eta granularity )
all2D means faces2D + corners2D
upAndDown means prevInSamp + nextInSamp
prevSubDet and nextSubDet mean across barrel/EC boundary
all3D means all2D + upAndDown + prevSubDet + nextSubDet
Definition at line 696 of file LArEM_Base_ID.cxx.
701 neighbourList.clear();
706 log << MSG::WARNING <<
"neighbours not initialized !!! returning empty list" <<
endmsg;
709 std::cout <<
" WARNING: neighbours not initialized !!! returning empty list " << std::endl;
717 log << MSG::WARNING <<
"neighbours requested for non-existing channel -- id/max " <<
id <<
"/"
721 std::cout <<
" neighbours requested for non-existing channel -- id/max " <<
id <<
"/"
727 const short int maxNeighb=22;
729 int neighbourIndex = 0;
738 unsigned short int regionN = (itr -
m_cells.begin()) - 1;
745 unsigned int minHash = emRegion->
hashMin();
746 unsigned int maxHash = emRegion->
hashMax();
758 prevNeighbInPhi=neighbList[neighbourIndex-1];
773 nextNeighbInPhi=neighbList[neighbourIndex-1];
801 unsigned int index1=prevNeighbInPhi;
802 int oldNeighbourIndex = neighbourIndex;
808 if ( neighbourIndex > oldNeighbourIndex+1 ) {
809 neighbList[oldNeighbourIndex] = neighbList[neighbourIndex-1];
810 neighbourIndex = oldNeighbourIndex+1;
812 oldNeighbourIndex = neighbourIndex;
814 if ( neighbourIndex > oldNeighbourIndex+1 ) {
815 neighbList[oldNeighbourIndex] = neighbList[neighbourIndex-1];
816 neighbourIndex = oldNeighbourIndex+1;
821 unsigned int index2=nextNeighbInPhi;
822 int oldNeighbourIndex = neighbourIndex;
828 if ( neighbourIndex > oldNeighbourIndex+1 ) {
829 neighbourIndex = oldNeighbourIndex+1;
831 oldNeighbourIndex = neighbourIndex;
833 if ( neighbourIndex > oldNeighbourIndex+1 ) {
834 neighbourIndex = oldNeighbourIndex+1;
882 neighbourList.resize(neighbourIndex);
883 if (neighbourIndex > 0) {
884 if (neighbourIndex <= maxNeighb) {
885 std::copy (&neighbList[0], &neighbList[neighbourIndex], neighbourList.begin());
890 log << MSG::WARNING <<
" more than 22 neighbours for this cell, NONE will be retained" <<
endmsg;
893 std::cout <<
"WARNING: more than 22 neighbours for this cell, NONE will be retained " << neighbourIndex << std::endl;
◆ get_nextInEta()
Definition at line 999 of file LArEM_Base_ID.cxx.
1005 unsigned int nIndex = 0;
1019 unsigned int minHashPlus = nextEmRegion->
hashMin();
1020 float phiMargin = 0.25*
std::min(gPhi,gPhiPlus);
1022 int nPhiPlusFirst =
int(std::floor((rPhi -nextEmRegion->
phiMin())
1023 /gPhiPlus+phiMargin))+minHashPlus;
1024 int nPhiPlusNext =
int(std::floor((rPhi+gPhi-nextEmRegion->
phiMin())
1025 /gPhiPlus+phiMargin))+minHashPlus;
1026 if ( nPhiPlusNext == nPhiPlusFirst ) nPhiPlusNext++;
1028 for(
int i=nPhiPlusFirst;
i<nPhiPlusNext;
i++){
1030 if(nIndex != nBiggerCell) {
1032 neighbList[neighbourIndex] = nHash;
1037 if(gPhi < gPhiPlus && nBiggerCell ==
NOT_VALID_HASH) nBiggerCell=nIndex;
1045 neighbList[neighbourIndex] = nHash;
◆ get_nextInPhi()
◆ get_nextInSamp()
Definition at line 1120 of file LArEM_Base_ID.cxx.
1127 unsigned int nIndex=0;
1132 int nNextSampReg = nextSampRegion.size();
1133 if(nNextSampReg > 0) {
1134 for(
int ireg=0; ireg<nNextSampReg; ireg++) {
1140 double margin = 0.25*
std::min(gEta,gEtaPlus);
1141 if((minEtaPlus <
absEta+gEta-margin) && (
absEta+margin < maxEtaPlus)) {
1147 short int nPhiPlus = nextEmRegion->
phiN();
1148 unsigned int minHashPlus = nextEmRegion->
hashMin();
1149 float phiMargin = 0.25*
std::min(gPhi,gPhiPlus);
1152 int nPhiPlusFirst =
int(std::floor((rPhi -nextEmRegion->
phiMin())
1153 /gPhiPlus+phiMargin));
1154 int nPhiPlusNext =
int(std::floor((rPhi+gPhi-nextEmRegion->
phiMin())
1155 /gPhiPlus+phiMargin));
1156 if ( nPhiPlusNext == nPhiPlusFirst ) nPhiPlusNext++;
1158 double fEtaPlus = (
absEta-minEtaPlus) / gEtaPlus + margin ;
1160 double fEtaMaxPlus = (
absEta+gEta-minEtaPlus) / gEtaPlus + margin ;
1161 int nEtaPlus =
int(fEtaPlus) ;
1162 int nEtaMaxPlus =
int(fEtaMaxPlus) ;
1163 if (nEtaMaxPlus == nEtaPlus) nEtaMaxPlus++;
1165 for(
int i=nEtaPlus;
i<nEtaMaxPlus;
i++){
1166 for(
int j=nPhiPlusFirst; j<nPhiPlusNext; j++){
1167 nIndex = minHashPlus +
i * nPhiPlus + j;
1168 if( (nIndex >= nextEmRegion->
hashMin()) && (nIndex < nextEmRegion->hashMax()) ) {
1170 neighbList[neighbourIndex] = nHash;
◆ get_nextInSubdet()
Definition at line 1251 of file LArEM_Base_ID.cxx.
1258 unsigned int nIndex=0;
1262 const std::vector<short int>& nextSubdetRegion= emRegion->
nextSubdetRegion();
1263 int nNextSubdetReg = nextSubdetRegion.size();
1264 if(nNextSubdetReg > 0) {
1265 for(
int ireg=0; ireg<nNextSubdetReg; ireg++) {
1271 double margin = 0.25*
std::min(gEta,gEtaPlus);
1272 if((minEtaPlus <
absEta+gEta-margin) && (
absEta+margin < maxEtaPlus)) {
1278 short int nPhiPlus = nextEmRegion->
phiN();
1279 unsigned int minHashPlus = nextEmRegion->
hashMin();
1280 float phiMargin = 0.25*
std::min(gPhi,gPhiPlus);
1283 int nPhiPlusFirst =
int(std::floor((rPhi -nextEmRegion->
phiMin())
1284 /gPhiPlus+phiMargin));
1285 int nPhiPlusNext =
int(std::floor((rPhi+gPhi-nextEmRegion->
phiMin())
1286 /gPhiPlus+phiMargin));
1287 if ( nPhiPlusNext == nPhiPlusFirst ) nPhiPlusNext++;
1289 double fEtaPlus = (
absEta-minEtaPlus) / gEtaPlus + margin ;
1291 double fEtaMaxPlus = (
absEta+gEta-minEtaPlus) / gEtaPlus + margin ;
1292 int nEtaPlus =
int(fEtaPlus) ;
1293 int nEtaMaxPlus =
int(fEtaMaxPlus) ;
1294 if (nEtaMaxPlus == nEtaPlus) nEtaMaxPlus++;
1296 for(
int i=nEtaPlus;
i<nEtaMaxPlus;
i++) {
1297 for(
int j=nPhiPlusFirst; j<nPhiPlusNext; j++) {
1298 nIndex = minHashPlus +
i * nPhiPlus + j;
1299 if( (nIndex >= nextEmRegion->
hashMin()) && (nIndex < nextEmRegion->hashMax()) ) {
1301 neighbList[neighbourIndex] = nHash;
◆ get_prevInEta()
Definition at line 932 of file LArEM_Base_ID.cxx.
938 unsigned int nIndex = 0;
949 unsigned int minHashMinus = prevEmRegion->
hashMin();
950 nIndex = minHashMinus +
index-minHash ;
952 neighbList[neighbourIndex] = nHash;
961 short int nPhiMinus = prevEmRegion->
phiN();
963 unsigned int maxHashMinus = prevEmRegion->
hashMax();
964 float phiMargin = 0.25*
std::min(gPhi,gPhiMinus);
965 float rPhi = (
index-minHash)*gPhi+emRegion->
phiMin();
966 int nPhiMinusFirst =
int(std::floor((rPhi -prevEmRegion->
phiMin())
967 /gPhiMinus+phiMargin))
968 +maxHashMinus-nPhiMinus;
969 int nPhiMinusNext =
int(std::floor((rPhi+gPhi-prevEmRegion->
phiMin())
970 /gPhiMinus+phiMargin))
971 +maxHashMinus-nPhiMinus;
972 if ( nPhiMinusNext == nPhiMinusFirst ) nPhiMinusNext++;
974 for(
int i=nPhiMinusFirst;
i<nPhiMinusNext;
i++){
976 if(nIndex != nBiggerCell) {
978 neighbList[neighbourIndex] = nHash;
983 if(gPhi < gPhiMinus && nBiggerCell ==
NOT_VALID_HASH) nBiggerCell=nIndex;
992 neighbList[neighbourIndex] = nHash;
◆ get_prevInPhi()
◆ get_prevInSamp()
Definition at line 1052 of file LArEM_Base_ID.cxx.
1059 unsigned int nIndex=0;
1065 int nPrevSampReg = prevSampRegion.size();
1066 if(nPrevSampReg > 0) {
1067 for(
int ireg=0; ireg<nPrevSampReg; ireg++) {
1074 double margin = 0.25*
std::min(gEta,gEtaMinus);
1075 if((minEtaMinus <
absEta+gEta-margin) && (
absEta+margin < maxEtaMinus)) {
1084 short int nPhiMinus = prevEmRegion->
phiN();
1086 unsigned int minHashMinus = prevEmRegion->
hashMin();
1087 float phiMargin = 0.25*
std::min(gPhi,gPhiMinus);
1090 int nPhiMinusFirst =
int(std::floor((rPhi -prevEmRegion->
phiMin())
1091 /gPhiMinus+phiMargin));
1092 int nPhiMinusNext =
int(std::floor((rPhi+gPhi-prevEmRegion->
phiMin())
1093 /gPhiMinus+phiMargin));
1094 if ( nPhiMinusNext == nPhiMinusFirst ) nPhiMinusNext++;
1097 double fEtaMinus = (
absEta-minEtaMinus) / gEtaMinus + margin ;
1099 double fEtaMaxMinus = (
absEta+gEta-minEtaMinus) / gEtaMinus + margin ;
1100 int nEtaMinus =
int(fEtaMinus);
1101 int nEtaMaxMinus =
int(fEtaMaxMinus);
1102 if ( nEtaMaxMinus == nEtaMinus ) nEtaMaxMinus++;
1103 for(
int i=nEtaMinus;
i<nEtaMaxMinus;
i++) {
1104 for (
int j=nPhiMinusFirst; j<nPhiMinusNext;j++) {
1105 nIndex = minHashMinus +
i * nPhiMinus + j;
1106 if( (nIndex >= prevEmRegion->
hashMin()) && (nIndex < prevEmRegion->hashMax()) ) {
1108 neighbList[neighbourIndex] = nHash;
◆ get_prevInSubdet()
Definition at line 1183 of file LArEM_Base_ID.cxx.
1190 unsigned int nIndex=0;
1195 const std::vector<short int>& prevSubdetRegion= emRegion->
prevSubdetRegion();
1196 int nPrevSubdetReg = prevSubdetRegion.size();
1197 if(nPrevSubdetReg > 0) {
1198 for(
int ireg=0; ireg<nPrevSubdetReg; ireg++) {
1205 double margin = 0.25*
std::min(gEta,gEtaMinus);
1206 if((minEtaMinus <
absEta+gEta-margin) && (
absEta+margin < maxEtaMinus)) {
1215 short int nPhiMinus = prevEmRegion->
phiN();
1217 unsigned int minHashMinus = prevEmRegion->
hashMin();
1218 float phiMargin = 0.25*
std::min(gPhi,gPhiMinus);
1221 int nPhiMinusFirst =
int(std::floor((rPhi -prevEmRegion->
phiMin())
1222 /gPhiMinus+phiMargin));
1223 int nPhiMinusNext =
int(std::floor((rPhi+gPhi-prevEmRegion->
phiMin())
1224 /gPhiMinus+phiMargin));
1225 if ( nPhiMinusNext == nPhiMinusFirst ) nPhiMinusNext++;
1227 double fEtaMinus = (
absEta-minEtaMinus) / gEtaMinus + margin ;
1229 double fEtaMaxMinus = (
absEta+gEta-minEtaMinus) / gEtaMinus + margin ;
1230 int nEtaMinus =
int(fEtaMinus);
1231 int nEtaMaxMinus =
int(fEtaMaxMinus);
1232 if ( nEtaMaxMinus == nEtaMinus ) nEtaMaxMinus++;
1234 for(
int i=nEtaMinus;
i<nEtaMaxMinus;
i++) {
1235 for (
int j=nPhiMinusFirst; j<nPhiMinusNext;j++) {
1236 nIndex = minHashMinus +
i * nPhiMinus + j;
1237 if( (nIndex >= prevEmRegion->
hashMin()) && (nIndex < prevEmRegion->hashMax()) ) {
1239 neighbList[neighbourIndex] = nHash;
◆ helper()
virtual HelperType AtlasDetectorID::helper |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ hgtd()
◆ hgtd_exp()
◆ hgtd_field_value()
int AtlasDetectorID::hgtd_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ indet()
◆ indet_exp()
◆ indet_field_value()
int AtlasDetectorID::indet_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
Provide efficient access to individual field values, for subclass idhelpers.
Definition at line 611 of file AtlasDetectorID.h.
◆ init_hashes()
int LArEM_Base_ID::init_hashes |
( |
void |
| ) |
|
|
private |
◆ init_neighbors()
int LArEM_Base_ID::init_neighbors |
( |
void |
| ) |
|
|
private |
Definition at line 1314 of file LArEM_Base_ID.cxx.
1321 std::cout <<
" LArEM_Base_ID::init_neighbors " << std::endl;
1324 const std::vector<const IdDictRegion*>& vecOfDictRegions =
dictRegions();
1331 std::vector<Identifier>::const_iterator debut=
reg_begin() ;
1332 std::vector<Identifier>::const_iterator
fin =
reg_end() ;
1333 for (; debut !=
fin; ++debut) {
1337 bool isBarrelMiddle =
false;
1347 if(
etaMin >= 0 && phiMin >= 0) {
1353 log << MSG::ERROR <<
" LArId exception "
1354 << (std::string)except
1359 <<
" LArId exception "
1360 << (std::string)except
1369 log << MSG::WARNING <<
" could not find non negative etaMin and phiMin for region "
1374 std::cout <<
"WARNING !! could not find non negative etaMin and phiMin for region "
1393 unsigned int ireg0=0;
1413 for(
unsigned int ireg=ireg0;ireg<ireg1;ireg++){
1414 if(vecOfDictRegions[ireg] == prevEtaDicReg) regForPrevEta = ireg;
1415 if(vecOfDictRegions[ireg] == nextEtaDicReg) regForNextEta = ireg;
1420 isBarrelMiddle =
true;
1422 regForPrevEta =
reg+6;
1424 regForPrevEta =
reg-6;
1432 std::vector<short int> regForPrevSamp;
1433 std::vector<IdDictRegion*> prevSampDicReg = vecOfDictRegions[
reg]->m_prev_samp;
1434 for(
unsigned int isam=0;isam<prevSampDicReg.size();isam++){
1435 for(
unsigned int ireg=ireg0;ireg<ireg1;ireg++){
1436 if(vecOfDictRegions[ireg] == prevSampDicReg[isam]) regForPrevSamp.push_back(ireg);
1440 std::vector<short int> regForNextSamp;
1441 std::vector<IdDictRegion*> nextSampDicReg = vecOfDictRegions[
reg]->m_next_samp;
1442 for(
unsigned int isam=0;isam<nextSampDicReg.size();isam++){
1443 for(
unsigned int ireg=ireg0;ireg<ireg1;ireg++){
1444 if(vecOfDictRegions[ireg] == nextSampDicReg[isam]) regForNextSamp.push_back(ireg);
1451 std::vector<short int> regForPrevSubdet;
1452 std::vector<IdDictRegion*> prevSubdetDicReg = vecOfDictRegions[
reg]->m_prev_subdet;
1453 for(
unsigned int isubdet=0;isubdet<prevSubdetDicReg.size();isubdet++){
1454 for(
unsigned int ireg=ireg0;ireg<ireg1;ireg++){
1455 if(vecOfDictRegions[ireg] == prevSubdetDicReg[isubdet]) regForPrevSubdet.push_back(ireg);
1459 std::vector<short int> regForNextSubdet;
1460 std::vector<IdDictRegion*> nextSubdetDicReg = vecOfDictRegions[
reg]->m_next_subdet;
1461 for(
unsigned int isubdet=0;isubdet<nextSubdetDicReg.size();isubdet++){
1462 for(
unsigned int ireg=ireg0;ireg<ireg1;ireg++){
1463 if(vecOfDictRegions[ireg] == nextSubdetDicReg[isubdet]) regForNextSubdet.push_back(ireg);
1472 regForPrevEta,regForNextEta,
1473 regForPrevSamp,regForNextSamp,
1474 regForPrevSubdet,regForNextSubdet);
1492 if(regId != lastRegId) {
1501 if ((
short int)hashReg !=
reg) {
1503 log << MSG::ERROR <<
" init_neighbors: problem reg, hashReg = " <<
reg <<
" " << hashReg
1507 std::cout <<
" init_neighbors: problem reg, hashReg = " <<
reg <<
" " << hashReg
◆ initialize_base_from_dictionary()
int LArEM_Base_ID::initialize_base_from_dictionary |
( |
const IdDictMgr & |
dict_mgr, |
|
|
const std::string & |
group_name |
|
) |
| |
initialization from the identifier dictionary
Definition at line 448 of file LArEM_Base_ID.cxx.
458 log <<
MSG::DEBUG <<
"Request to reinitialize not satisfied - tags have not changed" <<
endmsg;
479 if (atlasDict->
get_label_value(
"subdet",
"LArCalorimeter", larField)) {
481 log << MSG::ERROR <<
"Could not get value for label 'LArCalorimeter' of field 'subdet' in dictionary "
486 std::cout <<
"Could not get value for label 'LArCalorimeter' of field 'subdet' in dictionary "
495 if (
dict()->get_label_value(
"part",
"LArEM", larEmField)) {
497 log << MSG::ERROR <<
"Could not get value for label 'LArEM' of field 'part' in dictionary "
502 std::cout <<
"Could not get value for label 'LArEM' of field 'part' in dictionary "
511 reg_id.
add(larField);
512 reg_id.
add(larEmField);
528 std::cout <<
" LArEM_Base_ID::initialize_from_dict : "
623 log << MSG::WARNING <<
"min > 255 "
630 std::cout <<
"min > 255 "
669 log << MSG::ERROR <<
"channel ranges, id, hash "
676 std::cout <<
" ***** Error ";
677 std::cout <<
"channel ranges, id, hash "
◆ initialize_from_dictionary()
int AtlasDetectorID::initialize_from_dictionary |
( |
const IdDictMgr & |
dict_mgr | ) |
|
|
overridevirtualinherited |
Initialization from the identifier dictionary.
Implements IdHelper.
Reimplemented in SCT_ID, TRT_ID, SiliconID, LArOnline_SuperCellID, PixelID, MuonIdHelper, MdtIdHelper, CaloCell_Base_ID, sTgcIdHelper, CscIdHelper, MmIdHelper, TgcIdHelper, RpcIdHelper, PLR_ID, LArOnlineID_Base, CaloDM_ID, TileHWID, TileTBID, HGTD_ID, LArMiniFCAL_ID, LArElectrodeID, CaloLVL1_ID, LArEM_ID, LArEM_SuperCell_ID, TTOnlineID, LArHEC_ID, ZdcID, LArHVLineID, TileID, Tile_SuperCell_ID, LArFCAL_ID, LArHEC_SuperCell_ID, CaloCell_ID, LArFCAL_SuperCell_ID, GTower_ID, JTower_ID, and LArOnlineID.
Definition at line 320 of file AtlasDetectorID.cxx.
◆ initLevelsFromDict()
int LArEM_Base_ID::initLevelsFromDict |
( |
const std::string & |
group_name | ) |
|
|
private |
Definition at line 226 of file LArEM_Base_ID.cxx.
231 log << MSG::ERROR <<
"initLevelsFromDict - dictionary NOT initialized "
235 std::cout <<
"LArEM_Base_ID::initLevelsFromDict - dictionary NOT initialized "
259 log << MSG::ERROR <<
"initLevelsFromDict - unable to find 'subdet' field "
263 std::cout <<
"LArEM_Base_ID::initLevelsFromDict - unable to find 'subdet' field "
275 log << MSG::ERROR <<
"initLevelsFromDict - unable to find 'part' field "
279 std::cout <<
"LArEM_Base_ID::initLevelsFromDict - unable to find 'part' field "
291 log << MSG::ERROR <<
"initLevelsFromDict - unable to find 'barrel-endcap' field "
295 std::cout <<
"LArEM_Base_ID::initLevelsFromDict - unable to find 'barrel-endcap' field "
307 log << MSG::ERROR <<
"initLevelsFromDict - unable to find 'sampling' field "
311 std::cout <<
"LArEM_Base_ID::initLevelsFromDict - unable to find 'sampling' field "
323 log << MSG::ERROR <<
"initLevelsFromDict - unable to find 'region' field "
327 std::cout <<
"LArEM_Base_ID::initLevelsFromDict - unable to find 'region' field "
339 log << MSG::ERROR <<
"initLevelsFromDict - unable to find 'eta' field "
343 std::cout <<
"LArEM_Base_ID::initLevelsFromDict - unable to find 'eta' field "
355 log << MSG::ERROR <<
"initLevelsFromDict - unable to find 'phi' field "
359 std::cout <<
"LArEM_Base_ID::initLevelsFromDict - unable to find 'phi' field "
371 log << MSG::ERROR <<
"initLevelsFromDict - unable to find 'is-slar' field "
375 std::cout <<
"LArEM_Base_ID::initLevelsFromDict - unable to find 'is-slar' field "
385 log << MSG::ERROR <<
"initLevelsFromDict - cannot find " <<
group_name
386 <<
" group' field " <<
endmsg;
415 std::cout <<
"decode index and bit fields for each level: " << std::endl;
◆ initMessaging()
void AthMessaging::initMessaging |
( |
| ) |
const |
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
◆ is_alfa()
bool AtlasDetectorID::is_alfa |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_bcm()
bool AtlasDetectorID::is_bcm |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_calo() [1/2]
◆ is_calo() [2/2]
bool AtlasDetectorID::is_calo |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_csc() [1/2]
◆ is_csc() [2/2]
bool AtlasDetectorID::is_csc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_em_barrel()
test if the id belongs to the EM barrel
◆ is_em_endcap()
test if the id belongs to the EM Endcap
◆ is_em_endcap_inner()
test if the id belongs to the EM Endcap inner wheel
◆ is_em_endcap_outer()
test if the id belongs to the EM Endcap outer wheel
◆ is_forward()
bool AtlasDetectorID::is_forward |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_hgtd() [1/2]
◆ is_hgtd() [2/2]
bool AtlasDetectorID::is_hgtd |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_indet() [1/2]
◆ is_indet() [2/2]
bool AtlasDetectorID::is_indet |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar() [1/2]
◆ is_lar() [2/2]
bool AtlasDetectorID::is_lar |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_dm()
bool AtlasDetectorID::is_lar_dm |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_em() [1/2]
◆ is_lar_em() [2/2]
bool AtlasDetectorID::is_lar_em |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_fcal() [1/2]
◆ is_lar_fcal() [2/2]
bool AtlasDetectorID::is_lar_fcal |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_hec() [1/2]
◆ is_lar_hec() [2/2]
bool AtlasDetectorID::is_lar_hec |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_minifcal() [1/2]
◆ is_lar_minifcal() [2/2]
bool AtlasDetectorID::is_lar_minifcal |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lucid()
bool AtlasDetectorID::is_lucid |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lumi() [1/2]
◆ is_lumi() [2/2]
bool AtlasDetectorID::is_lumi |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lvl1_online()
bool AtlasDetectorID::is_lvl1_online |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lvl1_trig_towers()
bool AtlasDetectorID::is_lvl1_trig_towers |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_mdt() [1/2]
◆ is_mdt() [2/2]
bool AtlasDetectorID::is_mdt |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_mm() [1/2]
◆ is_mm() [2/2]
bool AtlasDetectorID::is_mm |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_muon() [1/2]
◆ is_muon() [2/2]
bool AtlasDetectorID::is_muon |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_pixel() [1/2]
◆ is_pixel() [2/2]
bool AtlasDetectorID::is_pixel |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_plr() [1/2]
◆ is_plr() [2/2]
bool AtlasDetectorID::is_plr |
( |
Identifier |
id | ) |
const |
|
inherited |
◆ is_rpc() [1/2]
◆ is_rpc() [2/2]
bool AtlasDetectorID::is_rpc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_sct() [1/2]
◆ is_sct() [2/2]
bool AtlasDetectorID::is_sct |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_stgc() [1/2]
◆ is_stgc() [2/2]
bool AtlasDetectorID::is_stgc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_supercell()
◆ is_tgc() [1/2]
◆ is_tgc() [2/2]
bool AtlasDetectorID::is_tgc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_tile() [1/2]
◆ is_tile() [2/2]
bool AtlasDetectorID::is_tile |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_tile_dm()
bool AtlasDetectorID::is_tile_dm |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_trt() [1/2]
◆ is_trt() [2/2]
bool AtlasDetectorID::is_trt |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_zdc()
bool AtlasDetectorID::is_zdc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ lar()
◆ lar_dm()
◆ lar_em()
◆ lar_em_exp()
◆ lar_em_field_value()
int AtlasDetectorID::lar_em_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lar_exp()
◆ lar_fcal()
Identifier AtlasDetectorID::lar_fcal |
( |
void |
| ) |
const |
|
inherited |
◆ lar_fcal_exp()
◆ lar_fcal_field_value()
int AtlasDetectorID::lar_fcal_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lar_field_value()
int AtlasDetectorID::lar_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lar_hec()
Identifier AtlasDetectorID::lar_hec |
( |
void |
| ) |
const |
|
inherited |
◆ lar_hec_exp()
◆ lar_hec_field_value()
int AtlasDetectorID::lar_hec_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lar_lvl1()
Identifier AtlasDetectorID::lar_lvl1 |
( |
void |
| ) |
const |
|
inherited |
◆ lucid_exp()
◆ lucid_field_value()
int AtlasDetectorID::lucid_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lumi()
◆ lumi_exp()
◆ lumi_field_value()
int AtlasDetectorID::lumi_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ mdt()
◆ mdt_field_value()
int AtlasDetectorID::mdt_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ mm()
◆ mm_field_value()
int AtlasDetectorID::mm_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ msg() [1/2]
MsgStream & AthMessaging::msg |
( |
| ) |
const |
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 164 of file AthMessaging.h.
◆ msg() [2/2]
MsgStream & AthMessaging::msg |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 179 of file AthMessaging.h.
180 {
return msg() << lvl; }
◆ msgLvl()
bool AthMessaging::msgLvl |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
Test the output level.
- Parameters
-
lvl | The message level to test against |
- Returns
- boolean Indicating if messages at given level will be printed
- Return values
-
true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
◆ msgSvc()
IMessageSvc* CaloIDHelper::msgSvc |
( |
| ) |
|
|
inherited |
Return the message service for this helper (may be null).
◆ muon()
◆ muon_exp()
◆ muon_field_value()
int AtlasDetectorID::muon_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ name()
std::string CaloIDHelper::name |
( |
| ) |
const |
|
inherited |
Return the name for this helper.
◆ operator=()
◆ phi()
return phi according to :
element range meaning
------- ----- -------
Cells:
phi for barrel [0,63] barrel presampler - dphi = 0.1
" [0,63] sampling 1 region 0 - dphi = 0.1
" [0,255] sampling 1 region 1 - dphi = 0.025
" [0,255] sampling 2 region 0 - dphi = 0.025
" [0,255] sampling 2 region 1 - dphi = 0.025
" [0,255] sampling 3 region 1 - dphi = 0.025
phi for endcap [0,63] presampler sampling 0 region 0 - dphi = 0.1
" [0,63] outer wheel sampling 1 regions [0,5] - dphi = 0.1
" [0,63] inner wheel sampling 1 regions 0 - dphi = 0.1
" [0,255] outer wheel sampling 2 regions [0,1] - dphi = 0.025
" [0,63] inner wheel sampling 2 region 0 - dphi = 0.1
" [0,255] outer wheel sampling 3 region 0 - dphi = 0.025
Supercells:
phi for barrel [0,63] barrel presampler - dphi = 0.1
" [0,63] sampling 1 region 0 - dphi = 0.1
" [0,63] sampling 1 region 1 - dphi = 0.1
" [0,63] sampling 2 region 0 - dphi = 0.1
" [0,63] sampling 2 region 1 - dphi = 0.1
" [0,63] sampling 3 region 1 - dphi = 0.1
phi for endcap [0,63] presampler sampling 0 region 0 - dphi = 0.1
" [0,63] outer wheel sampling 1 regions [0,5] - dphi = 0.1
" [0,31] inner wheel sampling 1 regions 0 - dphi = 0.2
" [0,63] outer wheel sampling 2 regions [0,1] - dphi = 0.1
" [0,31] inner wheel sampling 2 region 0 - dphi = 0.2
" [0,63] outer wheel sampling 3 region 0 - dphi = 0.1
◆ phi0()
Return the minimum phi of region, or NOT_VALID
.
- Parameters
-
Definition at line 218 of file CaloIDHelper.cxx.
◆ phi_max()
max value of phi index (-999 == failure)
- Warning
- input = REGION ID !!
Definition at line 125 of file LArEM_Base_ID.cxx.
133 if (
range.match(expId)) {
◆ phi_min()
min value of phi index (-999 == failure)
- Warning
- input = REGION ID !!
◆ phi_min_init()
◆ phiGranularity()
Return the phi granularity of a region, or NOT_VALID
.
- Parameters
-
Definition at line 196 of file CaloIDHelper.cxx.
◆ pixel()
◆ pixel_exp()
◆ pixel_field_value()
int AtlasDetectorID::pixel_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ plr_field_value()
int AtlasDetectorID::plr_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ print()
◆ print_to_string()
or provide the printout in string form
Definition at line 655 of file AtlasDetectorID.cxx.
663 unsigned int max_index = (context) ? context->
end_index() : 999;
696 if (
dict->unpack(compact,
◆ reg_begin()
◆ reg_end()
◆ reg_range()
id_range LArEM_Base_ID::reg_range |
( |
| ) |
const |
◆ region()
return region according to :
element range meaning
region 0 both presamplers
" [0,1] barrel sampling 1 and 2
" 0 barrel sampling 3
"
" [0,5] endcap outer wheel sampling 1 (cells)
" 0,[2,5] endcap outer wheel sampling 1 (supercells)
" 0 endcap inner wheel sampling 1 (cells)
" [0,1] endcap inner wheel sampling 1 (supercells)
" [0,1] endcap outer wheel sampling 2
" 0 endcap inner wheel sampling 2 (cells)
" [0,1] endcap inner wheel sampling 2 (supercells)
" 0 endcap outer wheel sampling 3
◆ region_context()
IdContext CaloIDHelper::region_context |
( |
| ) |
const |
|
inherited |
Return the context for regions.
◆ region_hash() [1/2]
Convert a connected region Identifier to a hash code.
Some subdetector helpers may override this with a faster version.
◆ region_hash() [2/2]
Convert a connected region Identifier to a hash code.
Some subdetector helpers may override this with a faster version.
◆ region_hash_max()
size_type CaloIDHelper::region_hash_max |
( |
| ) |
const |
|
inherited |
One more than the largest region hash code.
◆ region_id() [1/6]
Build a cell identifier from an expanded identifier.
◆ region_id() [2/6]
allows to know in which region is a channel/cell – valid for both kinds of channels
◆ region_id() [3/6]
Return the region Identifier for a given hash code (no checking).
◆ region_id() [4/6]
Return the region Identifier for a given hash code (no checking).
◆ region_id() [5/6]
Identifier LArEM_Base_ID::region_id |
( |
int |
barrel_ec, |
|
|
int |
sampling, |
|
|
int |
region |
|
) |
| const |
build a region identifier
◆ region_id() [6/6]
Identifier LArEM_Base_ID::region_id |
( |
int |
barrel_ec, |
|
|
int |
sampling, |
|
|
int |
region, |
|
|
bool |
checks |
|
) |
| const |
◆ region_id_checks()
void LArEM_Base_ID::region_id_checks |
( |
int |
barrel_ec, |
|
|
int |
sampling, |
|
|
int |
region |
|
) |
| const |
|
private |
Definition at line 146 of file LArEM_Base_ID.cxx.
155 std::string errorMessage =
"LArEM_Base_ID::region_id_checks() result is not OK: ID, range = "
◆ regions() [1/2]
Return the HashGroup
for regions. non-const.
◆ regions() [2/2]
Return the HashGroup
for regions.
◆ register_dict_tag()
int AtlasDetectorID::register_dict_tag |
( |
const IdDictMgr & |
dict_mgr, |
|
|
const std::string & |
dict_name |
|
) |
| |
|
protectedinherited |
Register the file and tag names for a particular IdDict dictionary.
Definition at line 266 of file AtlasDetectorID.cxx.
273 if (!
dict)
return(1);
◆ reinitialize()
Test whether an idhelper should be reinitialized based on the change of tags.
Definition at line 284 of file AtlasDetectorID.cxx.
294 ATH_MSG_ERROR(
"reinitialize: dict names and tags vectors not the same length ");
◆ rpc()
◆ rpc_field_value()
int AtlasDetectorID::rpc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ sampling()
return sampling according to :
element range meaning
sampling 0 both presamplers " [1,3] barrel and endcap outer wheel
" [1,2] endcap inner wheel
◆ sct()
◆ sct_exp()
◆ sct_field_value()
int AtlasDetectorID::sct_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ set_do_checks()
void AtlasDetectorID::set_do_checks |
( |
bool |
do_checks | ) |
|
|
overridevirtualinherited |
◆ set_do_neighbours()
void AtlasDetectorID::set_do_neighbours |
( |
bool |
do_neighbours | ) |
|
|
overridevirtualinherited |
◆ set_quiet()
void AtlasDetectorID::set_quiet |
( |
bool |
quiet | ) |
|
|
inherited |
◆ setDictVersion()
|
overrideprotectedvirtualinherited |
◆ setLevel()
void AthMessaging::setLevel |
( |
MSG::Level |
lvl | ) |
|
|
inherited |
◆ setMessageSvc()
void AtlasDetectorID::setMessageSvc |
( |
IMessageSvc * |
msgSvc | ) |
|
|
overridevirtualinherited |
◆ show()
Short print out of any identifier (optionally provide separation character - default is '.
'):
Definition at line 565 of file AtlasDetectorID.cxx.
◆ show_to_string()
or provide the printout in string form
Definition at line 574 of file AtlasDetectorID.cxx.
580 std::string
result(
"Unable to decode id");
581 unsigned int max_index = (context) ? context->
end_index() : 999;
617 if (
dict->unpack(compact,
629 for (
unsigned int i = 0;
i < expId.
fields(); ++
i) {
632 sprintf (temp,
"%d", expId[
i]);
◆ stgc()
◆ stgc_field_value()
int AtlasDetectorID::stgc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ subdet_context()
IdContext AtlasDetectorID::subdet_context |
( |
void |
| ) |
const |
|
inherited |
◆ tgc()
◆ tgc_field_value()
int AtlasDetectorID::tgc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ tile()
◆ tile_dm()
Identifier AtlasDetectorID::tile_dm |
( |
void |
| ) |
const |
|
inherited |
◆ tile_exp()
◆ tile_field_value()
int AtlasDetectorID::tile_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ to_range()
◆ trt()
◆ trt_exp()
◆ trt_field_value()
int AtlasDetectorID::trt_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ twoSymSides()
bool LArEM_Base_ID::twoSymSides |
( |
| ) |
const |
True if the + and - sides of the calorimeter are identical (true layout).
False if they are mirror reflections (used in early MC).
◆ zdc_exp()
◆ zdc_field_value()
int AtlasDetectorID::zdc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ ATLAS_THREAD_SAFE
std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
|
mutableprivateinherited |
◆ m_ALFA_ID
int AtlasDetectorID::m_ALFA_ID {1} |
|
privateinherited |
◆ m_atlas_dict
◆ m_BCM_ID
int AtlasDetectorID::m_BCM_ID {3} |
|
privateinherited |
◆ m_bec_impl
◆ m_BEC_INDEX
◆ m_bec_reg_impl
◆ m_calo_dict
◆ m_CALO_ID
int AtlasDetectorID::m_CALO_ID {10} |
|
privateinherited |
◆ m_calo_side_impl
◆ m_cells
std::vector<unsigned> LArEM_Base_ID::m_cells |
|
private |
◆ m_channels
◆ m_CSC_ID
int AtlasDetectorID::m_CSC_ID {1} |
|
privateinherited |
◆ m_det_impl
◆ m_DET_INDEX
◆ m_dict
◆ m_dict_names
std::vector<std::string> AtlasDetectorID::m_dict_names |
|
protectedinherited |
◆ m_dict_tags
std::vector<std::string> AtlasDetectorID::m_dict_tags |
|
protectedinherited |
◆ m_dict_version
std::string AtlasDetectorID::m_dict_version |
|
privateinherited |
◆ m_do_checks
bool AtlasDetectorID::m_do_checks {} |
|
protectedinherited |
Flag for subclasses to know whether or not to perform checks.
In general, this is set to false in optimized mode.
Definition at line 362 of file AtlasDetectorID.h.
◆ m_do_neighbours
bool AtlasDetectorID::m_do_neighbours {true} |
|
protectedinherited |
Flag for subclasses to know whether or not to perform neighbour initialization.
Definition at line 365 of file AtlasDetectorID.h.
◆ m_em_impl
◆ m_EM_INDEX
◆ m_em_region_index
◆ m_eta_impl
◆ m_ETA_INDEX
◆ m_file_names
std::vector<std::string> AtlasDetectorID::m_file_names |
|
protectedinherited |
List of dictionary file names used by this helper.
Definition at line 378 of file AtlasDetectorID.h.
◆ m_full_em_range
◆ m_full_region_range
◆ m_fwd_dict
◆ m_FWD_ID
int AtlasDetectorID::m_FWD_ID {13} |
|
privateinherited |
◆ m_fwd_part_impl
◆ m_hash_calcs
std::vector<HashCalc> LArEM_Base_ID::m_hash_calcs |
|
private |
◆ m_helper
◆ m_HGTD_ID
int AtlasDetectorID::m_HGTD_ID {4} |
|
privateinherited |
◆ m_imsg
std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr } |
|
mutableprivateinherited |
◆ m_indet_dict
◆ m_INDET_ID
int AtlasDetectorID::m_INDET_ID {2} |
|
privateinherited |
◆ m_indet_part_impl
◆ m_is_initialized_from_dict
bool AtlasDetectorID::m_is_initialized_from_dict {} |
|
privateinherited |
◆ m_isHighLuminosityLHC
bool AtlasDetectorID::m_isHighLuminosityLHC {} |
|
privateinherited |
◆ m_lar_dict
◆ m_lar_dm_field
◆ m_LAR_EM_ID
int AtlasDetectorID::m_LAR_EM_ID {1} |
|
privateinherited |
◆ m_LAR_FCAL_ID
int AtlasDetectorID::m_LAR_FCAL_ID {3} |
|
privateinherited |
◆ m_lar_fcal_module_impl
◆ m_LAR_FCAL_MODULE_INDEX
int AtlasDetectorID::m_LAR_FCAL_MODULE_INDEX {999} |
|
privateinherited |
◆ m_LAR_HEC_ID
int AtlasDetectorID::m_LAR_HEC_ID {2} |
|
privateinherited |
◆ m_LAR_ID
int AtlasDetectorID::m_LAR_ID {4} |
|
privateinherited |
◆ m_lar_impl
◆ m_LAR_INDEX
◆ m_lar_part_impl
◆ m_LUCID_ID
int AtlasDetectorID::m_LUCID_ID {5} |
|
privateinherited |
◆ m_LUMI_ID
int AtlasDetectorID::m_LUMI_ID {3} |
|
privateinherited |
◆ m_LUMI_PLR_ID
int AtlasDetectorID::m_LUMI_PLR_ID {1} |
|
privateinherited |
◆ m_lvl
std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL } |
|
mutableprivateinherited |
◆ m_lvl1_field
◆ m_lvl1_onl_field
◆ m_MDT_ID
int AtlasDetectorID::m_MDT_ID {0} |
|
privateinherited |
◆ m_MM_ID
int AtlasDetectorID::m_MM_ID {5} |
|
privateinherited |
◆ m_msg_tls
boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls |
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels)
Definition at line 132 of file AthMessaging.h.
◆ m_msgSvc
IMessageSvc* AtlasDetectorID::m_msgSvc {} |
|
protectedinherited |
◆ m_muon_dict
◆ m_MUON_ID
int AtlasDetectorID::m_MUON_ID {7} |
|
privateinherited |
◆ m_muon_mdt_impl
◆ m_muon_rpc_impl
◆ m_muon_station_name_impl
◆ m_MUON_SUBDET_INDEX
size_type AtlasDetectorID::m_MUON_SUBDET_INDEX {999} |
|
privateinherited |
◆ m_muon_tech_bits
std::vector<unsigned int> AtlasDetectorID::m_muon_tech_bits |
|
privateinherited |
◆ m_name
std::string CaloIDHelper::m_name |
|
privateinherited |
◆ m_nm
std::string AthMessaging::m_nm |
|
privateinherited |
◆ m_phi_impl
◆ m_PHI_INDEX
◆ m_PIXEL_ID
int AtlasDetectorID::m_PIXEL_ID {1} |
|
privateinherited |
◆ m_quiet
bool AtlasDetectorID::m_quiet {} |
|
protectedinherited |
◆ m_region_impl
◆ m_REGION_INDEX
◆ m_regions
◆ m_RPC_ID
int AtlasDetectorID::m_RPC_ID {2} |
|
privateinherited |
◆ m_sampling_impl
◆ m_SAMPLING_INDEX
◆ m_SCT_ID
int AtlasDetectorID::m_SCT_ID {2} |
|
privateinherited |
◆ m_slar
unsigned LArEM_Base_ID::m_slar |
|
private |
◆ m_slar_impl
◆ m_SLAR_INDEX
◆ m_STGC_ID
int AtlasDetectorID::m_STGC_ID {4} |
|
privateinherited |
◆ m_SUBDET_INDEX
size_type AtlasDetectorID::m_SUBDET_INDEX {999} |
|
privateinherited |
◆ m_TGC_ID
int AtlasDetectorID::m_TGC_ID {3} |
|
privateinherited |
◆ m_tile_dict
◆ m_tile_dm_field
◆ m_TILE_ID
int AtlasDetectorID::m_TILE_ID {5} |
|
privateinherited |
◆ m_TRT_ID
int AtlasDetectorID::m_TRT_ID {3} |
|
privateinherited |
◆ m_two_sym_sides
bool LArEM_Base_ID::m_two_sym_sides |
|
private |
◆ m_vecOfDictRegions
◆ m_vecOfPhiMin
std::vector<int> LArEM_Base_ID::m_vecOfPhiMin |
|
private |
◆ m_vecOfRegions
◆ m_ZDC_ID
int AtlasDetectorID::m_ZDC_ID {7} |
|
privateinherited |
The documentation for this class was generated from the following files:
JetConstituentVector::iterator iterator
IdDictRegion * find_region(const std::string ®ion_name) const
bool is_pixel(Identifier id) const
int lar_em_field_value() const
std::atomic< MSG::Level > m_lvl
Current logging level.
IDENTIFIER_TYPE value_type
IdDictDictionary * m_muon_dict
int indet_field_value() const
Provide efficient access to individual field values, for subclass idhelpers.
#define CXXUTILS_TRAPPING_FP
int phi(const Identifier id) const
return phi according to :
bool is_forward(Identifier id) const
const std::vector< short int > & prevSubdetRegion() const
region number of the prev region in subdet
MultiRange build_multirange() const
Get MultiRange for full dictionary.
std::vector< unsigned int > m_muon_tech_bits
IdDictFieldImplementation m_eta_impl
int phi_max(const Identifier regId) const
max value of phi index (-999 == failure)
id_iterator reg_end(void) const
end iterator over set of Region Identifiers
IdDictFieldImplementation m_indet_part_impl
bool isEtaMin(unsigned int index) const
is the considered cell in the first eta bin of the region ?
int phi_min_init(const Identifier regId) const
AtlasDetectorIDHelper * m_helper
float phiMin() const
starting phi
const std::vector< short int > & nextSubdetRegion() const
region number of the next region in subdet
bool is_lar_fcal(Identifier id) const
std::string show_to_string(void) const
bool is_lar(Identifier id) const
size_type channel_hash_max() const
One more than the largest channel (cell) hash code.
int muon_field_value() const
IdDictFieldImplementation m_slar_impl
int fill_vec_of_dict_regions(const std::string &group_name="")
Initialize the list of detector regions.
bool isPhiMin(unsigned int index) const
is the considered cell in the first phi bin of the region ?
Identifier region_id(const ExpandedIdentifier &exp_id) const
Build a cell identifier from an expanded identifier.
size_type end_index() const
Return the ending index of the context for this group.
int calo_field_value() const
IdContext region_context() const
Return the context for regions.
void add(element_type value)
bool match(element_type value) const
The basic match operation.
Identifier id(IdentifierHash hashId) const
Return the identifier for a given hash code (no checking).
std::vector< LArEM_region * > m_vecOfRegions
void pack(int value, Identifier &id) const
IdDictDictionary * m_tile_dict
int region(const Identifier id) const
return region according to :
size_type end_index(void) const
int sampling(const Identifier id) const
return sampling according to :
int get_nextInSubdet(const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, const double &gEta, const float &gPhi, const double &absEta, int &neighbourIndex, IdentifierHash *neighbList) const
IMessageSvc * m_msgSvc
pointer to the message service
std::string m_dict_version
bool m_do_checks
Flag for subclasses to know whether or not to perform checks.
float etaMax() const
end eta
std::string name() const
Return the name for this helper.
int lar_field_value() const
This class provides conversion from CSC RDO data to CSC Digits.
CaloIDHelper(const std::string &name)
Constructor.
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
int unpack(Identifier id) const
Identifier manipulation methods.
reg
globals -----------------------------------------------------------------—
int get_hash(Identifier id, IdentifierHash &hash_id) const
Look up the hash code corresponding to an Identifier.
virtual bool do_neighbours(void) const override
Neighbour initialization is performed by default One can switch or query this mode for any idHelper w...
Identifier channel_id(const ExpandedIdentifier &exp_id) const
Build a cell identifier from an expanded identifier.
IdDictFieldImplementation m_em_impl
virtual int get_expanded_id(const Identifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const
create expanded Identifier from Identifier (return == 0 for OK)
constexpr int nPhi
Default bin number of phi for vertex map.
IMessageSvc * getMessageSvc(bool quiet=false)
IdDictField * find_field(const std::string &name) const
bool is_lvl1_trig_towers(Identifier id) const
const HashGroup & regions() const
Return the HashGroup for regions.
virtual std::string dictionaryVersion(void) const override
int eta(const Identifier id) const
return eta according to :
int get_nextInSamp(const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, const double &gEta, const float &gPhi, const double &absEta, int &neighbourIndex, IdentifierHash *neighbList) const
friend class AtlasDetectorIDHelper
bool m_do_neighbours
Flag for subclasses to know whether or not to perform neighbour initialization.
int initLevelsFromDict(const std::string &group_name)
int get_prevInSamp(const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, const double &gEta, const float &gPhi, const double &absEta, int &neighbourIndex, IdentifierHash *neighbList) const
IdDictFieldImplementation m_sampling_impl
MultiRange m_full_em_range
IdDictFieldImplementation m_phi_impl
std::vector< const IdDictRegion * > m_vecOfDictRegions
List of IdDictRegion objects.
This class provides an interface to deal with regions in the neighbours finding
int eta_max(const Identifier regId) const
max value of eta index (-999 == failure)
IdDictFieldImplementation m_region_impl
Range::field m_tile_dm_field
IdentifierHash channel_hash(Identifier channelId) const
create hash id from channel id
IdDictGroup * find_group(const std::string &group_name) const
IdDictDictionary * find_dictionary(const std::string &name) const
Access dictionary by name.
size_type region_hash_max() const
One more than the largest region hash code.
msgSvc
Provide convenience handles for various services.
double deltaEta(const I4Momentum &p1, const I4Momentum &p2)
Computes efficiently .
float phiGranularity() const
phi granularity
IdDictDictionary * m_calo_dict
float etaGranularity(const IdentifierHash regHash) const
Return the eta granularity of a region, or NOT_VALID.
int phi_min(const Identifier regId) const
min value of phi index (-999 == failure)
void set_bits(size_type bits, size_type bits_offset)
bool m_is_initialized_from_dict
IdDictFieldImplementation m_lar_part_impl
ExpandedIdentifier indet_exp(void) const
Detector systems:
HashGroup m_regions
Group of region Identifiers.
const IdDictDictionary * dict() const
Return the dictionary for this subdetector.
IdDictFieldImplementation m_bec_reg_impl
MultiRange m_full_region_range
bool isEtaMax(unsigned int index) const
is the considered cell in the last eta bin of the region ?
IdDictFieldImplementation m_muon_mdt_impl
size_type m_SAMPLING_INDEX
IdDictFieldImplementation m_lar_fcal_module_impl
bool twoSymSides() const
True if the + and - sides of the calorimeter are identical (true layout).
size_type bits_offset() const
bool is_tile_dm(Identifier id) const
std::vector< IdDictRegion * > m_regions
float etaMin() const
starting eta
IdDictFieldImplementation m_lar_impl
IdDictDictionary * m_fwd_dict
bool is_tile(Identifier id) const
unsigned int hashMax() const
hash Id of the last cell of the region +1
short int phiN() const
number of phi bins
IdDictFieldImplementation m_bec_impl
const std::vector< short int > & prevSamplingRegion() const
region number of the prev region in sampling
int initialize_from_dictionary(const IdDictMgr &dict_mgr, bool quiet)
Initialization from the identifier dictionary.
Range::field m_lvl1_onl_field
bool m_quiet
If true, suppress DEBUG/INFO messages.
static int get_prevInPhi(const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, int &neighbourIndex, IdentifierHash *neighbList)
element_type get_minimum() const
MsgStream & msg() const
The standard message stream.
int eta_min(const Identifier regId) const
min value of eta index (-999 == failure)
static int get_nextInPhi(const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, int &neighbourIndex, IdentifierHash *neighbList)
int initialize_base_from_dictionary(const IdDictMgr &dict_mgr, const std::string &dict_name)
Do basic initialization of the helper.
IdDictFieldImplementation m_muon_rpc_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_calo(Identifier id) const
int tile_field_value() const
int get_label_value(const std::string &field, const std::string &label, int &value) const
size_type begin_index(void) const
std::string print_to_string(Identifier id, const IdContext *context=0) const
or provide the printout in string form
float eta0(const IdentifierHash regHash) const
Return the minimum eta of region, or NOT_VALID.
std::vector< unsigned > m_cells
IdDictDictionary * m_indet_dict
int barrel_ec(const Identifier id) const
return barrel_ec according to :
IdDictFieldImplementation m_calo_side_impl
bool is_indet(Identifier id) const
std::vector< std::string > m_dict_names
List of dictionary names used by this helper.
Range::field m_lar_dm_field
virtual void setDictVersion(const IdDictMgr &dict_mgr, const std::string &name) override
A Range describes the possible ranges for the field values of an ExpandedIdentifier.
int get_prevInEta(const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const float &gPhi, const unsigned int &minHash, int &neighbourIndex, IdentifierHash *neighbList, unsigned int &nBiggerCell) const
bool isFirstBarrelRegion() const
true if region close to barrel middle
ExpandedIdentifier fwd_exp(void) const
def init(v_theApp, v_rootStream=None)
IdDictFieldImplementation m_muon_station_name_impl
short int nextEtaRegion() const
region number of the next region in eta
const IdDictDictionary * m_dict
The dictionary for this helper.
element_type get_maximum() const
const HashGroup & channels() const
Return the HashGroup for channels (cells).
int match(const ExpandedIdentifier &id) const
Match an identifier.
bool is_lumi(Identifier id) const
bool reinitialize(const IdDictMgr &dict_mgr)
Test whether an idhelper should be reinitialized based on the change of tags.
float etaGranularity() const
eta granularity
bool is_lar_dm(Identifier id) const
LAr/Tile dead material:
bool is_muon(Identifier id) const
IdDictFieldImplementation m_det_impl
float phi0(const IdentifierHash regHash) const
Return the minimum phi of region, or NOT_VALID.
Data object for each calorimeter readout cell.
std::string show_to_string(Identifier id, const IdContext *context=0, char sep='.') const
or provide the printout in string form
const std::vector< const IdDictRegion * > & dictRegions() const
Return the vector of IdDictRegion, accessed via region hash.
ExpandedIdentifier lar_exp(void) const
std::vector< std::string > m_file_names
List of dictionary file names used by this helper.
HashGroup m_channels
Group of channel (cell) Identifiers.
std::string m_nm
Message source name.
int get_prevInSubdet(const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const unsigned int &minHash, const double &gEta, const float &gPhi, const double &absEta, int &neighbourIndex, IdentifierHash *neighbList) const
bool absEta(const xAOD::TauJet &tau, double &out)
IdDictDictionary * m_lar_dict
size_type m_em_region_index
bool is_lvl1_online(Identifier id) const
int get_nextInEta(const LArEM_region *emRegion, const unsigned int &index, const short int &nPhi, const float &gPhi, const unsigned int &maxHash, int &neighbourIndex, IdentifierHash *neighbList, unsigned int &nBiggerCell) const
short int prevEtaRegion() const
region number of the previous region in eta
float phiGranularity(const IdentifierHash regHash) const
Return the phi granularity of a region, or NOT_VALID.
This is the individual specification for the range of one ExpandedIdentifier field.
virtual int get_expanded_id(const Identifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const =0
Create an expanded Identifier from an Identifier.
void initMessaging() const
Initialize our message level and MessageSvc.
id_range em_range() const
Range over full set of EM Identifiers.
int initLevelsFromDict(const IdDictMgr &dict_mgr)
id_iterator reg_begin(void) const
begin iterator over set of Region Identifiers
constexpr int nEta
Default bin number of eta for vertex map.
std::vector< int > m_vecOfPhiMin
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
bool isPhiMax(unsigned int index) const
is the considered cell in the last phi bin of the region ?
virtual bool do_checks(void) const override
Checks are performed by default in debug compilation and NOT in optimized compilation.
std::vector< std::string > m_dict_tags
List of dictionary versions used by this helper.
IdentifierHash region_hash(Identifier regionId) const
Convert a connected region Identifier to a hash code.
const std::vector< short int > & nextSamplingRegion() const
region number of the next region in sampling
ExpandedIdentifier lar_em_exp(void) const
LAr.
Exception class for LAr Identifiers.
unsigned int hashMin() const
hash Id of the first cell of the region
IdentifierHash channel_hash_binary_search(Identifier channelId) const
create hash id from channel id – method NOT optimised, please use channel_hash() above
bool is_supercell(const Identifier id) const
Test if the identifier represents a supercell.
Range::field m_lvl1_field
Identifier::size_type size_type
size_type hash_max() const
Return one more than the largest hash code.
std::vector< HashCalc > m_hash_calcs