ATLAS Offline Software
Loading...
Searching...
No Matches
LArTTL1Calib Class Reference

This algorithm is meant to be run in standalone only for TTL1 calibration purposes. More...

#include <LArTTL1Calib.h>

Inheritance diagram for LArTTL1Calib:
Collaboration diagram for LArTTL1Calib:

Public Member Functions

 LArTTL1Calib (const std::string &name, ISvcLocator *pSvcLocator)
 constructor
 ~LArTTL1Calib ()
 destructor
virtual StatusCode initialize ()
virtual StatusCode execute ()
virtual StatusCode finalize ()
virtual StatusCode sysInitialize () override
 Override sysInitialize.
virtual const DataObjIDColl & extraOutputDeps () const override
 Return the list of extra output dependencies.
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysStart () override
 Handle START transition.
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles.
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles.
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
void updateVHKA (Gaudi::Details::PropertyBase &)
MsgStream & msg () const
bool msgLvl (const MSG::Level lvl) const

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed.

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

void decodeInverseTTChannel (int region, int layer, int eta, int &bec, int &emhf, int &Ieta) const
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

float m_thresholdGeVTTs
int m_maxNtt
NTuple::Tuple * m_pnt
NTuple::Item< long > m_ntotem
NTuple::Item< float > m_etotem
NTuple::Item< long > m_n3x3em
NTuple::Item< float > m_e3x3em
NTuple::Item< float > m_emostem
NTuple::Item< long > m_bec_mostEem
NTuple::Item< long > m_emfcal_mostEem
NTuple::Item< long > m_Ieta_mostEem
NTuple::Item< long > m_Lphi_mostEem
NTuple::Item< long > m_nttem
NTuple::Array< float > m_ettem
NTuple::Array< long > m_becttem
NTuple::Array< long > m_emfcalttem
NTuple::Array< long > m_Ietattem
NTuple::Array< long > m_Lphittem
NTuple::Item< long > m_ntothad
NTuple::Item< float > m_etothad
NTuple::Item< long > m_n3x3had
NTuple::Item< float > m_e3x3had
NTuple::Item< float > m_emosthad
NTuple::Item< long > m_hecfcal_mostEhad
NTuple::Item< long > m_Ieta_mostEhad
NTuple::Item< long > m_Lphi_mostEhad
NTuple::Item< long > m_ntthad
NTuple::Array< float > m_etthad
NTuple::Array< long > m_hecfcaltthad
NTuple::Array< long > m_Ietatthad
NTuple::Array< long > m_Lphitthad
const CaloLVL1_IDm_lvl1Helper
DataObjIDColl m_extendedExtraObjects
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default)
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool m_varHandleArraysDeclared

Detailed Description

This algorithm is meant to be run in standalone only for TTL1 calibration purposes.

Definition at line 28 of file LArTTL1Calib.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< Algorithm > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ LArTTL1Calib()

LArTTL1Calib::LArTTL1Calib ( const std::string & name,
ISvcLocator * pSvcLocator )

constructor

Definition at line 35 of file LArTTL1Calib.cxx.

36 : AthAlgorithm(name, pSvcLocator)
37// + -------------------------------------------------------------------- +
38// + Author ........: F. Ledroit +
39// + Creation date .: 20/04/2004 +
40// + Subject: TTL1 Calib constructor +
41// + -------------------------------------------------------------------- +
42{
43 //
44 // ........ default values of private data
45 //
46 // m_thresholdGeVTTs = 0.1; // pb here: threshold depends on whether
47 // calib already applied or not... m_thresholdGeVTTs = 0.001; // and
48 // whether want to study calib or noise
50 m_maxNtt = 8000;
51 // m_maxNtt = 500;
52
53 m_pnt = nullptr;
54
55 m_lvl1Helper = nullptr;
56
57 //
58 return;
59}
AthAlgorithm()
Default constructor:
NTuple::Tuple * m_pnt
const CaloLVL1_ID * m_lvl1Helper
float m_thresholdGeVTTs

