|
ATLAS Offline Software
|
#include <PixelConditionsSummaryTool.h>
|
| PixelConditionsSummaryTool (const std::string &type, const std::string &name, const IInterface *parent) |
|
virtual | ~PixelConditionsSummaryTool () |
|
virtual StatusCode | initialize () override |
|
virtual bool | isActive (const Identifier &elementId, const InDetConditions::Hierarchy h, const EventContext &ctx) const override final |
|
virtual bool | isActive (const IdentifierHash &moduleHash, const EventContext &ctx) const override final |
|
virtual bool | isActive (const IdentifierHash &moduleHash, const Identifier &elementId, const EventContext &ctx) const override final |
|
virtual double | activeFraction (const IdentifierHash &moduleHash, const Identifier &idStart, const Identifier &idEnd, const EventContext &ctx) const override final |
|
virtual bool | isGood (const Identifier &elementId, const InDetConditions::Hierarchy h, const EventContext &ctx) const override final |
|
virtual bool | isGood (const IdentifierHash &moduleHash, const EventContext &ctx) const override final |
|
virtual bool | isGood (const IdentifierHash &moduleHash, const Identifier &elementId, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const override final |
|
virtual double | goodFraction (const IdentifierHash &moduleHash, const Identifier &idStart, const Identifier &idEnd, const EventContext &ctx) const override final |
|
virtual std::unique_ptr< InDet::SiDetectorElementStatus > | getDetectorElementStatus (const EventContext &ctx, SG::WriteCondHandle< InDet::SiDetectorElementStatus > *whandle) const override |
| get the module and chip status of Si detector elements More...
|
|
virtual bool | hasBSError (const IdentifierHash &moduleHash, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const override final |
|
virtual bool | hasBSError (const IdentifierHash &moduleHash, Identifier pixid, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const override final |
|
virtual uint64_t | getBSErrorWord (const IdentifierHash &moduleHash, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const override final |
|
virtual uint64_t | getBSErrorWord (const IdentifierHash &moduleHash, const int index, const EventContext &ctx, const IDCCacheEntry *cacheEntry=nullptr) const override final |
|
virtual IDCCacheEntry * | getCacheEntryOut (const EventContext &ctx) const override final |
|
bool | checkChipStatus (IdentifierHash moduleHash, Identifier pixid, const EventContext &ctx) const |
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
| DeclareInterfaceID (IInDetConditionsTool, 1, 0) |
| Creates the InterfaceID and interfaceID() method. More...
|
|
|
const PixelID * | m_pixelID {} |
|
std::vector< std::string > | m_isActiveStatus |
|
std::vector< std::string > | m_isActiveStates |
|
std::vector< int > | m_activeState |
|
std::vector< int > | m_activeStatus |
|
unsigned int | m_activeStateMask {} |
| mask in which each state is represented by a bit and for states which are cnsidered active the corresponding bit is set; More...
|
|
unsigned int | m_activeStatusMask {} |
| mask in which each status is represented by a bit and for status values which are cnsidered active the corresponding bit is set; More...
|
|
Gaudi::Property< bool > | m_useByteStreamFEI4 {this, "UseByteStreamFEI4", false, "Switch of the ByteStream error for FEI4"} |
|
Gaudi::Property< bool > | m_useByteStreamFEI3 {this, "UseByteStreamFEI3", false, "Switch of the ByteStream error for FEI3"} |
|
Gaudi::Property< bool > | m_useByteStreamRD53 {this, "UseByteStreamRD53", false, "Switch of the ByteStream error for RD53"} |
|
SG::ReadCondHandleKey< PixelDCSStateData > | m_condDCSStateKey {this, "PixelDCSStateCondData", "PixelDCSStateCondData", "Pixel FSM state key"} |
|
SG::ReadCondHandleKey< PixelDCSStatusData > | m_condDCSStatusKey {this, "PixelDCSStatusCondData", "PixelDCSStatusCondData", "Pixel FSM status key"} |
|
SG::ReadCondHandleKey< PixelTDAQData > | m_condTDAQKey {this, "PixelTDAQCondData", "", "Pixel TDAQ conditions key"} |
|
SG::ReadCondHandleKey< PixelDeadMapCondData > | m_condDeadMapKey {this, "PixelDeadMapCondData", "PixelDeadMapCondData", "Pixel deadmap conditions key"} |
|
ServiceHandle< InDetDD::IPixelReadoutManager > | m_pixelReadout {this, "PixelReadoutManager", "PixelReadoutManager", "Pixel readout manager" } |
|
SG::ReadHandleKey< IDCInDetBSErrContainer > | m_BSErrContReadKey {this, "PixelByteStreamErrs", "PixelByteStreamErrs", "PixelByteStreamErrs container key"} |
|
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > | m_pixelDetEleCollKey {this, "PixelDetEleCollKey", "PixelDetectorElementCollection", "Key of SiDetectorElementCollection for Pixel"} |
|
SG::ReadHandleKey< InDet::SiDetectorElementStatus > | m_pixelDetElStatusEventKey {this, "PixelDetElStatusEventDataBaseKey", "", "Optional event data key of an input SiDetectorElementStatus on which the newly created object will be based."} |
|
SG::ReadCondHandleKey< InDet::SiDetectorElementStatus > | m_pixelDetElStatusCondKey {this, "PixelDetElStatusCondDataBaseKey", "" , "Optional conditions data key of an input SiDetectorElementStatus on which the newly created object will be based."} |
|
Gaudi::Property< bool > | m_activeOnly {this, "ActiveOnly", false, "Module and chip status will only reflect whether the modules or chips are active not necessarily whether the signals are good."} |
|
const uint64_t | m_missingErrorInfo {std::numeric_limits<uint64_t>::max()-3000000000} |
|
SG::SlotSpecificObj< std::mutex > m_cacheMutex | ATLAS_THREAD_SAFE |
|
SG::SlotSpecificObj< IDCCacheEntry > m_eventCache | ATLAS_THREAD_SAFE |
|
StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) More...
|
|
StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) More...
|
|
std::vector< SG::VarHandleKeyArray * > | m_vhka |
|
bool | m_varHandleArraysDeclared |
|
◆ StoreGateSvc_t
◆ PixelConditionsSummaryTool()
PixelConditionsSummaryTool::PixelConditionsSummaryTool |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~PixelConditionsSummaryTool()
PixelConditionsSummaryTool::~PixelConditionsSummaryTool |
( |
| ) |
|
|
virtualdefault |
◆ activeFraction()
◆ checkChipStatus()
Definition at line 175 of file PixelConditionsSummaryTool.h.
177 if (chipStatus.any()) {
179 std::bitset<16> circ;
181 if ((chipStatus&circ).any()) {
return false; }
◆ createDetectorElementStatus()
Create a new detector element status element container.
Depending on the properties the container may be a copy of an event data or conditions data element status container.
Definition at line 306 of file PixelConditionsSummaryTool.cxx.
313 return std::make_unique<InDet::PixelDetectorElementStatus>(*castToDerived(input_element_status.cptr()));
317 return std::make_unique<InDet::PixelDetectorElementStatus>(*castToDerived(input_element_status.cptr()));
321 if (not pixelDetEleHandle.isValid() ) {
322 std::stringstream
msg;
324 throw std::runtime_error(
msg.str());
330 return std::make_unique<InDet::PixelDetectorElementStatus>(*elements);
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ DeclareInterfaceID()
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ getBSErrorWord() [1/2]
◆ getBSErrorWord() [2/2]
Implements IInDetConditionsTool.
Definition at line 123 of file PixelConditionsSummaryTool.cxx.
132 if (not pixelDetEleHandle.isValid() or elements==
nullptr) {
143 if (cacheEntry ==
nullptr){
144 std::scoped_lock<std::mutex> lock{*m_cacheMutex.get(ctx)};
147 const auto *idcCachePtr = cacheEntry->IDCCache;
148 if (idcCachePtr==
nullptr) {
◆ getCacheEntry()
Return cache for the current event If, for current slot, the cache is outdated it is retrieved from the IDC collection.
If the IDC is missing nullptr is returned.
Definition at line 98 of file PixelConditionsSummaryTool.cxx.
99 IDCCacheEntry* cacheEntry = m_eventCache.get(ctx);
100 if (cacheEntry->needsUpdate(ctx)) {
102 if (idcErrContPtr==
nullptr) {
103 cacheEntry->reset(ctx.evt(),
nullptr);
106 cacheEntry->reset(ctx.evt(), idcErrContPtr->cache());
108 ATH_MSG_VERBOSE(
"PixelConditionsSummaryTool Cache for the event reset " << cacheEntry->eventId <<
" with IDC container" << idcErrContPtr);
◆ getCacheEntryOut()
◆ getContainer()
Obtains container form the SG, if it is missing it will complain (hard-coded 3 times per job) and return nullptr.
Definition at line 87 of file PixelConditionsSummaryTool.cxx.
93 if (not idcErrCont.isValid()) {
return nullptr; }
95 return idcErrCont.cptr();
◆ getDetectorElementStatus()
get the module and chip status of Si detector elements
- Parameters
-
ctx | the current event contex |
whandle | Pointer to the write handle for the conditions object being built, for propagation of IOV range and dependency information. Pass nullptr if we're building an object for event data, rather than conditions data. |
Implements IDetectorElementStatusTool.
Definition at line 335 of file PixelConditionsSummaryTool.cxx.
338 std::vector<bool> &
status=element_status->getElementStatus();
342 std::vector<InDet::ChipFlags_t> &chip_status=element_status->getElementChipStatus();
343 chip_status.resize(
status.size(),0);
363 andNotStatus(tdaq_handle->moduleStatusMap(),
status);
370 andNotStatus(dead_map_handle->moduleStatusMap(),
status);
376 unsigned int element_i=0;
383 assert( chip_mask != 0 );
384 std::bitset<16> dead_chip_mask(dead_map->
getChipStatus(element_i));
385 chip_status[element_i] = chip_mask & (~static_cast<InDet::ChipFlags_t>(dead_chip_mask.to_ulong()));
398 if (readout_technology_mask) {
400 ATH_MSG_ERROR(
"PixelConditionsSummaryTool not configured for use with conditions objects");
403 std::scoped_lock<std::mutex> lock{*m_cacheMutex.get(ctx)};
406 if (idcCachePtr==
nullptr) {
437 unsigned int element_offset_i = (active_only ? 52736 : 0);
439 unsigned int element_i=0;
447 status.at(element_i) =
status.at(element_i) && not ( readout_technology_flags
450 : idcCachePtr->
retrieve(element_i+element_offset_i)!=1 ));
456 assert( chip_mask != 0 );
459 for (
unsigned int chip_i =0; chip_i < number_of_chips; ++chip_i) {
461 unsigned int indexFE = (1+chip_i)*maxHash + element_i;
464 bs_status_flags |= (chip_flag << chip_i);
467 chip_status[element_i] &= (bs_status_flags & chip_mask);
470 chip_status[element_i] = 0;
476 return element_status;
◆ getInvalidRange()
static EventIDRange IDetectorElementStatusTool::getInvalidRange |
( |
| ) |
|
|
inlinestaticinherited |
◆ getUndefinedEventId()
static EventIDBase IDetectorElementStatusTool::getUndefinedEventId |
( |
| ) |
|
|
inlinestaticinherited |
◆ goodFraction()
◆ hasBSError() [1/2]
◆ hasBSError() [2/2]
◆ initialize()
StatusCode PixelConditionsSummaryTool::initialize |
( |
| ) |
|
|
overridevirtual |
Definition at line 25 of file PixelConditionsSummaryTool.cxx.
39 ATH_MSG_FATAL(
"The event data (PixelDetElStatusEventDataBaseKey) and cond data (PixelDetElStatusCondDataBaseKey) keys cannot be set at the same time.");
57 return StatusCode::FAILURE;
60 ATH_MSG_FATAL(
"Logic error: status id too large. Cannot be represented by a bit");
61 return StatusCode::FAILURE;
68 if (isActiveStatus==
"OK") {
m_activeStatus.push_back(PixelDCSStatusData::DCSModuleStatus::OK); }
72 else if (isActiveStatus==
"NOSTATUS") {
m_activeStatus.push_back(PixelDCSStatusData::DCSModuleStatus::NOSTATUS); }
74 ATH_MSG_ERROR(
"No matching DCS status " << isActiveStatus <<
" in DCSModuleStatus");
75 return StatusCode::FAILURE;
78 ATH_MSG_FATAL(
"Logic error: status id too large. Cannot be represented by a bit");
79 return StatusCode::FAILURE;
84 return StatusCode::SUCCESS;
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ interfaceID()
InterfaceID & PixelConditionsSummaryTool::interfaceID |
( |
| ) |
|
|
inlinestatic |
Definition at line 170 of file PixelConditionsSummaryTool.h.
171 static InterfaceID IID_PixelConditionsSummaryTool(
"PixelConditionsSummaryTool", 1, 0);
172 return IID_PixelConditionsSummaryTool;
◆ isActive() [1/3]
◆ isActive() [2/3]
Implements IInDetConditionsTool.
Definition at line 200 of file PixelConditionsSummaryTool.cxx.
205 if (useByteStream &&
getBSErrorWord(moduleHash,moduleHash+52736,ctx)!=1) {
return false; }
208 bool isDCSActive =
false;
210 if (istate==dcsstate_data->getModuleStatus(moduleHash)) { isDCSActive=
true; }
212 if (!isDCSActive) {
return false; }
◆ isActive() [3/3]
Implements IInDetConditionsTool.
Definition at line 221 of file PixelConditionsSummaryTool.cxx.
226 if (useByteStream &&
getBSErrorWord(moduleHash,moduleHash+52736,ctx)!=1) {
return false; }
229 bool isDCSActive =
false;
231 if (istate==dcsstate_data->getModuleStatus(moduleHash)) { isDCSActive=
true; }
233 if (!isDCSActive) {
return false; }
◆ isGood() [1/3]
Implements IInDetConditionsTool.
Definition at line 246 of file PixelConditionsSummaryTool.cxx.
250 if (
hasBSError(moduleHash, ctx)) {
return false; }
253 bool isDCSActive =
false;
255 if (istate==dcsstate_data->getModuleStatus(moduleHash)) { isDCSActive=
true; }
257 if (!isDCSActive) {
return false; }
260 bool isDCSGood =
false;
262 if (activeStatus==dcsstatus_data->getModuleStatus(moduleHash)) { isDCSGood=
true; }
264 if (!isDCSGood) {
return false; }
272 if (
hasBSError(moduleHash, elementId, ctx)) {
return false; }
◆ isGood() [2/3]
Implements IInDetConditionsTool.
Definition at line 479 of file PixelConditionsSummaryTool.cxx.
481 if (
hasBSError(moduleHash, ctx)) {
return false; }
484 bool isDCSActive =
false;
486 if (istate==dcsstate_data->getModuleStatus(moduleHash)) { isDCSActive=
true; }
488 if (!isDCSActive) {
return false; }
491 bool isDCSGood =
false;
493 if (activeStatus==dcsstatus_data->getModuleStatus(moduleHash)) { isDCSGood=
true; }
495 if (!isDCSGood) {
return false; }
◆ isGood() [3/3]
Implements IInDetConditionsTool.
Definition at line 504 of file PixelConditionsSummaryTool.cxx.
506 if (
hasBSError(moduleHash, ctx, cacheEntry)) {
return false; }
509 bool isDCSActive =
false;
511 if (istate==dcsstate_data->getModuleStatus(moduleHash)) { isDCSActive=
true; }
513 if (!isDCSActive) {
return false; }
516 bool isDCSGood =
false;
518 if (activeStatus==dcsstatus_data->getModuleStatus(moduleHash)) { isDCSGood=
true; }
520 if (!isDCSGood) {
return false; }
528 if (
hasBSError(moduleHash, elementId, ctx, cacheEntry)) {
return false; }
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ renounce()
◆ renounceArray()
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ ATLAS_THREAD_SAFE [1/2]
◆ ATLAS_THREAD_SAFE [2/2]
◆ m_activeOnly
Gaudi::Property< bool> PixelConditionsSummaryTool::m_activeOnly {this, "ActiveOnly", false, "Module and chip status will only reflect whether the modules or chips are active not necessarily whether the signals are good."} |
|
private |
◆ m_activeState
std::vector<int> PixelConditionsSummaryTool::m_activeState |
|
private |
◆ m_activeStateMask
unsigned int PixelConditionsSummaryTool::m_activeStateMask {} |
|
private |
mask in which each state is represented by a bit and for states which are cnsidered active the corresponding bit is set;
Definition at line 88 of file PixelConditionsSummaryTool.h.
◆ m_activeStatus
std::vector<int> PixelConditionsSummaryTool::m_activeStatus |
|
private |
◆ m_activeStatusMask
unsigned int PixelConditionsSummaryTool::m_activeStatusMask {} |
|
private |
mask in which each status is represented by a bit and for status values which are cnsidered active the corresponding bit is set;
Definition at line 89 of file PixelConditionsSummaryTool.h.
◆ m_BSErrContReadKey
◆ m_condDCSStateKey
◆ m_condDCSStatusKey
◆ m_condDeadMapKey
◆ m_condTDAQKey
◆ m_detStore
◆ m_evtStore
◆ m_isActiveStates
std::vector<std::string> PixelConditionsSummaryTool::m_isActiveStates |
|
private |
◆ m_isActiveStatus
std::vector<std::string> PixelConditionsSummaryTool::m_isActiveStatus |
|
private |
◆ m_missingErrorInfo
const uint64_t PixelConditionsSummaryTool::m_missingErrorInfo {std::numeric_limits<uint64_t>::max()-3000000000} |
|
private |
◆ m_pixelDetEleCollKey
◆ m_pixelDetElStatusCondKey
◆ m_pixelDetElStatusEventKey
◆ m_pixelID
◆ m_pixelReadout
◆ m_useByteStreamFEI3
Gaudi::Property<bool> PixelConditionsSummaryTool::m_useByteStreamFEI3 {this, "UseByteStreamFEI3", false, "Switch of the ByteStream error for FEI3"} |
|
private |
◆ m_useByteStreamFEI4
Gaudi::Property<bool> PixelConditionsSummaryTool::m_useByteStreamFEI4 {this, "UseByteStreamFEI4", false, "Switch of the ByteStream error for FEI4"} |
|
private |
◆ m_useByteStreamRD53
Gaudi::Property<bool> PixelConditionsSummaryTool::m_useByteStreamRD53 {this, "UseByteStreamRD53", false, "Switch of the ByteStream error for RD53"} |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
def retrieve(aClass, aKey=None)
int phi_index(const Identifier &id) const
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
unsigned int makeReadoutTechnologyBit(InDetDD::PixelReadoutTechnology technology, unsigned int bit_val=1)
Create a word with a bit representing the given readout technology to the given value.
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
constexpr IDCInDetBSErrContainer::ErrorCode makeError(PixelErrorsEnum errType)
helper to be used in clients to fetch error information
#define ATH_MSG_VERBOSE(x)
const std::string & key() const
Return the StoreGate ID for the referenced object.
bool empty() const
Test if the key is blank.
@ u
Enums for curvilinear frames.
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module) const
For a single crystal.
T retrieve(size_t i)
Retrieve the Value stored in that hash.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual void setOwner(IDataHandleHolder *o)=0
IdentifierHash wafer_hash(Identifier wafer_id) const
wafer hash from id
int numberOfCircuits() const
Total number of circuits:
int eta_index(const Identifier &id) const
int getChipStatus(const int chanNum) const
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
StatusCode initialize(bool used=true)
size_type wafer_hash_max(void) const
PixelReadoutTechnology getReadoutTechnology() const
#define ATH_MSG_WARNING(x)
Identifier pixel_id(int barrel_ec, int layer_disk, int phi_module, int eta_module, int phi_index, int eta_index) const
For an individual pixel.
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
unsigned short ChipFlags_t
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
virtual const SiDetectorDesign & design() const override final
access to the local description (inline):
This class is to provide an event wide MT container for concurrent storing of basic types,...
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
const IDCInDetBSErrContainer_Cache * IDCCache
void addDependency(const EventIDRange &range)