Utility class that identifies a position within the strip tracker geometrical structure, down to the level of an APV25 chip. More...
#include <SiStripDetKey.h>
Public Member Functions | |
const uint16_t & | apvPairNumber () const |
const uint16_t & | apvWithinPair () const |
bool | isConsistent (const SiStripKey &) const override |
bool | isEqual (const SiStripKey &) const override |
bool | isInvalid () const override |
bool | isInvalid (const sistrip::Granularity &) const override |
bool | isValid () const override |
bool | isValid (const sistrip::Granularity &) const override |
const uint16_t & | partition () const |
void | print (std::stringstream &ss) const override |
SiStripDetKey (const uint16_t &partition) | |
SiStripDetKey (const DetId &det_id, const uint16_t &apv_pair_number=0, const uint16_t &apv_within_pair=0) | |
SiStripDetKey (const SiStripDetId &det_id) | |
SiStripDetKey (const uint32_t &det_key) | |
SiStripDetKey (const std::string &directory_path) | |
SiStripDetKey (const SiStripDetKey &) | |
SiStripDetKey (const SiStripKey &) | |
SiStripDetKey (const SiStripKey &, const sistrip::Granularity &) | |
SiStripDetKey () | |
void | terse (std::stringstream &ss) const override |
Public Member Functions inherited from SiStripKey | |
const uint16_t & | channel () const |
const sistrip::Granularity & | granularity () const |
const uint32_t & | key () const |
const SiStripKey & | operator= (const SiStripKey &) |
const std::string & | path () const |
SiStripKey (const uint32_t &key) | |
SiStripKey (const std::string &directory_path) | |
SiStripKey (const SiStripKey &) | |
SiStripKey () | |
virtual | ~SiStripKey () |
Private Member Functions | |
void | initFromKey () override |
void | initFromPath () override |
void | initFromValue () override |
void | initGranularity () override |
Private Attributes | |
uint16_t | apvPairNumber_ |
uint16_t | apvWithinPair_ |
uint16_t | partition_ |
Static Private Attributes | |
static const uint16_t | partitionMask_ = 0x07 |
static const uint16_t | partitionOffset_ = 29 |
Additional Inherited Members | |
Protected Member Functions inherited from SiStripKey | |
void | channel (const uint16_t &) |
void | granularity (const sistrip::Granularity &) |
void | key (const uint32_t &) |
void | path (const std::string &) |
Utility class that identifies a position within the strip tracker geometrical structure, down to the level of an APV25 chip.
NOTA BENE: *** NOT FINISHED ***
can generate another key that is NOT DetId and packs sistrip-specific data in a more condensed way, so that all levels can be encoded with "all" and "invalid" values, down to level of apv. also, need "conversion tool" that re-generates DetId key from this new key. this is only way...!!! maybe can "safeguard" use of this key as a DetId by reserving bits 22-24 as a flag (eg, set all high), so that if an attempt to build DetId using SiStripDetId class, we can understand if key is real DetId or not... what about going to level of apv?... what about levels about module?...
Definition at line 28 of file SiStripDetKey.h.
SiStripDetKey::SiStripDetKey | ( | const uint16_t & | partition | ) |
Constructor using partition.
Definition at line 9 of file SiStripDetKey.cc.
References initFromKey(), initFromPath(), initFromValue(), and initGranularity().
SiStripDetKey::SiStripDetKey | ( | const DetId & | det_id, |
const uint16_t & | apv_pair_number = 0 , |
||
const uint16_t & | apv_within_pair = 0 |
||
) |
Constructor using DetId, APV pair and APV pos within pair.
Definition at line 20 of file SiStripDetKey.cc.
References initFromKey(), initFromPath(), initFromValue(), and initGranularity().
SiStripDetKey::SiStripDetKey | ( | const SiStripDetId & | det_id | ) |
Constructor using SiStripDetId.
Definition at line 31 of file SiStripDetKey.cc.
References initFromKey(), initFromPath(), initFromValue(), and initGranularity().
SiStripDetKey::SiStripDetKey | ( | const uint32_t & | det_key | ) |
Constructor using 32-bit "DET key".
Definition at line 45 of file SiStripDetKey.cc.
References initFromKey(), initFromPath(), initFromValue(), and initGranularity().
SiStripDetKey::SiStripDetKey | ( | const std::string & | directory_path | ) |
Constructor using directory path.
Definition at line 59 of file SiStripDetKey.cc.
References initFromKey(), initFromPath(), initFromValue(), and initGranularity().
SiStripDetKey::SiStripDetKey | ( | const SiStripDetKey & | input | ) |
Copy constructor.
Definition at line 73 of file SiStripDetKey.cc.
References SiStripKey::granularity(), SiStripKey::key(), and SiStripKey::path().
SiStripDetKey::SiStripDetKey | ( | const SiStripKey & | input | ) |
Copy constructor using base class.
Definition at line 85 of file SiStripDetKey.cc.
References apvPairNumber(), apvPairNumber_, apvWithinPair(), apvWithinPair_, SiStripKey::granularity(), input, SiStripKey::key(), partition(), partition_, and SiStripKey::path().
SiStripDetKey::SiStripDetKey | ( | const SiStripKey & | input, |
const sistrip::Granularity & | gran | ||
) |
Copy to level specified by granularity.
Definition at line 101 of file SiStripDetKey.cc.
References initFromKey(), initFromPath(), initFromValue(), initGranularity(), input, partition(), sistrip::PARTITION, and partition_.
SiStripDetKey::SiStripDetKey | ( | ) |
|
inline |
Returns APV pair number.
Definition at line 135 of file SiStripDetKey.h.
References apvPairNumber_.
Referenced by isConsistent(), isEqual(), and SiStripDetKey().
|
inline |
Returns APV position within pair.
Definition at line 136 of file SiStripDetKey.h.
References apvWithinPair_, and operator<<().
Referenced by isConsistent(), isEqual(), and SiStripDetKey().
|
overrideprivatevirtual |
Reimplemented from SiStripKey.
Definition at line 203 of file SiStripDetKey.cc.
References sistrip::invalid32_, sistrip::invalid_, SiStripKey::key(), partition_, partitionMask_, and partitionOffset_.
Referenced by SiStripDetKey().
|
overrideprivatevirtual |
Reimplemented from SiStripKey.
Definition at line 233 of file SiStripDetKey.cc.
References sistrip::detectorView_, DeadROC_duringRun::dir, sistrip::dir_, spr::find(), GetRecoTauVFromDQM_MC_cff::next, sistrip::null_, partition(), sistrip::partition_, partition_, SiStripKey::path(), sistrip::root_, contentValuesCheck::ss, AlCaHLTBitMon_QueryRunRegistry::string, and groupFilesInBlocks::temp.
Referenced by SiStripDetKey().
|
overrideprivatevirtual |
Reimplemented from SiStripKey.
Definition at line 194 of file SiStripDetKey.cc.
References sistrip::invalid_, and partition_.
Referenced by SiStripDetKey().
|
overrideprivatevirtual |
Reimplemented from SiStripKey.
Definition at line 291 of file SiStripDetKey.cc.
References SiStripKey::channel(), SiStripKey::granularity(), sistrip::invalid_, sistrip::PARTITION, partition_, sistrip::TRACKER, and sistrip::UNKNOWN_GRAN.
Referenced by SiStripDetKey().
|
overridevirtual |
"Consistent" means identical and/or null (ie, "all") data.
Reimplemented from SiStripKey.
Definition at line 138 of file SiStripDetKey.cc.
References apvPairNumber(), apvPairNumber_, apvWithinPair(), apvWithinPair_, input, isEqual(), SiStripKey::key(), partition(), and partition_.
|
overridevirtual |
Identifies key objects with identical member data.
Reimplemented from SiStripKey.
Definition at line 126 of file SiStripDetKey.cc.
References apvPairNumber(), apvPairNumber_, apvWithinPair(), apvWithinPair_, input, SiStripKey::key(), partition(), and partition_.
Referenced by isConsistent().
|
overridevirtual |
Identifies all member data as being invalid.
Reimplemented from SiStripKey.
Definition at line 173 of file SiStripDetKey.cc.
References sistrip::APV.
|
overridevirtual |
All member data to level of "Granularity" are invalid. If sistrip::Granularity is "undefined", returns true.
Reimplemented from SiStripKey.
Definition at line 177 of file SiStripDetKey.cc.
References sistrip::invalid_, sistrip::PARTITION, partition_, sistrip::TRACKER, sistrip::UNDEFINED_GRAN, and sistrip::UNKNOWN_GRAN.
|
overridevirtual |
Identifies all member data as being "valid" or null ("all").
Reimplemented from SiStripKey.
Definition at line 152 of file SiStripDetKey.cc.
References sistrip::APV.
Referenced by ntupleDataFormat._Object::_checkIsValid(), print(), and core.AutoHandle.AutoHandle::ReallyLoad().
|
overridevirtual |
All member data to level of "Granularity" are valid. If sistrip::Granularity is "undefined", returns false.
Reimplemented from SiStripKey.
Definition at line 156 of file SiStripDetKey.cc.
References sistrip::invalid_, sistrip::PARTITION, partition_, sistrip::TRACKER, sistrip::UNDEFINED_GRAN, and sistrip::UNKNOWN_GRAN.
Referenced by ntupleDataFormat._Object::_checkIsValid(), and core.AutoHandle.AutoHandle::ReallyLoad().
|
inline |
Returns partition.
Definition at line 134 of file SiStripDetKey.h.
References partition_.
Referenced by initFromPath(), isConsistent(), isEqual(), print(), SiStripDetKey(), and terse().
|
overridevirtual |
Print member data of the key
Reimplemented from SiStripKey.
Definition at line 309 of file SiStripDetKey.cc.
References SiStripKey::channel(), TauDecayModes::dec, SiStripEnumsAndStrings::granularity(), SiStripKey::granularity(), isValid(), SiStripKey::key(), partition(), and SiStripKey::path().
Referenced by operator<<().
|
overridevirtual |
A terse summary of the key
Reimplemented from SiStripKey.
Definition at line 305 of file SiStripDetKey.cc.
References partition().
|
private |
APV pair number [0,1-3,invalid].
Definition at line 120 of file SiStripDetKey.h.
Referenced by apvPairNumber(), isConsistent(), isEqual(), and SiStripDetKey().
|
private |
APV position within pair [0,1-2,invalid].
Definition at line 123 of file SiStripDetKey.h.
Referenced by apvWithinPair(), isConsistent(), isEqual(), and SiStripDetKey().
|
private |
partition [0,1-4,invalid].
Definition at line 117 of file SiStripDetKey.h.
Referenced by initFromKey(), initFromPath(), initFromValue(), initGranularity(), isConsistent(), isEqual(), isInvalid(), isValid(), partition(), and SiStripDetKey().
|
staticprivate |
Definition at line 129 of file SiStripDetKey.h.
Referenced by initFromKey().
|
staticprivate |
Definition at line 126 of file SiStripDetKey.h.
Referenced by initFromKey().