22 base_class(name, pSvcLocator),
46 SmartIF<StoreGateSvc> detStore{service(
"DetectorStore")};
55 return StatusCode::SUCCESS;
65 result = flag==InDet::TRT_COND_GOOD || flag==InDet::TRT_COND_CAUTION || flag==InDet::TRT_COND_NOINFO;
72 int nelements=element->
nStraws();
73 for(
int i=0;i<nelements;i++){
75 if(!(flag==InDet::TRT_COND_GOOD || flag==InDet::TRT_COND_CAUTION || flag==InDet::TRT_COND_NOINFO)){
97 int nelements=element->
nStraws();
98 for(
int i=0;i<nelements;i++){
100 if(!(flag==InDet::TRT_COND_GOOD || flag==InDet::TRT_COND_CAUTION || flag==InDet::TRT_COND_NOINFO)){
124 int start=
m_trtid->straw(idStart);
128 for(
int i=start;i<=end;i++){
147 result = flag==InDet::TRT_COND_GOOD;
154 int nelements=element->
nStraws();
155 for(
int i=0;i<nelements;i++){
157 if(!(flag==InDet::TRT_COND_GOOD)){
179 int nelements=element->
nStraws();
180 for(
int i=0;i<nelements;i++){
182 if(!(flag==InDet::TRT_COND_GOOD)){
206 int start=
m_trtid->straw(idStart);
210 for(
int i=start;i<=end;i++){
226 InDet::TRT_CondFlag status = InDet::TRT_COND_GOOD;
229 ServiceHandleArray<ITRT_ConditionsSvc>::const_iterator svcItr;
232 InDet::TRT_CondFlag thisSvcFlag;
233 thisSvcFlag = (*svcItr)->condSummaryStatus( ident );
234 if ( thisSvcFlag == InDet::TRT_COND_SKIPME )
continue;
235 if ( thisSvcFlag == InDet::TRT_COND_NOINFO )
continue;
238 if ( thisSvcFlag != InDet::TRT_COND_GOOD ) {
239 if ( status != InDet::TRT_COND_BAD ) status = InDet::TRT_COND_CAUTION;
240 if ( thisSvcFlag == InDet::TRT_COND_BAD ) status = InDet::TRT_COND_BAD;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
Header containing the InDetHierarchy enum, to avoid pulling in a class every time it is needed and na...
This is an Identifier helper class for the TRT subdetector.
Header file for AthHistogramAlgorithm.
This is a "hash" representation of an Identifier.
Virtual base class of TRT readout elements.
unsigned int nStraws() const
Number of straws in the element.
InDet::TRT_CondFlag condSummaryStatus(const Identifier &ident)
const InDetDD::TRT_DetectorManager * m_manager
virtual StatusCode initialize() override
Service init.
virtual double goodFraction(const IdentifierHash &elementHash, const Identifier &idStart, const Identifier &idEnd) override
TRT_ConditionsSummarySvc(const std::string &name, ISvcLocator *svc)
Service constructor.
virtual bool isActive(const Identifier &elementId, const InDetConditions::Hierarchy h=InDetConditions::DEFAULT) override
virtual ~TRT_ConditionsSummarySvc()
virtual bool isGood(const Identifier &elementId, const InDetConditions::Hierarchy h=InDetConditions::DEFAULT) override
ServiceHandleArray< ITRT_ConditionsSvc > m_svcCollection
virtual double activeFraction(const IdentifierHash &elementHash, const Identifier &idStart, const Identifier &idEnd) override
int count(std::string s, const std::string ®x)
count how many occurances of a regx are in a string