ATLAS Offline Software
Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
SCT_MonitorConditionsTool Class Reference

Class for keeping track of errors caught by the monitoring. More...

#include <SCT_MonitorConditionsTool.h>

Inheritance diagram for SCT_MonitorConditionsTool:
Collaboration diagram for SCT_MonitorConditionsTool:

Public Member Functions

 SCT_MonitorConditionsTool (const std::string &type, const std::string &name, const IInterface *parent)
 
virtual ~SCT_MonitorConditionsTool ()=default
 
virtual StatusCode initialize () override
 
virtual StatusCode finalize () override
 
virtual bool canReportAbout (InDetConditions::Hierarchy h) const override
 Can the service report about the given component? (chip, module...) More...
 
virtual bool isGood (const Identifier &elementId, InDetConditions::Hierarchy h=InDetConditions::DEFAULT) const override
 Is the detector element good? More...
 
virtual bool isGood (const Identifier &elementId, const EventContext &ctx, InDetConditions::Hierarchy h=InDetConditions::DEFAULT) const override
 
virtual bool isGood (const IdentifierHash &hashId) const override
 is it good?, using wafer hash More...
 
virtual bool isGood (const IdentifierHash &hashId, const EventContext &ctx) const override
 
virtual void getDetectorElementStatus (const EventContext &ctx, InDet::SiDetectorElementStatus &element_status, SG::WriteCondHandle< InDet::SiDetectorElementStatus > *whandle) const override
 
virtual void badStrips (std::set< Identifier > &strips) const override
 List of bad strip Identifiers. More...
 
virtual void badStrips (std::set< Identifier > &strips, const EventContext &ctx) const override
 
virtual void badStrips (const Identifier &moduleId, std::set< Identifier > &strips) const override
 List of bad strip Identifiers for a given module. More...
 
virtual void badStrips (const Identifier &moduleId, std::set< Identifier > &strips, const EventContext &ctx) const override
 
virtual std::string badStripsAsString (const Identifier &moduleId) const override
 String of bad strip numbers for a given module. More...
 
virtual std::string badStripsAsString (const Identifier &moduleId, const EventContext &ctx) const override
 

Private Member Functions

std::string getList (const Identifier &imodule, const EventContext &ctx) const
 
const SCT_MonitorCondDatagetCondData (const EventContext &ctx) const
 

Static Private Member Functions

static void expandRange (const std::string &rangeStr, std::set< int > &rangeList)
 
static void expandList (const std::string &defectStr, std::set< int > &defectList)
 

Private Attributes

UnsignedIntegerProperty m_nhits_noisychip {this, "Nnoisychip", 64}
 
UnsignedIntegerProperty m_nhits_noisywafer {this, "Nnoisywafer", 384}
 
UnsignedIntegerProperty m_nhits_noisymodule {this, "Nnoisycmodule", 768}
 
const SCT_IDm_pHelper {nullptr}
 
SG::ReadCondHandleKey< SCT_MonitorCondDatam_condKey {this, "CondKey", "SCT_MonitorCondData", "SCT noisy strips"}
 

Static Private Attributes

static const std::string s_separator {"-"}
 

Detailed Description

Class for keeping track of errors caught by the monitoring.

Definition at line 32 of file SCT_MonitorConditionsTool.h.

Constructor & Destructor Documentation

◆ SCT_MonitorConditionsTool()

SCT_MonitorConditionsTool::SCT_MonitorConditionsTool ( const std::string &  type,
const std::string &  name,
const IInterface *  parent 
)

Definition at line 41 of file SCT_MonitorConditionsTool.cxx.

41  :
42  base_class(type, name, parent)
43 {
44 }

◆ ~SCT_MonitorConditionsTool()

virtual SCT_MonitorConditionsTool::~SCT_MonitorConditionsTool ( )
virtualdefault

Member Function Documentation

◆ badStrips() [1/4]

void SCT_MonitorConditionsTool::badStrips ( const Identifier moduleId,
std::set< Identifier > &  strips 
) const
overridevirtual

List of bad strip Identifiers for a given module.

Definition at line 261 of file SCT_MonitorConditionsTool.cxx.

261  {
262  const EventContext& ctx{Gaudi::Hive::currentContext()};
263  return badStrips(moduleId, strips, ctx);
264 }

◆ badStrips() [2/4]

void SCT_MonitorConditionsTool::badStrips ( const Identifier moduleId,
std::set< Identifier > &  strips,
const EventContext &  ctx 
) const
overridevirtual

Definition at line 232 of file SCT_MonitorConditionsTool.cxx.

232  {
233  // Set of bad strip Identifers for a given module
234  // Get defect string and check it is sensible, i.e. non-empty and contains numbers
235  std::string defectStr{getList(moduleId, ctx)};
236  if (doesNotHaveNumbers(defectStr)) return;
237 
238  // Expand the string
239  std::set<int> defectList;
240  expandList(defectStr, defectList);
241 
242  // Convert strip number to Identifier and add to list
243  std::set<int>::const_iterator defectItr{defectList.begin()}, defectEnd{defectList.end()};
244  for (; defectItr!=defectEnd; ++defectItr) {
245  // Strips in the DB are numbered 0-767 (side 0) and 768-1535 (side 1).
246  // This is different from the usual online/offline numbering schemes
247  int side{(*defectItr) > SCT_ConditionsData::STRIPS_PER_WAFER-1 ? 1 : 0};
248  int stripNum{side==1 ? (*defectItr) - SCT_ConditionsData::STRIPS_PER_WAFER : (*defectItr)};
249 
250  Identifier stripId{m_pHelper->strip_id(m_pHelper->barrel_ec(moduleId), m_pHelper->layer_disk(moduleId),
251  m_pHelper->phi_module(moduleId), m_pHelper->eta_module(moduleId),
252  side, stripNum)};
253 
254  ATH_MSG_DEBUG("Bad Strip: Strip number in DB = " << *defectItr<< ", side/offline strip number = " << side << "/" << stripNum<< ", Identifier = " << stripId);
255 
256  strips.insert(stripId);
257  }
258 }

◆ badStrips() [3/4]

void SCT_MonitorConditionsTool::badStrips ( std::set< Identifier > &  strips) const
overridevirtual

List of bad strip Identifiers.

Definition at line 224 of file SCT_MonitorConditionsTool.cxx.

224  {
225  const EventContext& ctx{Gaudi::Hive::currentContext()};
226  badStrips(strips, ctx);
227 }

◆ badStrips() [4/4]

void SCT_MonitorConditionsTool::badStrips ( std::set< Identifier > &  strips,
const EventContext &  ctx 
) const
overridevirtual

Definition at line 212 of file SCT_MonitorConditionsTool.cxx.

212  {
213  // Set of bad strip Identifers for all modules
215  // Loop over modules (side-0 of wafers)
216  for (; waferItr != waferEnd; ++waferItr) {
217  if (m_pHelper->side(*waferItr) != 0) continue;
218  Identifier moduleId{m_pHelper->module_id(*waferItr)};
219  badStrips(moduleId, strips, ctx);
220  }
221 }

◆ badStripsAsString() [1/2]

std::string SCT_MonitorConditionsTool::badStripsAsString ( const Identifier moduleId) const
overridevirtual

String of bad strip numbers for a given module.

Definition at line 274 of file SCT_MonitorConditionsTool.cxx.

274  {
275  const EventContext& ctx{Gaudi::Hive::currentContext()};
276  return badStripsAsString(moduleId, ctx);
277 }

◆ badStripsAsString() [2/2]

std::string SCT_MonitorConditionsTool::badStripsAsString ( const Identifier moduleId,
const EventContext &  ctx 
) const
overridevirtual

Definition at line 269 of file SCT_MonitorConditionsTool.cxx.

269  {
270  return getList(moduleId, ctx);
271 }

◆ canReportAbout()

bool SCT_MonitorConditionsTool::canReportAbout ( InDetConditions::Hierarchy  h) const
overridevirtual

Can the service report about the given component? (chip, module...)

Definition at line 71 of file SCT_MonitorConditionsTool.cxx.

◆ expandList()

void SCT_MonitorConditionsTool::expandList ( const std::string &  defectStr,
std::set< int > &  defectList 
)
staticprivate

Definition at line 320 of file SCT_MonitorConditionsTool.cxx.

320  {
321  // Expand a given defect list
322 
323  // Empty list or one without numbers
324  if (doesNotHaveNumbers(defectStr)) return;
325 
326  std::istringstream is{defectStr};
327  std::istream_iterator<std::string> defectItr{is};
328  std::istream_iterator<std::string> defectEnd; //relies on default constructor to produce eof
329 
330  // Loop over (space-seperated) defects and add to list
331  for (; defectItr != defectEnd; ++defectItr) expandRange(*defectItr, defectList);
332 }

◆ expandRange()

void SCT_MonitorConditionsTool::expandRange ( const std::string &  rangeStr,
std::set< int > &  rangeList 
)
staticprivate

Definition at line 299 of file SCT_MonitorConditionsTool.cxx.

299  {
300  // Expand a given defect range
301  // Find separator
302  std::string::size_type sepPos{rangeStr.find(s_separator)};
303  // Check if it's a range
304  if (sepPos != std::string::npos) {
305  // Extract min and max
306  std::string::size_type len1{sepPos++}, len2{rangeStr.size()-sepPos};
307  int min{std::stoi(rangeStr.substr(0,len1))};
308  int max{std::stoi(rangeStr.substr(sepPos,len2))};
309  // Add all strips in range to list
310  while (min != (max+1)) rangeList.insert(min++);
311  } else {
312  // Assume single number
313  rangeList.insert(std::stoi(rangeStr));
314  }
315 }

◆ finalize()

StatusCode SCT_MonitorConditionsTool::finalize ( )
overridevirtual

Definition at line 64 of file SCT_MonitorConditionsTool.cxx.

64  {
65  return StatusCode::SUCCESS;
66 }

◆ getCondData()

const SCT_MonitorCondData * SCT_MonitorConditionsTool::getCondData ( const EventContext &  ctx) const
private

Definition at line 337 of file SCT_MonitorConditionsTool.cxx.

337  {
339  return condData.retrieve();
340 }

◆ getDetectorElementStatus()

void SCT_MonitorConditionsTool::getDetectorElementStatus ( const EventContext &  ctx,
InDet::SiDetectorElementStatus element_status,
SG::WriteCondHandle< InDet::SiDetectorElementStatus > *  whandle 
) const
overridevirtual

Definition at line 133 of file SCT_MonitorConditionsTool.cxx.

134  {
136  if (not condDataHandle.isValid()) {
137  ATH_MSG_ERROR("Invalid cond data handle " << m_condKey.key() );
138  return;
139  }
140  const SCT_MonitorCondData* condData{condDataHandle.cptr() };
141  if (whandle) {
142  whandle->addDependency (condDataHandle);
143  }
144  if (condData) {
145  std::vector<bool> &status = element_status.getElementStatus();
146  if (status.empty()) {
147  status.resize(m_pHelper->wafer_hash_max(),true);
148  }
149  for (unsigned int hash=0; hash<status.size(); ++hash) {
150  status.at(hash) = status.at(hash) && not (condData->nBadStripsForWafer(hash)>=m_nhits_noisywafer);
151  }
152 
153  std::vector<InDet::ChipFlags_t> &chip_status = element_status.getElementChipStatus();
154  if (chip_status.empty()) {
155  constexpr InDet::ChipFlags_t all_chips_set = static_cast<InDet::ChipFlags_t>((1ul<<(SCT::N_CHIPS_PER_SIDE*SCT::N_SIDES)) - 1ul);
157  chip_status.resize(m_pHelper->wafer_hash_max(),all_chips_set);
158  }
159 
160  std::vector<std::vector<unsigned short> > &bad_strips = element_status.getBadCells();
161  if (bad_strips.empty()) {
162  bad_strips.resize(status.size());
163  }
164 
165  std::vector<std::pair<unsigned int, unsigned int> > tmp_bad_strips;
166  for (unsigned int module_hash=0; module_hash<status.size(); ++module_hash) {
167  IdentifierHash moduleHash(module_hash);
168 
169  std::vector<unsigned short> &bad_module_strips_out = bad_strips.at(module_hash);
170  std::array<unsigned int, SCT::N_CHIPS_PER_SIDE> bad_strip_counts{};
171 
172  const std::array<std::bitset<SCT_ConditionsData::STRIPS_PER_CHIP>,
174  &bad_module_strips_in = condData->badStripsForModule(moduleHash);
175 
176  unsigned int strip_i=0;
177  tmp_bad_strips.clear();
178  tmp_bad_strips.reserve(bad_module_strips_in.size()*SCT_ConditionsData::STRIPS_PER_CHIP);
179 
180  for (const auto& chip_i : bad_module_strips_in) {
181  unsigned int geoemtrical_chip_id = SCT::getGeometricalChipID(strip_i);
182 
183  for (unsigned int strip_per_chip_i=0; strip_per_chip_i<chip_i.size(); ++strip_per_chip_i) {
184  if (chip_i.test(strip_per_chip_i)) {
185  tmp_bad_strips.emplace_back(geoemtrical_chip_id,strip_i);
186  ++bad_strip_counts.at(geoemtrical_chip_id);
187  }
188  ++strip_i;
189  }
190  }
191 
192  InDet::ChipFlags_t bad_chips=0;
193  for (unsigned int the_chip=0; the_chip< bad_strip_counts.size(); ++the_chip) {
194  bad_chips |= static_cast<InDet::ChipFlags_t >((bad_strip_counts[the_chip]>=m_nhits_noisychip) << the_chip);
195  }
196  chip_status[module_hash] &= ~bad_chips;
197 
198  for (const std::pair<unsigned int, unsigned int> &chip_and_strip : tmp_bad_strips) {
199  unsigned int strip_i=chip_and_strip.second;
200  std::vector<unsigned short>::const_iterator iter = std::lower_bound(bad_module_strips_out.begin(),bad_module_strips_out.end(),strip_i);
201  if (iter == bad_module_strips_out.end() || *iter != strip_i) {
202  bad_module_strips_out.insert( iter, strip_i);
203  }
204  }
205  }
206  }
207 }

◆ getList()

std::string SCT_MonitorConditionsTool::getList ( const Identifier imodule,
const EventContext &  ctx 
) const
private

Definition at line 284 of file SCT_MonitorConditionsTool.cxx.

284  {
285  string currentDefectList{""};
286  const SCT_MonitorCondData* condData{getCondData(ctx)};
287  if (condData) {
288  const IdentifierHash moduleHash{m_pHelper->wafer_hash(moduleId)};
289  condData->find(moduleHash, currentDefectList);
290  } else {
291  ATH_MSG_ERROR("In getList - no data");
292  }
293  return currentDefectList;
294 }

◆ initialize()

StatusCode SCT_MonitorConditionsTool::initialize ( )
overridevirtual

Definition at line 49 of file SCT_MonitorConditionsTool.cxx.

49  {
50  if (detStore()->retrieve(m_pHelper,"SCT_ID").isFailure()) {
51  ATH_MSG_FATAL("SCT helper failed to retrieve");
52  return StatusCode::FAILURE;
53  }
54 
55  // Read Cond Handle Key
57 
58  return StatusCode::SUCCESS;
59 }

◆ isGood() [1/4]

bool SCT_MonitorConditionsTool::isGood ( const Identifier elementId,
const EventContext &  ctx,
InDetConditions::Hierarchy  h = InDetConditions::DEFAULT 
) const
overridevirtual

Definition at line 79 of file SCT_MonitorConditionsTool.cxx.

79  {
80  const Identifier waferId{m_pHelper->wafer_id(elementId)};
81  const Identifier moduleId{m_pHelper->module_id(waferId)};
82  const IdentifierHash waferHash{m_pHelper->wafer_hash(waferId)};
83  const IdentifierHash moduleHash{m_pHelper->wafer_hash(moduleId)};
84  const int strip{m_pHelper->strip(elementId)};
85 
86  const SCT_MonitorCondData* condData{getCondData(ctx)};
87  if (condData) {
88  switch (h) {
90  return not (condData->nBadStripsForModule(moduleHash)>=m_nhits_noisymodule);
92  return not (condData->nBadStripsForWafer(waferHash)>=m_nhits_noisywafer);
94  return not (condData->nBadStripsForChip(waferHash, strip)>=m_nhits_noisychip);
96  return not condData->isBadStrip(waferHash, strip);
97  }
98  default:
99  return true;
100  }//end of switch statement
101  }
102 
103  return true;
104 }

◆ isGood() [2/4]

bool SCT_MonitorConditionsTool::isGood ( const Identifier elementId,
InDetConditions::Hierarchy  h = InDetConditions::DEFAULT 
) const
overridevirtual

Is the detector element good?

Definition at line 109 of file SCT_MonitorConditionsTool.cxx.

109  {
110  const EventContext& ctx{Gaudi::Hive::currentContext()};
111 
112  return isGood(elementId, ctx, h);
113 }

◆ isGood() [3/4]

bool SCT_MonitorConditionsTool::isGood ( const IdentifierHash hashId) const
overridevirtual

is it good?, using wafer hash

Definition at line 126 of file SCT_MonitorConditionsTool.cxx.

126  {
127  const EventContext& ctx{Gaudi::Hive::currentContext()};
128 
129  return isGood(hashId, ctx);
130 }

◆ isGood() [4/4]

bool SCT_MonitorConditionsTool::isGood ( const IdentifierHash hashId,
const EventContext &  ctx 
) const
overridevirtual

Definition at line 118 of file SCT_MonitorConditionsTool.cxx.

118  {
119  Identifier elementId{m_pHelper->wafer_id(hashId)};
120  return isGood(elementId, ctx, InDetConditions::SCT_SIDE);
121 }

Member Data Documentation

◆ m_condKey

SG::ReadCondHandleKey<SCT_MonitorCondData> SCT_MonitorConditionsTool::m_condKey {this, "CondKey", "SCT_MonitorCondData", "SCT noisy strips"}
private

Definition at line 86 of file SCT_MonitorConditionsTool.h.

◆ m_nhits_noisychip

UnsignedIntegerProperty SCT_MonitorConditionsTool::m_nhits_noisychip {this, "Nnoisychip", 64}
private

Definition at line 81 of file SCT_MonitorConditionsTool.h.

◆ m_nhits_noisymodule

UnsignedIntegerProperty SCT_MonitorConditionsTool::m_nhits_noisymodule {this, "Nnoisycmodule", 768}
private

Definition at line 83 of file SCT_MonitorConditionsTool.h.

◆ m_nhits_noisywafer

UnsignedIntegerProperty SCT_MonitorConditionsTool::m_nhits_noisywafer {this, "Nnoisywafer", 384}
private

Definition at line 82 of file SCT_MonitorConditionsTool.h.

◆ m_pHelper

const SCT_ID* SCT_MonitorConditionsTool::m_pHelper {nullptr}
private

Definition at line 84 of file SCT_MonitorConditionsTool.h.

◆ s_separator

const string SCT_MonitorConditionsTool::s_separator {"-"}
staticprivate

Definition at line 79 of file SCT_MonitorConditionsTool.h.