◆ ~LArTTL1Calib()

LArTTL1Calib::~LArTTL1Calib ( )

destructor

TTL1 Calib destructor

Definition at line 61 of file LArTTL1Calib.cxx.

61 {
63
64 return;
65}

Member Function Documentation

◆ declareGaudiProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T, V, H > & hndl,
const SG::VarHandleKeyType &  )
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158 {
160 hndl.value(),
161 hndl.documentation());
162
163 }
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)

◆ declareProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( Gaudi::Property< T, V, H > & t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145 {
146 typedef typename SG::HandleClassifier<T>::type htype;
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>

◆ decodeInverseTTChannel()

void LArTTL1Calib::decodeInverseTTChannel ( int region,
int layer,
int eta,
int & bec,
int & emhf,
int & Ieta ) const
private

Definition at line 320 of file LArTTL1Calib.cxx.

322 {
323 // fix me !!! this method is duplicated from LArCablingService
324 if (region == 0) {
325 if (eta <= 14) {
326 bec = 0; // EM barrel
327 emhf = 0;
328 Ieta = eta + 1;
329 } else {
330 bec = 1; // EMEC or HEC
331 emhf = layer;
332 Ieta = eta - 13;
333 }
334 } else if (region == 1 || region == 2) {
335 bec = 1;
336 emhf = layer;
337 if (region == 1) {
338 Ieta = eta + 12;
339 } else {
340 Ieta = 15;
341 }
342 } else if (region == 3) { // FCAL only
343 bec = 1;
344 emhf = 2 + layer;
345 Ieta = eta + 1;
346 }
347}
Scalar eta() const
pseudorapidity method
@ layer
Definition HitInfo.h:79

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< Algorithm > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

◆ evtStore()

ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

◆ execute()

StatusCode LArTTL1Calib::execute ( )
virtual

Definition at line 145 of file LArTTL1Calib.cxx.

145 {
146 // +======================================================================+
147 // + +
148 // + Author: F. Ledroit +
149 // + Creation date: 2003/01/13 +
150 // + +
151 // +======================================================================+
152 //
153 // ......... declarations
154 //
155 ATH_MSG_DEBUG("Begining of execution");
156
158 Identifier ttOffId;
159
160 std::vector<std::string> containerVec; // FIX ME USING PROPERTIES !!!
161 containerVec.push_back("LArTTL1EM");
162 containerVec.push_back("LArTTL1HAD");
163
164 //
165 // ............ loop over the wanted ttl1 containers (1 em, 1 had)
166 //
167
168 for (unsigned int iTTL1Container = 0; iTTL1Container < containerVec.size();
169 iTTL1Container++) {
170 //
171 // ..... Get the pointer to the TTL1 Container from StoreGate
172 //
173 ATH_MSG_DEBUG(" asking for: " << containerVec[iTTL1Container]);
174
175 const LArTTL1Container* ttl1_container;
176 ATH_CHECK(
177 evtStore()->retrieve(ttl1_container, containerVec[iTTL1Container]));
178
179 //
180 ATH_MSG_DEBUG("number of ttl1s: " << ttl1_container->size());
181
182 int samp = iTTL1Container;
183 int indexem = 0;
184 int indexhad = 0;
185
186 float e_mostE = 0.;
187 int bec_mostE = 99;
188 int hecfcal_mostE = 99;
189 int Ieta_mostE = 99;
190 int Lphi_mostE = 99;
191 int phiMax_mostE = -99;
192
193 //
194 // ....... loop over ttl1s and get informations
195 //
196
197 for (const LArTTL1* ttl1 : *ttl1_container) {
198 ttOffId = ttl1->ttOfflineID();
199 std::vector<float> sampleV = ttl1->samples();
200 float e = sampleV[3] * 1e-3; // go to GeV
201 int reg = m_lvl1Helper->region(ttOffId);
202 int eta = m_lvl1Helper->eta(ttOffId);
203 int bec = 99;
204 int hecfcal = 99;
205 int Ieta = 99;
206 decodeInverseTTChannel(reg, samp, eta, bec, hecfcal, Ieta);
207 int Lphi = m_lvl1Helper->phi(ttOffId) + 1;
208 int phiMax = m_lvl1Helper->phi_max(ttOffId);
209 if (e > e_mostE) {
210 e_mostE = e;
211 bec_mostE = bec;
212 hecfcal_mostE = hecfcal;
213 Ieta_mostE = Ieta;
214 Lphi_mostE = Lphi;
215 phiMax_mostE = phiMax;
216 }
217
218 if (samp == 0) {
219 // EM towers
220 m_etotem += e;
221 if (indexem < m_maxNtt) {
222 if (e > m_thresholdGeVTTs) {
223 m_ettem[indexem] = e;
224 m_becttem[indexem] = bec;
225 m_emfcalttem[indexem] = hecfcal;
226 m_Ietattem[indexem] = Ieta;
227 m_Lphittem[indexem] = Lphi;
228 indexem++;
229 }
230 } else {
231 if (m_maxNtt == indexem) {
232 ATH_MSG_WARNING("Too many em TT. Save only " << m_maxNtt);
233 break;
234 }
235 }
236 } else {
237 // HAD towers
238 m_etothad += e;
239 if (indexhad < m_maxNtt) {
240 if (e > m_thresholdGeVTTs) {
241 m_etthad[indexhad] = e;
242 m_hecfcaltthad[indexhad] = hecfcal;
243 m_Ietatthad[indexhad] = Ieta;
244 m_Lphitthad[indexhad] = Lphi;
245 indexhad++;
246 }
247 } else {
248 if (m_maxNtt == indexhad) {
249 ATH_MSG_WARNING("Too many had TT. Save only " << m_maxNtt);
250 break;
251 }
252 }
253 }
254
255 } // .... end of loop over ittl1s
256 ATH_MSG_DEBUG("number of em/had ttl1s: " << indexem << " / " << indexhad);
257
258 int etaLim = 13; // barrel-ec transition
259 if (hecfcal_mostE > 0) {
260 etaLim = 14;
261 }
262 if (samp == 0) {
263 // em:
264 m_ntotem = ttl1_container->size();
265 m_nttem = indexem;
266 for (int i = 0; i < indexem; ++i) {
267 int deltaEta = std::abs(Ieta_mostE - m_Ietattem[i]);
268 int deltaPhi = std::abs(Lphi_mostE - m_Lphittem[i]); // not quite 3x3
269 if ((deltaEta <= 1 ||
270 deltaEta >= etaLim) // because phi granularity changes
271 && (deltaPhi <= 1 ||
272 deltaPhi == phiMax_mostE)) { // at eta=2.5 and 3.2
273 m_n3x3em += 1;
274 m_e3x3em += m_ettem[i];
275 }
276 }
277 m_emostem = e_mostE;
278 m_bec_mostEem = bec_mostE;
279 m_emfcal_mostEem = hecfcal_mostE;
280 m_Ieta_mostEem = Ieta_mostE;
281 m_Lphi_mostEem = Lphi_mostE;
282 } else {
283 // had:
284 m_ntothad = ttl1_container->size();
285 m_ntthad = indexhad;
286 for (int i = 0; i < indexhad; ++i) {
287 int deltaEta = std::abs(Ieta_mostE - m_Ietatthad[i]);
288 int deltaPhi = std::abs(Lphi_mostE - m_Lphitthad[i]);
289 if ((deltaEta <= 1 || deltaEta >= etaLim) &&
290 (deltaPhi <= 1 || deltaPhi == phiMax_mostE)) {
291 m_n3x3had += 1;
292 m_e3x3had += m_etthad[i];
293 }
294 }
295 m_emosthad = e_mostE;
296 m_hecfcal_mostEhad = hecfcal_mostE;
297 m_Ieta_mostEhad = Ieta_mostE;
298 m_Lphi_mostEhad = Lphi_mostE;
299 }
300
301 } // .... end of loop over containers
302 ATH_MSG_DEBUG("end of loop over containers, write record");
303
304 ATH_CHECK(ntupleSvc()->writeRecord(m_pnt));
305 return StatusCode::SUCCESS;
306}
Scalar deltaPhi(const MatrixBase< Derived > &vec) const
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
#define ATH_MSG_DEBUG(x)
INTupleSvc * ntupleSvc()
DataModel_detail::const_iterator< DataVector > const_iterator
Definition DataVector.h:838
size_type size() const noexcept
Returns the number of elements in the collection.
NTuple::Item< long > m_Lphi_mostEhad
NTuple::Item< float > m_e3x3em
NTuple::Item< long > m_Ieta_mostEem
NTuple::Item< long > m_ntothad
NTuple::Array< long > m_becttem
NTuple::Item< float > m_emosthad
NTuple::Item< long > m_Lphi_mostEem
NTuple::Item< long > m_emfcal_mostEem
NTuple::Item< long > m_hecfcal_mostEhad
NTuple::Item< long > m_n3x3had
NTuple::Array< float > m_ettem
NTuple::Item< float > m_etothad
NTuple::Array< long > m_Lphitthad
NTuple::Array< long > m_Ietattem
NTuple::Item< long > m_bec_mostEem
NTuple::Array< long > m_Lphittem
NTuple::Array< long > m_hecfcaltthad
NTuple::Item< long > m_n3x3em
NTuple::Array< long > m_emfcalttem
NTuple::Item< float > m_etotem
NTuple::Item< long > m_ntthad
NTuple::Array< long > m_Ietatthad
NTuple::Item< long > m_nttem
NTuple::Item< float > m_e3x3had
NTuple::Item< float > m_emostem
NTuple::Item< long > m_ntotem
NTuple::Array< float > m_etthad
NTuple::Item< long > m_Ieta_mostEhad
void decodeInverseTTChannel(int region, int layer, int eta, int &bec, int &emhf, int &Ieta) const
double deltaEta(const I4Momentum &p1, const I4Momentum &p2)
Computes efficiently .
Definition P4Helpers.h:66
retrieve(aClass, aKey=None)
Definition PyKernel.py:110

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase & ExtraDeps)
protectedinherited

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

◆ extraOutputDeps()

const DataObjIDColl & AthAlgorithm::extraOutputDeps ( ) const
overridevirtualinherited

Return the list of extra output dependencies.

This list is extended to include symlinks implied by inheritance relations.

Definition at line 50 of file AthAlgorithm.cxx.

51{
52 // If we didn't find any symlinks to add, just return the collection
53 // from the base class. Otherwise, return the extended collection.
54 if (!m_extendedExtraObjects.empty()) {
56 }
57 return Algorithm::extraOutputDeps();
58}
DataObjIDColl m_extendedExtraObjects

◆ finalize()

StatusCode LArTTL1Calib::finalize ( )
virtual

Definition at line 308 of file LArTTL1Calib.cxx.

308 {
309 // +======================================================================+
310 // + +
311 // + Author: F. Ledroit +
312 // + Creation date: 2003/01/13 +
313 // + +
314 // +======================================================================+
315 //
316 ATH_MSG_DEBUG(" LArTTL1Calib finalize completed successfully");
317 return StatusCode::SUCCESS;
318}

◆ initialize()

StatusCode LArTTL1Calib::initialize ( )
virtual

Definition at line 67 of file LArTTL1Calib.cxx.

67 {
68 // +======================================================================+
69 // + +
70 // + Author ........: F. Ledroit +
71 // + Creation date .: 09/01/2003 +
72 // + +
73 // +======================================================================+
74 //
75 // ......... declaration
76 //
77 ATH_MSG_DEBUG("in initialize()");
78
79 NTuple::Directory* dir = nullptr;
80 NTupleFilePtr file1(ntupleSvc(), "/NTUPLES/FILE1");
81
82 if (file1 != 0) {
83 if (!(dir = ntupleSvc()->createDirectory("/NTUPLES/FILE1/DIR"))) {
84 ATH_MSG_ERROR("Cannot create directory /NTUPLES/FILE1/DIR");
85 }
86 } else {
87 ATH_MSG_ERROR("Cannot access file /NTUPLES/FILE1");
88 return StatusCode::FAILURE;
89 }
90
91 ATH_MSG_DEBUG("created directory /NTUPLES/FILE1/DIR");
92
93 NTuplePtr pnt(ntupleSvc(), "/NTUPLES/FILE1/DIR/10");
94 if (!pnt) {
95 pnt = ntupleSvc()->book(dir, 10, CLID_ColumnWiseTuple, "LArLvl1TT");
96
97 if (pnt) {
98 ATH_MSG_DEBUG("booked ntuple LArLvl1TT");
99 m_pnt = pnt;
100
101 ATH_CHECK(pnt->addItem("nTotEm", m_ntotem));
102 ATH_CHECK(pnt->addItem("EtTotEm", m_etotem));
103 ATH_CHECK(pnt->addItem("n3x3Em", m_n3x3em));
104 ATH_CHECK(pnt->addItem("E3x3Em", m_e3x3em));
105 ATH_CHECK(pnt->addItem("EmostEm", m_emostem));
106 ATH_CHECK(pnt->addItem("BarrelECEm", m_bec_mostEem));
107 ATH_CHECK(pnt->addItem("EmFcalEm", m_emfcal_mostEem));
108 ATH_CHECK(pnt->addItem("IetaEm", m_Ieta_mostEem));
109 ATH_CHECK(pnt->addItem("LphiEm", m_Lphi_mostEem));
110 ATH_CHECK(pnt->addItem("nTTaboveThrEm", m_nttem, 0, m_maxNtt));
111 ATH_CHECK(pnt->addItem("EtTTEm", m_nttem, m_ettem));
112 ATH_CHECK(pnt->addItem("BECTTEm", m_nttem, m_becttem));
113 ATH_CHECK(pnt->addItem("EmFcalTTEm", m_nttem, m_emfcalttem));
114 ATH_CHECK(pnt->addItem("IetaTTEm", m_nttem, m_Ietattem));
115 ATH_CHECK(pnt->addItem("LphiTTEm", m_nttem, m_Lphittem));
116
117 ATH_CHECK(pnt->addItem("nTotHad", m_ntothad));
118 ATH_CHECK(pnt->addItem("EtTotHad", m_etothad));
119 ATH_CHECK(pnt->addItem("n3x3Had", m_n3x3had));
120 ATH_CHECK(pnt->addItem("E3x3Had", m_e3x3had));
121 ATH_CHECK(pnt->addItem("EmostHad", m_emosthad));
122 ATH_CHECK(pnt->addItem("HecFcalHad", m_hecfcal_mostEhad));
123 ATH_CHECK(pnt->addItem("IetaHad", m_Ieta_mostEhad));
124 ATH_CHECK(pnt->addItem("LphiHad", m_Lphi_mostEhad));
125 ATH_CHECK(pnt->addItem("nTTaboveThrHad", m_ntthad, 0, m_maxNtt));
126 ATH_CHECK(pnt->addItem("EtTTHad", m_ntthad, m_etthad));
127 ATH_CHECK(pnt->addItem("HecFcalTTHad", m_ntthad, m_hecfcaltthad));
128 ATH_CHECK(pnt->addItem("IetaTTHad", m_ntthad, m_Ietatthad));
129 ATH_CHECK(pnt->addItem("LphiTTHad", m_ntthad, m_Lphitthad));
130
131 } else {
132 ATH_MSG_ERROR("could not book Ntuple");
133 }
134 } else {
135 ATH_MSG_ERROR("Ntuple is already booked");
136 }
137 //
138
140
141 ATH_MSG_DEBUG("Initialization completed successfully");
142 return StatusCode::SUCCESS;
143}
#define ATH_MSG_ERROR(x)
const ServiceHandle< StoreGateSvc > & detStore() const

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< Algorithm > >::inputHandles ( ) const
overridevirtualinherited

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.

◆ msg()

MsgStream & AthCommonMsg< Algorithm >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24 {
25 return this->msgStream();
26 }

◆ msgLvl()

bool AthCommonMsg< Algorithm >::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30 {
31 return this->msgLevel(lvl);
32 }

◆ outputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles ( ) const
overridevirtualinherited

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()

std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > AthCommonDataStore< AthCommonMsg< Algorithm > >::renounce ( T & h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381 {
382 h.renounce();
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ sysInitialize()

StatusCode AthAlgorithm::sysInitialize ( )
overridevirtualinherited

Override sysInitialize.

Override sysInitialize from the base class.

Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc

Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc

Reimplemented from AthCommonDataStore< AthCommonMsg< Algorithm > >.

Reimplemented in AthAnalysisAlgorithm, AthFilterAlgorithm, AthHistogramAlgorithm, and PyAthena::Alg.

Definition at line 66 of file AthAlgorithm.cxx.

66 {
68
69 if (sc.isFailure()) {
70 return sc;
71 }
72 ServiceHandle<ICondSvc> cs("CondSvc",name());
73 for (auto h : outputHandles()) {
74 if (h->isCondition() && h->mode() == Gaudi::DataHandle::Writer) {
75 // do this inside the loop so we don't create the CondSvc until needed
76 if ( cs.retrieve().isFailure() ) {
77 ATH_MSG_WARNING("no CondSvc found: won't autoreg WriteCondHandles");
78 return StatusCode::SUCCESS;
79 }
80 if (cs->regHandle(this,*h).isFailure()) {
81 sc = StatusCode::FAILURE;
82 ATH_MSG_ERROR("unable to register WriteCondHandle " << h->fullKey()
83 << " with CondSvc");
84 }
85 }
86 }
87 return sc;
88}
static Double_t sc
virtual StatusCode sysInitialize() override
Override sysInitialize.
AthCommonDataStore(const std::string &name, T... args)
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
::StatusCode StatusCode
StatusCode definition for legacy code.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< Algorithm > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::updateVHKA ( Gaudi::Details::PropertyBase & )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308 {
309 // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310 // << " size: " << m_vhka.size() << endmsg;
311 for (auto &a : m_vhka) {
313 for (auto k : keys) {
314 k->setOwner(this);
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka

Member Data Documentation

◆ m_bec_mostEem

NTuple::Item<long> LArTTL1Calib::m_bec_mostEem
private

Definition at line 71 of file LArTTL1Calib.h.

◆ m_becttem

NTuple::Array<long> LArTTL1Calib::m_becttem
private

Definition at line 77 of file LArTTL1Calib.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_e3x3em

NTuple::Item<float> LArTTL1Calib::m_e3x3em
private

Definition at line 69 of file LArTTL1Calib.h.

◆ m_e3x3had

NTuple::Item<float> LArTTL1Calib::m_e3x3had
private

Definition at line 85 of file LArTTL1Calib.h.

◆ m_emfcal_mostEem

NTuple::Item<long> LArTTL1Calib::m_emfcal_mostEem
private

Definition at line 72 of file LArTTL1Calib.h.

◆ m_emfcalttem

NTuple::Array<long> LArTTL1Calib::m_emfcalttem
private

Definition at line 78 of file LArTTL1Calib.h.

◆ m_emostem

NTuple::Item<float> LArTTL1Calib::m_emostem
private

Definition at line 70 of file LArTTL1Calib.h.

◆ m_emosthad

NTuple::Item<float> LArTTL1Calib::m_emosthad
private

Definition at line 86 of file LArTTL1Calib.h.

◆ m_etotem

NTuple::Item<float> LArTTL1Calib::m_etotem
private

Definition at line 67 of file LArTTL1Calib.h.

◆ m_etothad

NTuple::Item<float> LArTTL1Calib::m_etothad
private

Definition at line 83 of file LArTTL1Calib.h.

◆ m_ettem

NTuple::Array<float> LArTTL1Calib::m_ettem
private

Definition at line 76 of file LArTTL1Calib.h.

◆ m_etthad

NTuple::Array<float> LArTTL1Calib::m_etthad
private

Definition at line 91 of file LArTTL1Calib.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< Algorithm > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_extendedExtraObjects

DataObjIDColl AthAlgorithm::m_extendedExtraObjects
privateinherited

Definition at line 79 of file AthAlgorithm.h.

◆ m_hecfcal_mostEhad

NTuple::Item<long> LArTTL1Calib::m_hecfcal_mostEhad
private

Definition at line 87 of file LArTTL1Calib.h.

◆ m_hecfcaltthad

NTuple::Array<long> LArTTL1Calib::m_hecfcaltthad
private

Definition at line 92 of file LArTTL1Calib.h.

◆ m_Ieta_mostEem

NTuple::Item<long> LArTTL1Calib::m_Ieta_mostEem
private

Definition at line 73 of file LArTTL1Calib.h.

◆ m_Ieta_mostEhad

NTuple::Item<long> LArTTL1Calib::m_Ieta_mostEhad
private

Definition at line 88 of file LArTTL1Calib.h.

◆ m_Ietattem

NTuple::Array<long> LArTTL1Calib::m_Ietattem
private

Definition at line 79 of file LArTTL1Calib.h.

◆ m_Ietatthad

NTuple::Array<long> LArTTL1Calib::m_Ietatthad
private

Definition at line 93 of file LArTTL1Calib.h.

◆ m_Lphi_mostEem

NTuple::Item<long> LArTTL1Calib::m_Lphi_mostEem
private

Definition at line 74 of file LArTTL1Calib.h.

◆ m_Lphi_mostEhad

NTuple::Item<long> LArTTL1Calib::m_Lphi_mostEhad
private

Definition at line 89 of file LArTTL1Calib.h.

◆ m_Lphittem

NTuple::Array<long> LArTTL1Calib::m_Lphittem
private

Definition at line 80 of file LArTTL1Calib.h.

◆ m_Lphitthad

NTuple::Array<long> LArTTL1Calib::m_Lphitthad
private

Definition at line 94 of file LArTTL1Calib.h.

◆ m_lvl1Helper

const CaloLVL1_ID* LArTTL1Calib::m_lvl1Helper
private

Definition at line 96 of file LArTTL1Calib.h.

◆ m_maxNtt

int LArTTL1Calib::m_maxNtt
private

Definition at line 59 of file LArTTL1Calib.h.

◆ m_n3x3em

NTuple::Item<long> LArTTL1Calib::m_n3x3em
private

Definition at line 68 of file LArTTL1Calib.h.

◆ m_n3x3had

NTuple::Item<long> LArTTL1Calib::m_n3x3had
private

Definition at line 84 of file LArTTL1Calib.h.

◆ m_ntotem

NTuple::Item<long> LArTTL1Calib::m_ntotem
private

Definition at line 66 of file LArTTL1Calib.h.

◆ m_ntothad

NTuple::Item<long> LArTTL1Calib::m_ntothad
private

Definition at line 82 of file LArTTL1Calib.h.

◆ m_nttem

NTuple::Item<long> LArTTL1Calib::m_nttem
private

Definition at line 75 of file LArTTL1Calib.h.

◆ m_ntthad

NTuple::Item<long> LArTTL1Calib::m_ntthad
private

Definition at line 90 of file LArTTL1Calib.h.

◆ m_pnt

NTuple::Tuple* LArTTL1Calib::m_pnt
private

Definition at line 62 of file LArTTL1Calib.h.

◆ m_thresholdGeVTTs

float LArTTL1Calib::m_thresholdGeVTTs
private

Definition at line 58 of file LArTTL1Calib.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< Algorithm > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< Algorithm > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files: