ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetConditions
TRT_ConditionsServices
src
TRT_DCS_ConditionsSvc.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRT_DCS_CONDITIONSSVC_H
6
#define TRT_DCS_CONDITIONSSVC_H
7
13
#include <vector>
14
#include "
AthenaBaseComps/AthService.h
"
15
#include "
CxxUtils/checker_macros.h
"
16
#include "
TRT_ConditionsServices/ITRT_DCS_ConditionsSvc.h
"
17
#include "
TRT_ConditionsServices/ITRT_ConditionsSvc.h
"
18
#include "GaudiKernel/ToolHandle.h"
19
#include "GaudiKernel/ServiceHandle.h"
20
#include "GaudiKernel/ICondSvc.h"
21
#include "
StoreGate/ReadCondHandleKey.h
"
22
#include "
TRT_ConditionsServices/ITRT_HWMappingSvc.h
"
23
#include "
StoreGate/ReadHandleKey.h
"
24
#include "
xAODEventInfo/EventInfo.h
"
25
26
class
StoreGateSvc
;
27
class
TRT_ID
;
28
class
Identifier
;
29
class
TH1D;
30
32
class
TRT_DCS_ConditionsSvc
:
public
extends<AthService,
33
ITRT_ConditionsSvc,
34
ITRT_DCS_ConditionsSvc>
35
{
36
37
public
:
38
39
TRT_DCS_ConditionsSvc
(
const
std::string& name, ISvcLocator* pSvcLocator );
40
virtual
~TRT_DCS_ConditionsSvc
();
41
42
virtual
StatusCode
initialize
();
43
virtual
StatusCode
finalize
();
44
46
InDet::TRT_DCS_StatusFlag
getFlag
(
const
Identifier
);
47
49
51
StatusCode
getValue
(
const
Identifier
,
const
InDet::TRT_DCS_DataType,
52
InDet::TRT_DCS_ValueType& );
53
55
57
StatusCode
getValue
(
const
std::string & fname,
const
std::string & chanName, InDet::TRT_DCS_ValueType& value);
58
60
62
StatusCode
getValue
(
const
std::string & fname,
const
int
chanNum, InDet::TRT_DCS_ValueType& value);
63
64
const
CondAttrListCollection
*
getCollection
(
const
std::string & collName);
65
66
void
monitorBarrel
();
67
void
monitorEndcapA
();
68
void
monitorEndcapC
();
69
70
72
73
75
79
InDet::TRT_CondFlag
condSummaryStatus
(
const
Identifier
& );
80
82
83
private
:
84
85
// jobOptions properties
86
bool
m_VeryVerbose
{};
87
std::string
m_Barrel_HV_COOLFolderName
;
88
std::string
m_EndcapA_HV_COOLFolderName
;
89
std::string
m_EndcapC_HV_COOLFolderName
;
90
float
m_HVWarnValLo
{};
91
float
m_HVWarnValHi
{};
92
ServiceHandle<StoreGateSvc>
m_evtStore
;
93
ServiceHandle<StoreGateSvc>
m_detStore
;
94
ServiceHandle<ITRT_HWMappingSvc>
m_mapSvc
;
95
SG::ReadHandleKey<xAOD::EventInfo>
m_EventInfoKey
{
this
,
"EventInfoKey"
,
"EventInfo"
,
"RHK for EventInfo"
};
96
// Conditions access
97
ServiceHandle<ICondSvc>
m_condSvc
;
98
SG::ReadCondHandleKey<CondAttrListCollection>
m_barrelReadKey
{
this
,
"BarrelKeyName"
,
"in"
,
"HV Barrel in-key"
};
99
SG::ReadCondHandleKey<CondAttrListCollection>
m_EAReadKey
{
this
,
"EAKeyName"
,
"in"
,
"HV EA in-key"
};
100
SG::ReadCondHandleKey<CondAttrListCollection>
m_ECReadKey
{
this
,
"ECKeyName"
,
"in"
,
"HV EC in-key"
};
101
mutable
std::vector<const CondAttrListCollection*> m_Barrel_HV_COOLCont
ATLAS_THREAD_SAFE
;
// Guarded by m_cacheMutex
102
mutable
std::vector<const CondAttrListCollection*> m_EndcapA_HV_COOLCont
ATLAS_THREAD_SAFE
;
// Guarded by m_cacheMutex
103
mutable
std::vector<const CondAttrListCollection*> m_EndcapC_HV_COOLCont
ATLAS_THREAD_SAFE
;
// Guarded by m_cacheMutex
104
mutable
std::mutex
m_cacheMutex
;
105
mutable
std::vector<EventContext::ContextEvt_t> m_evtBA
ATLAS_THREAD_SAFE
;
// Guarded by m_cacheMutex
106
mutable
std::vector<EventContext::ContextEvt_t> m_evtEA
ATLAS_THREAD_SAFE
;
// Guarded by m_cacheMutex
107
mutable
std::vector<EventContext::ContextEvt_t> m_evtEC
ATLAS_THREAD_SAFE
;
// Guarded by m_cacheMutex
108
109
int
m_IOVmaxLength
{};
110
bool
m_doIOVchecking
{};
111
bool
m_FallBackOnCOOLChanNames
{};
112
113
114
// Straw Helpers
115
const
TRT_ID
*
m_TRT_ID_Helper
;
116
118
119
int
m_numFlagRED
;
120
int
m_numFlagNOINFO
;
121
122
123
124
// Other private variables
125
int
m_currentTimestamp
;
126
127
// Monitoring histograms
128
bool
m_doMonitoring
;
129
TH1D*
m_h_Barrel_nRED
;
130
TH1D*
m_h_EndcapA_nRED
;
131
TH1D*
m_h_EndcapC_nRED
;
132
TH1D*
m_h_Barrel_nNOINFO
;
133
TH1D*
m_h_EndcapA_nNOINFO
;
134
TH1D*
m_h_EndcapC_nNOINFO
;
135
TH1D*
m_h_Barrel_HVvalAvg
;
// don't forget to divide by nEvts at end!
136
TH1D*
m_h_EndcapA_HVvalAvg
;
// don't forget to divide by nEvts at end!
137
TH1D*
m_h_EndcapC_HVvalAvg
;
// don't forget to divide by nEvts at end!
138
int
m_nBAEvts
;
139
int
m_nEAEvts
;
140
int
m_nECEvts
;
141
};
142
143
#endif
// TRT_DCS_CONDITIONSSVC_H
AthService.h
ITRT_ConditionsSvc.h
ITRT_DCS_ConditionsSvc.h
Interface to read DCS conditions data from COOL author Denver Whittington Denver.Whittington@cern....
ITRT_HWMappingSvc.h
ReadCondHandleKey.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
checker_macros.h
Define macros for attributes used to control the static checker.
CondAttrListCollection
This class is a collection of AttributeLists where each one is associated with a channel number.
Definition
CondAttrListCollection.h:51
SG::ReadCondHandleKey
Definition
ReadCondHandleKey.h:21
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
ServiceHandle
Definition
ClusterMakerTool.h:36
StoreGateSvc
The Athena Transient Store API.
Definition
StoreGateSvc.h:120
TRT_DCS_ConditionsSvc::m_EndcapC_HV_COOLFolderName
std::string m_EndcapC_HV_COOLFolderName
Definition
TRT_DCS_ConditionsSvc.h:89
TRT_DCS_ConditionsSvc::m_nECEvts
int m_nECEvts
Definition
TRT_DCS_ConditionsSvc.h:140
TRT_DCS_ConditionsSvc::m_h_EndcapA_nNOINFO
TH1D * m_h_EndcapA_nNOINFO
Definition
TRT_DCS_ConditionsSvc.h:133
TRT_DCS_ConditionsSvc::m_nBAEvts
int m_nBAEvts
Definition
TRT_DCS_ConditionsSvc.h:138
TRT_DCS_ConditionsSvc::m_VeryVerbose
bool m_VeryVerbose
Definition
TRT_DCS_ConditionsSvc.h:86
TRT_DCS_ConditionsSvc::m_condSvc
ServiceHandle< ICondSvc > m_condSvc
Definition
TRT_DCS_ConditionsSvc.h:97
TRT_DCS_ConditionsSvc::m_HVWarnValHi
float m_HVWarnValHi
Definition
TRT_DCS_ConditionsSvc.h:91
TRT_DCS_ConditionsSvc::m_Barrel_HV_COOLFolderName
std::string m_Barrel_HV_COOLFolderName
Definition
TRT_DCS_ConditionsSvc.h:87
TRT_DCS_ConditionsSvc::m_IOVmaxLength
int m_IOVmaxLength
Definition
TRT_DCS_ConditionsSvc.h:109
TRT_DCS_ConditionsSvc::TRT_DCS_ConditionsSvc
TRT_DCS_ConditionsSvc(const std::string &name, ISvcLocator *pSvcLocator)
Constructor //.
Definition
TRT_DCS_ConditionsSvc.cxx:26
TRT_DCS_ConditionsSvc::m_h_Barrel_nRED
TH1D * m_h_Barrel_nRED
Definition
TRT_DCS_ConditionsSvc.h:129
TRT_DCS_ConditionsSvc::m_barrelReadKey
SG::ReadCondHandleKey< CondAttrListCollection > m_barrelReadKey
Definition
TRT_DCS_ConditionsSvc.h:98
TRT_DCS_ConditionsSvc::m_mapSvc
ServiceHandle< ITRT_HWMappingSvc > m_mapSvc
Definition
TRT_DCS_ConditionsSvc.h:94
TRT_DCS_ConditionsSvc::m_currentTimestamp
int m_currentTimestamp
Definition
TRT_DCS_ConditionsSvc.h:125
TRT_DCS_ConditionsSvc::m_h_EndcapA_nRED
TH1D * m_h_EndcapA_nRED
Definition
TRT_DCS_ConditionsSvc.h:130
TRT_DCS_ConditionsSvc::m_h_EndcapC_HVvalAvg
TH1D * m_h_EndcapC_HVvalAvg
Definition
TRT_DCS_ConditionsSvc.h:137
TRT_DCS_ConditionsSvc::m_cacheMutex
std::mutex m_cacheMutex
Definition
TRT_DCS_ConditionsSvc.h:104
TRT_DCS_ConditionsSvc::m_evtStore
ServiceHandle< StoreGateSvc > m_evtStore
Definition
TRT_DCS_ConditionsSvc.h:92
TRT_DCS_ConditionsSvc::~TRT_DCS_ConditionsSvc
virtual ~TRT_DCS_ConditionsSvc()
Destructor //.
TRT_DCS_ConditionsSvc::m_FallBackOnCOOLChanNames
bool m_FallBackOnCOOLChanNames
Definition
TRT_DCS_ConditionsSvc.h:111
TRT_DCS_ConditionsSvc::getFlag
InDet::TRT_DCS_StatusFlag getFlag(const Identifier)
Returns the DCS conditions StatusFlag for a given identifier.
Definition
TRT_DCS_ConditionsSvc.cxx:129
TRT_DCS_ConditionsSvc::m_doIOVchecking
bool m_doIOVchecking
Definition
TRT_DCS_ConditionsSvc.h:110
TRT_DCS_ConditionsSvc::m_EventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_EventInfoKey
Definition
TRT_DCS_ConditionsSvc.h:95
TRT_DCS_ConditionsSvc::m_doMonitoring
bool m_doMonitoring
Definition
TRT_DCS_ConditionsSvc.h:128
TRT_DCS_ConditionsSvc::m_TRT_ID_Helper
const TRT_ID * m_TRT_ID_Helper
Definition
TRT_DCS_ConditionsSvc.h:115
TRT_DCS_ConditionsSvc::m_ECReadKey
SG::ReadCondHandleKey< CondAttrListCollection > m_ECReadKey
Definition
TRT_DCS_ConditionsSvc.h:100
TRT_DCS_ConditionsSvc::condSummaryStatus
InDet::TRT_CondFlag condSummaryStatus(const Identifier &)
Evaluation for TRT_ConditionsSummarySvc.
Definition
TRT_DCS_ConditionsSvc.cxx:319
TRT_DCS_ConditionsSvc::m_h_EndcapA_HVvalAvg
TH1D * m_h_EndcapA_HVvalAvg
Definition
TRT_DCS_ConditionsSvc.h:136
TRT_DCS_ConditionsSvc::m_h_EndcapC_nRED
TH1D * m_h_EndcapC_nRED
Definition
TRT_DCS_ConditionsSvc.h:131
TRT_DCS_ConditionsSvc::m_h_Barrel_nNOINFO
TH1D * m_h_Barrel_nNOINFO
Definition
TRT_DCS_ConditionsSvc.h:132
TRT_DCS_ConditionsSvc::m_detStore
ServiceHandle< StoreGateSvc > m_detStore
Definition
TRT_DCS_ConditionsSvc.h:93
TRT_DCS_ConditionsSvc::m_h_EndcapC_nNOINFO
TH1D * m_h_EndcapC_nNOINFO
Definition
TRT_DCS_ConditionsSvc.h:134
TRT_DCS_ConditionsSvc::monitorBarrel
void monitorBarrel()
Monitor barrel HV //.
Definition
TRT_DCS_ConditionsSvc.cxx:426
TRT_DCS_ConditionsSvc::finalize
virtual StatusCode finalize()
Finalize //.
Definition
TRT_DCS_ConditionsSvc.cxx:344
TRT_DCS_ConditionsSvc::m_HVWarnValLo
float m_HVWarnValLo
Definition
TRT_DCS_ConditionsSvc.h:90
TRT_DCS_ConditionsSvc::m_numFlagRED
int m_numFlagRED
Counters.
Definition
TRT_DCS_ConditionsSvc.h:119
TRT_DCS_ConditionsSvc::getCollection
const CondAttrListCollection * getCollection(const std::string &collName)
get pointer
Definition
TRT_DCS_ConditionsSvc.cxx:373
TRT_DCS_ConditionsSvc::m_EAReadKey
SG::ReadCondHandleKey< CondAttrListCollection > m_EAReadKey
Definition
TRT_DCS_ConditionsSvc.h:99
TRT_DCS_ConditionsSvc::monitorEndcapA
void monitorEndcapA()
Monitor EndcapA HV //.
Definition
TRT_DCS_ConditionsSvc.cxx:486
TRT_DCS_ConditionsSvc::m_EndcapA_HV_COOLFolderName
std::string m_EndcapA_HV_COOLFolderName
Definition
TRT_DCS_ConditionsSvc.h:88
TRT_DCS_ConditionsSvc::m_nEAEvts
int m_nEAEvts
Definition
TRT_DCS_ConditionsSvc.h:139
TRT_DCS_ConditionsSvc::getValue
StatusCode getValue(const Identifier, const InDet::TRT_DCS_DataType, InDet::TRT_DCS_ValueType &)
Returns the value for a given identifier and data type.
Definition
TRT_DCS_ConditionsSvc.cxx:153
TRT_DCS_ConditionsSvc::initialize
virtual StatusCode initialize()
Initialize //.
Definition
TRT_DCS_ConditionsSvc.cxx:89
TRT_DCS_ConditionsSvc::monitorEndcapC
void monitorEndcapC()
Monitor EndcapC HV //.
Definition
TRT_DCS_ConditionsSvc.cxx:542
TRT_DCS_ConditionsSvc::m_h_Barrel_HVvalAvg
TH1D * m_h_Barrel_HVvalAvg
Definition
TRT_DCS_ConditionsSvc.h:135
TRT_DCS_ConditionsSvc::ATLAS_THREAD_SAFE
std::vector< const CondAttrListCollection * > m_Barrel_HV_COOLCont ATLAS_THREAD_SAFE
Definition
TRT_DCS_ConditionsSvc.h:101
TRT_DCS_ConditionsSvc::m_numFlagNOINFO
int m_numFlagNOINFO
Definition
TRT_DCS_ConditionsSvc.h:120
TRT_ID
This is an Identifier helper class for the TRT subdetector.
Definition
TRT_ID.h:84
Identifier
Definition
IdentifierFieldParser.cxx:14
EventInfo.h
Generated on
for ATLAS Offline Software by
1.17.0