The documentation for this class was generated from the following files:
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
SCT_MonitorConditionsTool::isGood
virtual bool isGood(const Identifier &elementId, InDetConditions::Hierarchy h=InDetConditions::DEFAULT) const override
Is the detector element good?
Definition: SCT_MonitorConditionsTool.cxx:109
ATH_MSG_FATAL
#define ATH_MSG_FATAL(x)
Definition: AthMsgStreamMacros.h:34
InDet::SiDetectorElementStatus::getElementStatus
const std::vector< bool > & getElementStatus() const
Definition: SiDetectorElementStatus.h:116
SiliconTech::strip
@ strip
max
#define max(a, b)
Definition: cfImp.cxx:41
SG::ReadCondHandle
Definition: ReadCondHandle.h:44
SCT_ConditionsData::CHIPS_PER_SIDE
@ CHIPS_PER_SIDE
Definition: SCT_ConditionsParameters.h:20
SCT_MonitorConditionsTool::m_condKey
SG::ReadCondHandleKey< SCT_MonitorCondData > m_condKey
Definition: SCT_MonitorConditionsTool.h:86
SCT_MonitorConditionsTool::badStripsAsString
virtual std::string badStripsAsString(const Identifier &moduleId) const override
String of bad strip numbers for a given module.
Definition: SCT_MonitorConditionsTool.cxx:274
InDetConditions::SCT_CHIP
@ SCT_CHIP
Definition: InDetHierarchy.h:14
SCT::N_SIDES
constexpr unsigned int N_SIDES
Definition: SCT_ChipUtils.h:16
SCT_ID::wafer_begin
const_id_iterator wafer_begin(void) const
Iterators over full set of ids. Wafer iterator is sorted.
Definition: SCT_ID.cxx:645
SCT_ConditionsData::STRIPS_PER_WAFER
@ STRIPS_PER_WAFER
Definition: SCT_ConditionsParameters.h:21
InDet::SiDetectorElementStatus::getBadCells
const std::vector< std::vector< unsigned short > > & getBadCells() const
Definition: SiDetectorElementStatus.h:120
SCT_ID::const_id_iterator
std::vector< Identifier >::const_iterator const_id_iterator
Definition: SCT_ID.h:73
SCT_ID::barrel_ec
int barrel_ec(const Identifier &id) const
Values of different levels (failure returns 0)
Definition: SCT_ID.h:728
SCT_ID::phi_module
int phi_module(const Identifier &id) const
Definition: SCT_ID.h:740
SG::VarHandleKey::key
const std::string & key() const
Return the StoreGate ID for the referenced object.
Definition: AthToolSupport/AsgDataHandles/Root/VarHandleKey.cxx:141
SCT_MonitorConditionsTool::s_separator
static const std::string s_separator
Definition: SCT_MonitorConditionsTool.h:79
SCT_ID::module_id
Identifier module_id(int barrel_ec, int layer_disk, int phi_module, int eta_module) const
For a single crystal.
Definition: SCT_ID.h:416
SCT_MonitorConditionsTool::badStrips
virtual void badStrips(std::set< Identifier > &strips) const override
List of bad strip Identifiers.
Definition: SCT_MonitorConditionsTool.cxx:224
SCT_ConditionsData::STRIPS_PER_CHIP
@ STRIPS_PER_CHIP
Definition: SCT_ConditionsParameters.h:21
TRT::Hit::side
@ side
Definition: HitInfo.h:83
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
InDetConditions::SCT_MODULE
@ SCT_MODULE
Definition: InDetHierarchy.h:14
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
test_pyathena.parent
parent
Definition: test_pyathena.py:15
SCT_MonitorConditionsTool::getCondData
const SCT_MonitorCondData * getCondData(const EventContext &ctx) const
Definition: SCT_MonitorConditionsTool.cxx:337
SCT_MonitorConditionsTool::m_nhits_noisywafer
UnsignedIntegerProperty m_nhits_noisywafer
Definition: SCT_MonitorConditionsTool.h:82
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
SCT_ID::wafer_hash
IdentifierHash wafer_hash(const Identifier &wafer_id) const
wafer hash from id - optimized
Definition: SCT_ID.h:492
detail::ul
unsigned long ul
Definition: PrimitiveHelpers.h:45
SCT_MonitorConditionsTool::expandRange
static void expandRange(const std::string &rangeStr, std::set< int > &rangeList)
Definition: SCT_MonitorConditionsTool.cxx:299
min
#define min(a, b)
Definition: cfImp.cxx:40
python.PyKernel.detStore
detStore
Definition: PyKernel.py:41
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
SCT_ID::wafer_hash_max
size_type wafer_hash_max(void) const
Definition: SCT_ID.cxx:636
SCT_MonitorConditionsTool::getList
std::string getList(const Identifier &imodule, const EventContext &ctx) const
Definition: SCT_MonitorConditionsTool.cxx:284
SCT_ID::layer_disk
int layer_disk(const Identifier &id) const
Definition: SCT_ID.h:734
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
SCT_MonitorConditionsTool::expandList
static void expandList(const std::string &defectStr, std::set< int > &defectList)
Definition: SCT_MonitorConditionsTool.cxx:320
h
CaloCondBlobAlgs_fillNoiseFromASCII.hash
dictionary hash
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:109
SCT_ID::strip
int strip(const Identifier &id) const
Definition: SCT_ID.h:764
InDet::SiDetectorElementStatus::getElementChipStatus
const std::vector< ChipFlags_t > & getElementChipStatus() const
Definition: SiDetectorElementStatus.h:118
SCT_MonitorCondData
Class for data object used in SCT_MonitorCondAlg and SCT_MonitorConditionsTool.
Definition: SCT_MonitorCondData.h:29
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
SCT_ID::eta_module
int eta_module(const Identifier &id) const
Definition: SCT_ID.h:746
SCT_MonitorConditionsTool::m_nhits_noisychip
UnsignedIntegerProperty m_nhits_noisychip
Definition: SCT_MonitorConditionsTool.h:81
SCT_MonitorConditionsTool::m_nhits_noisymodule
UnsignedIntegerProperty m_nhits_noisymodule
Definition: SCT_MonitorConditionsTool.h:83
SCT::getGeometricalChipID
constexpr unsigned int getGeometricalChipID(unsigned int strip)
Get the geometrical chip ID for the given strip.
Definition: SCT_ChipUtils.h:71
InDet::ChipFlags_t
unsigned short ChipFlags_t
Definition: SiDetectorElementStatus.h:60
SCT_ID::side
int side(const Identifier &id) const
Definition: SCT_ID.h:752
SCT_ID::wafer_end
const_id_iterator wafer_end(void) const
Definition: SCT_ID.cxx:649
merge.status
status
Definition: merge.py:17
SCT_ID::wafer_id
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module, int side) const
For a single side of module.
Definition: SCT_ID.h:464
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
InDetConditions::SCT_STRIP
@ SCT_STRIP
Definition: InDetHierarchy.h:14
InDetConditions::SCT_SIDE
@ SCT_SIDE
Definition: InDetHierarchy.h:14
SCT_MonitorConditionsTool::m_pHelper
const SCT_ID * m_pHelper
Definition: SCT_MonitorConditionsTool.h:84
SCT::N_CHIPS_PER_SIDE
constexpr unsigned int N_CHIPS_PER_SIDE
Definition: SCT_ChipUtils.h:15
SG::WriteCondHandle::addDependency
void addDependency(const EventIDRange &range)
Definition: WriteCondHandle.h:275
SCT_ID::strip_id
Identifier strip_id(int barrel_ec, int layer_disk, int phi_module, int eta_module, int side, int strip) const
For an individual strip.
Definition: SCT_ID.h:535
Identifier
Definition: IdentifierFieldParser.cxx:14