ATLAS Offline Software
Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
TBTrackInfoFromTag Class Reference

#include <TBTrackInfoFromTag.h>

Inheritance diagram for TBTrackInfoFromTag:
Collaboration diagram for TBTrackInfoFromTag:

Public Member Functions

 TBTrackInfoFromTag (const std::string &name, ISvcLocator *pSvcLocator)
 
virtual ~TBTrackInfoFromTag ()
 
virtual StatusCode initialize () override
 
virtual StatusCode execute () override
 
virtual StatusCode finalize () override
 
virtual StatusCode sysInitialize () override
 Override sysInitialize. More...
 
virtual const DataObjIDColl & extraOutputDeps () const override
 Return the list of extra output dependencies. More...
 
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 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
 

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution More...
 
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. More...
 

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t
 

Private Member Functions

Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &)
 specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &)
 specialization for handling Gaudi::Property<SG::VarHandleBase> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &)
 specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
 

Private Attributes

std::string m_SGrecordkey
 
std::string m_SGkey1
 
std::string m_inputRootFileName
 
unsigned int m_max_nPixelHits
 
unsigned int m_max_nSctHits
 
unsigned int m_max_nTrtHitsTRT
 
unsigned int m_max1_Trt_HLTRT
 
unsigned int m_max2_Trt_HLTRT
 
unsigned int m_max_btdc1
 
unsigned int m_max_GainC
 
unsigned int m_max_MuBack
 
unsigned int m_max_TfitC
 
unsigned int m_max_EfitC
 
unsigned int m_max_Chi2C
 
unsigned int m_max1_SampleC
 
unsigned int m_max2_SampleC
 
TFile * rootFile1
 
TFile * rootFile2
 
TileRec_h1000tileRecTree
 
TB_treetbTree
 
DataObjIDColl m_extendedExtraObjects
 
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
 

Detailed Description

Definition at line 49 of file TBTrackInfoFromTag.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

◆ TBTrackInfoFromTag()

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

Definition at line 29 of file TBTrackInfoFromTag.cxx.

29  : AthAlgorithm(name,pSvcLocator)
30  {
31  // job options
32  declareProperty("SGrecordkey", m_SGrecordkey="TBTrackReducedInfo");
33  declareProperty("EventInfoSGKey", m_SGkey1="ByteStreamEventInfo");
34  declareProperty("InputRootFile", m_inputRootFileName="./cbnt_RecExTB_Combined.root");
35 
36  rootFile1 = 0;
37  rootFile2 = 0;
38  tbTree = 0;
39  tileRecTree = 0;
40 
41  m_max_nPixelHits = 0;
42  m_max_nSctHits = 0;
44  m_max1_Trt_HLTRT = 0;
45  m_max2_Trt_HLTRT = 0;
46  m_max_btdc1 = 0;
47  m_max_GainC = 0;
48  m_max_MuBack = 0;
49  m_max_TfitC = 0;
50  m_max_EfitC = 0;
51  m_max_Chi2C = 0;
52  m_max1_SampleC = 0;
53  m_max2_SampleC = 0;
54  }

◆ ~TBTrackInfoFromTag()

TBTrackInfoFromTag::~TBTrackInfoFromTag ( )
virtual

Definition at line 56 of file TBTrackInfoFromTag.cxx.

57 { }

Member Function Documentation

◆ declareGaudiProperty() [1/4]

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

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

Definition at line 170 of file AthCommonDataStore.h.

172  {
173  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
174  hndl.value(),
175  hndl.documentation());
176 
177  }

◆ declareGaudiProperty() [2/4]

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

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

Definition at line 156 of file AthCommonDataStore.h.

158  {
159  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
160  hndl.value(),
161  hndl.documentation());
162 
163  }

◆ declareGaudiProperty() [3/4]

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

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

Definition at line 184 of file AthCommonDataStore.h.

186  {
187  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
188  hndl.value(),
189  hndl.documentation());
190  }

◆ declareGaudiProperty() [4/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  t,
const SG::NotHandleType  
)
inlineprivateinherited

specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>

Definition at line 199 of file AthCommonDataStore.h.

200  {
201  return PBASE::declareProperty(t);
202  }

◆ declareProperty() [1/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleBase hndl,
const std::string &  doc,
const SG::VarHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation 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.

249  {
250  this->declare(hndl.vhKey());
251  hndl.vhKey().setOwner(this);
252 
253  return PBASE::declareProperty(name,hndl,doc);
254  }

◆ declareProperty() [2/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleKey hndl,
const std::string &  doc,
const SG::VarHandleKeyType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation 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.

225  {
226  this->declare(hndl);
227  hndl.setOwner(this);
228 
229  return PBASE::declareProperty(name,hndl,doc);
230  }

◆ declareProperty() [3/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleKeyArray hndArr,
const std::string &  doc,
const SG::VarHandleKeyArrayType  
)
inlineinherited

Definition at line 259 of file AthCommonDataStore.h.

263  {
264 
265  // std::ostringstream ost;
266  // ost << Algorithm::name() << " VHKA declareProp: " << name
267  // << " size: " << hndArr.keys().size()
268  // << " mode: " << hndArr.mode()
269  // << " vhka size: " << m_vhka.size()
270  // << "\n";
271  // debug() << ost.str() << endmsg;
272 
273  hndArr.setOwner(this);
274  m_vhka.push_back(&hndArr);
275 
276  Gaudi::Details::PropertyBase* p = PBASE::declareProperty(name, hndArr, doc);
277  if (p != 0) {
278  p->declareUpdateHandler(&AthCommonDataStore<PBASE>::updateVHKA, this);
279  } else {
280  ATH_MSG_ERROR("unable to call declareProperty on VarHandleKeyArray "
281  << name);
282  }
283 
284  return p;
285 
286  }

◆ declareProperty() [4/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc,
const SG::NotHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation 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.

337  {
338  return PBASE::declareProperty(name, property, doc);
339  }

◆ declareProperty() [5/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc = "none" 
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation 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.

355  {
356  typedef typename SG::HandleClassifier<T>::type htype;
357  return declareProperty (name, property, doc, htype());
358  }

◆ declareProperty() [6/6]

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

Definition at line 145 of file AthCommonDataStore.h.

145  {
146  typedef typename SG::HandleClassifier<T>::type htype;
148  }

◆ 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.

95 { return m_detStore; }

◆ evtStore() [1/2]

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.

85 { return m_evtStore; }

◆ evtStore() [2/2]

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

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

Definition at line 90 of file AthCommonDataStore.h.

90 { return m_evtStore; }

◆ execute()

StatusCode TBTrackInfoFromTag::execute ( )
overridevirtual

Definition at line 103 of file TBTrackInfoFromTag.cxx.

104 {
105  ATH_MSG_DEBUG("Executing TBTrackInfoFromTag...");
106  const EventContext& ctx = Gaudi::Hive::currentContext();
107 
108  int runNumber = ctx.eventID().run_number();
109  uint64_t evtNumber = ctx.eventID().event_number();
110 
111  ATH_MSG_DEBUG("Run/Event numbers:\t " << runNumber << " / " << evtNumber);
112 
113 /*
114  int returnFlag = 0;
115  int evtFindFlag1, evtFindFlag2;
116  evtFindFlag1 = tileRecTree->Loop(evtNumber);
117  evtFindFlag2 = tbTree->Loop(evtNumber);
118 
119  if(evtFindFlag1 < 0) {
120  ATH_MSG_DEBUG("There is no event number " << evtNumber << " in tileRecTree");
121  returnFlag = 1;
122  }
123  if(evtFindFlag2 < 0) {
124  ATH_MSG_DEBUG("There is no event number " << evtNumber << " in tbTree");
125  returnFlag = 1;
126  }
127 
128  if(returnFlag == 1)
129  return sc;
130 
131  tileRecTree->fChain->GetEntry(evtFindFlag1);
132  tbTree->fChain->GetEntry(evtFindFlag1);
133 
134  ATH_MSG_DEBUG("EventNumber in EventInfo = " << evtNumber);
135  ATH_MSG_DEBUG("EventNumber in tbTree = " << tbTree->Event);
136  ATH_MSG_DEBUG("EventNumber in tileRecTree = " << tileRecTree->Evt);
137 */
138 
139 
140  int evtFindFlag = tileRecTree->Loop(evtNumber);
141  if(evtFindFlag < 0) {
142  ATH_MSG_DEBUG("There is no event number " << evtNumber << " in tileRecTree");
143  return StatusCode::SUCCESS;
144  }
145 
146  ATH_MSG_DEBUG("Get line number " << evtFindFlag << " from the trees");
147  tileRecTree->fChain->GetEntry(evtFindFlag);
148  tbTree->fChain->GetEntry(evtFindFlag);
149 
150  ATH_MSG_DEBUG("EventNumber in EventInfo = " << evtNumber);
151  ATH_MSG_DEBUG("EventNumber in tileRecTree = " << tileRecTree->Evt);
152  ATH_MSG_DEBUG("EventNumber in tbTree = " << tbTree->Event);
153 
154  TBTrackInfo * trckInfo = new TBTrackInfo();
155 
156  // variables from TB_tree
157  trckInfo->tb_Trigger = tbTree->Trigger;
158  trckInfo->tb_trk_nTracks = tbTree->trk_nTracks;
160 
161  trckInfo->tb_sADC_S1 = tbTree->sADC_S1;
162  trckInfo->tb_sADC_muHalo = tbTree->sADC_muHalo;
163  trckInfo->tb_sADC_muTag = tbTree->sADC_muTag;
164  trckInfo->tb_sADC_C2 = tbTree->sADC_C2;
165  trckInfo->tb_sADC_TRTSci = tbTree->sADC_TRTSci;
166 
170 
172 
173 /*
174  ATH_MSG_DEBUG("trk_nPixelHits:");
175  ATH_MSG_DEBUG("m_max_nPixelHits " << m_max_nPixelHits );
176  for(int i=0; i<60; i++){
177  ATH_MSG_DEBUG("\t- trckInfo->tb_trk_nPixelHits[i] " << i << " = "<< trckInfo->tb_trk_nPixelHits[i] );
178  ATH_MSG_DEBUG("\t- tbTree->trk_nSctHits[i] " << i << " = " << tbTree->trk_nSctHits[i] );
179  }
180 
181  ATH_MSG_DEBUG("2- tb_trk_Trt_HLTRT:");
182  ATH_MSG_DEBUG("m_max1_Trt_HLTRT , m_max2_Trt_HLTRT = " << m_max1_Trt_HLTRT << " , " << m_max2_Trt_HLTRT);
183  for(int i=0; i<60; i++){
184  ATH_MSG_DEBUG("\t- " << i << ": ");
185  for(int j=0; j<5; j++){
186  ATH_MSG_DEBUG("\t\t- tbTree->tb_trk_Trt_HLTRT[i][j] : " << j << " = " << tbTree->trk_Trt_HLTRT[i][j] );
187  ATH_MSG_DEBUG("\t\t- trckInfo->tb_trk_Trt_HLTRT[i][j] : " << j << " = " << trckInfo->tb_trk_Trt_HLTRT[i][j] );
188  ATH_MSG_DEBUG("");
189  }
190  }
191 
192 */
193 
194  // variables from TileRec_h1000
195  trckInfo->tileRec_XchN1 = tileRecTree->XchN1 ;
196  trckInfo->tileRec_XchN2 = tileRecTree->XchN2 ;
197  trckInfo->tileRec_Xcha0 = tileRecTree->Xcha0 ;
198  trckInfo->tileRec_Xcha1 = tileRecTree->Xcha1 ;
199 
201 
205 
207 
211 
215 
219 
223 
224 
225  ATH_CHECK( evtStore()->record(trckInfo,m_SGrecordkey) );
226  ATH_MSG_DEBUG("\t- Recording TBTrackInfo in StorGate with key = " << m_SGrecordkey);
227 
228 
229  return StatusCode::SUCCESS;
230 }

◆ 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 }

◆ finalize()

StatusCode TBTrackInfoFromTag::finalize ( )
overridevirtual

Definition at line 234 of file TBTrackInfoFromTag.cxx.

235 {
236 
238  // Re-Allocating Services //
240 
241  delete rootFile1;
242  delete rootFile2;
243  delete tileRecTree;
244  delete tbTree;
245 
246  return StatusCode::SUCCESS;
247 }

◆ initialize()

StatusCode TBTrackInfoFromTag::initialize ( )
overridevirtual

Definition at line 60 of file TBTrackInfoFromTag.cxx.

61 {
63  // Allocate Services //
65 
66  // initialize variables which store the max lenghts of the arrays
67  // from the input root file to be read by the TBTrackInfoFromTag package
69 
70  m_max1_Trt_HLTRT = 60;
71  m_max2_Trt_HLTRT = 100;
72 
73  m_max_btdc1 = 16;
74  m_max_GainC = 48;
75 
76  m_max_MuBack = 14;
78 
79  m_max1_SampleC = 48;
80  m_max2_SampleC = 9;
81 
82  // input root trees
83  TTree * tree;
84 
85  ATH_MSG_DEBUG("Reading in file " << m_inputRootFileName << " ...");
86 
87  ATH_MSG_DEBUG("\t- Getting TileRec_h1000 tree ");
88  rootFile1 = new TFile((TString)m_inputRootFileName);
89  rootFile1->cd((TString)m_inputRootFileName + ":/TileRec");
90  tree = (TTree*)gDirectory->Get("h1000");
92 
93  ATH_MSG_DEBUG("\t- Getting TB_tree tree ");
94  rootFile2 = new TFile((TString)m_inputRootFileName);
95  rootFile2->cd((TString)m_inputRootFileName + ":/TB");
96  tree = (TTree*)gDirectory->Get("tree");
97  tbTree = new TB_tree(tree);
98 
99  return StatusCode::SUCCESS;
100 }

◆ 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() [1/2]

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

Definition at line 24 of file AthCommonMsg.h.

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

◆ msg() [2/2]

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

Definition at line 27 of file AthCommonMsg.h.

27  {
28  return this->msgStream(lvl);
29  }

◆ 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();
383  PBASE::renounce (h);
384  }

◆ 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  {
365  handlesArray.renounce();
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, PyAthena::Alg, and AthHistogramAlgorithm.

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 }

◆ 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) {
312  std::vector<SG::VarHandleKey*> keys = a->keys();
313  for (auto k : keys) {
314  k->setOwner(this);
315  }
316  }
317  }

Member Data Documentation

◆ 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_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_inputRootFileName

std::string TBTrackInfoFromTag::m_inputRootFileName
private

Definition at line 71 of file TBTrackInfoFromTag.h.

◆ m_max1_SampleC

unsigned int TBTrackInfoFromTag::m_max1_SampleC
private

Definition at line 77 of file TBTrackInfoFromTag.h.

◆ m_max1_Trt_HLTRT

unsigned int TBTrackInfoFromTag::m_max1_Trt_HLTRT
private

Definition at line 74 of file TBTrackInfoFromTag.h.

◆ m_max2_SampleC

unsigned int TBTrackInfoFromTag::m_max2_SampleC
private

Definition at line 77 of file TBTrackInfoFromTag.h.

◆ m_max2_Trt_HLTRT

unsigned int TBTrackInfoFromTag::m_max2_Trt_HLTRT
private

Definition at line 74 of file TBTrackInfoFromTag.h.

◆ m_max_btdc1

unsigned int TBTrackInfoFromTag::m_max_btdc1
private

Definition at line 75 of file TBTrackInfoFromTag.h.

◆ m_max_Chi2C

unsigned int TBTrackInfoFromTag::m_max_Chi2C
private

Definition at line 76 of file TBTrackInfoFromTag.h.

◆ m_max_EfitC

unsigned int TBTrackInfoFromTag::m_max_EfitC
private

Definition at line 76 of file TBTrackInfoFromTag.h.

◆ m_max_GainC

unsigned int TBTrackInfoFromTag::m_max_GainC
private

Definition at line 75 of file TBTrackInfoFromTag.h.

◆ m_max_MuBack

unsigned int TBTrackInfoFromTag::m_max_MuBack
private

Definition at line 76 of file TBTrackInfoFromTag.h.

◆ m_max_nPixelHits

unsigned int TBTrackInfoFromTag::m_max_nPixelHits
private

Definition at line 73 of file TBTrackInfoFromTag.h.

◆ m_max_nSctHits

unsigned int TBTrackInfoFromTag::m_max_nSctHits
private

Definition at line 73 of file TBTrackInfoFromTag.h.

◆ m_max_nTrtHitsTRT

unsigned int TBTrackInfoFromTag::m_max_nTrtHitsTRT
private

Definition at line 73 of file TBTrackInfoFromTag.h.

◆ m_max_TfitC

unsigned int TBTrackInfoFromTag::m_max_TfitC
private

Definition at line 76 of file TBTrackInfoFromTag.h.

◆ m_SGkey1

std::string TBTrackInfoFromTag::m_SGkey1
private

Definition at line 70 of file TBTrackInfoFromTag.h.

◆ m_SGrecordkey

std::string TBTrackInfoFromTag::m_SGrecordkey
private

Definition at line 70 of file TBTrackInfoFromTag.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.

◆ rootFile1

TFile* TBTrackInfoFromTag::rootFile1
private

Definition at line 79 of file TBTrackInfoFromTag.h.

◆ rootFile2

TFile * TBTrackInfoFromTag::rootFile2
private

Definition at line 79 of file TBTrackInfoFromTag.h.

◆ tbTree

TB_tree* TBTrackInfoFromTag::tbTree
private

Definition at line 81 of file TBTrackInfoFromTag.h.

◆ tileRecTree

TileRec_h1000* TBTrackInfoFromTag::tileRecTree
private

Definition at line 80 of file TBTrackInfoFromTag.h.


The documentation for this class was generated from the following files:
TBTrackInfo::tb_trk_nTracksTRT
int tb_trk_nTracksTRT
Definition: TBTrackInfo.h:31
TileRec_h1000::TfitC1
Float_t TfitC1[48]
Definition: TileRec_h1000.h:104
TileRec_h1000
Definition: TileRec_h1000.h:22
TBTrackInfo::tileRec_EfitC0
std::vector< float > tileRec_EfitC0
Definition: TBTrackInfo.h:60
TBTrackInfo::tileRec_TfitC1
std::vector< float > tileRec_TfitC1
Definition: TBTrackInfo.h:58
TileRec_h1000::Xcha0
Float_t Xcha0
Definition: TileRec_h1000.h:69
TBTrackInfo::tileRec_Xcha0
float tileRec_Xcha0
Definition: TBTrackInfo.h:48
TBTrackInfo::tb_trk_nTrtHitsTRT
std::vector< int > tb_trk_nTrtHitsTRT
Definition: TBTrackInfo.h:41
TileRec_h1000::EfitC2
Float_t EfitC2[48]
Definition: TileRec_h1000.h:118
TileRec_h1000::XchN1
Float_t XchN1
Definition: TileRec_h1000.h:67
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
TileRec_h1000::GainC2
Int_t GainC2[48]
Definition: TileRec_h1000.h:113
TB_tree::trk_nTrtHitsTRT
Int_t trk_nTrtHitsTRT[60]
Definition: TB_tree.h:691
TileRec_h1000::TfitC0
Float_t TfitC0[48]
Definition: TileRec_h1000.h:89
TB_tree::trk_nSctHits
Int_t trk_nSctHits[60]
Definition: TB_tree.h:450
TileRec_h1000::XchN2
Float_t XchN2
Definition: TileRec_h1000.h:65
TBTrackInfoFromTag::tileRecTree
TileRec_h1000 * tileRecTree
Definition: TBTrackInfoFromTag.h:80
TBTrackInfoFromTag::rootFile1
TFile * rootFile1
Definition: TBTrackInfoFromTag.h:79
TB_tree::sADC_S1
Float_t sADC_S1
Definition: TB_tree.h:56
AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
TBTrackInfo::tileRec_GainC2
std::vector< int > tileRec_GainC2
Definition: TBTrackInfo.h:54
TBTrackInfoFromTag::m_max_nTrtHitsTRT
unsigned int m_max_nTrtHitsTRT
Definition: TBTrackInfoFromTag.h:73
TBTrackInfo::tileRec_GainC0
std::vector< int > tileRec_GainC0
Definition: TBTrackInfo.h:52
TB_tree::Trigger
Int_t Trigger
Definition: TB_tree.h:92
tree
TChain * tree
Definition: tile_monitor.h:30
TBTrackInfo::tb_trk_Trt_HLTRT
std::vector< std::vector< int > > tb_trk_Trt_HLTRT
Definition: TBTrackInfo.h:43
TileRec_h1000::fChain
TTree * fChain
Definition: TileRec_h1000.h:24
TileRec_h1000::btdc1
Int_t btdc1[16]
Definition: TileRec_h1000.h:63
TileRec_h1000::Chi2C2
Float_t Chi2C2[48]
Definition: TileRec_h1000.h:121
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_evtStore
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
Definition: AthCommonDataStore.h:390
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_vhka
std::vector< SG::VarHandleKeyArray * > m_vhka
Definition: AthCommonDataStore.h:398
TBTrackInfoFromTag::tbTree
TB_tree * tbTree
Definition: TBTrackInfoFromTag.h:81
TBTrackInfo::tb_Trigger
int tb_Trigger
Definition: TBTrackInfo.h:29
TBTrackInfo::tb_trk_nTracks
int tb_trk_nTracks
Definition: TBTrackInfo.h:30
TBTrackInfoFromTag::m_SGkey1
std::string m_SGkey1
Definition: TBTrackInfoFromTag.h:70
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
TBTrackInfo::tb_sADC_TRTSci
float tb_sADC_TRTSci
Definition: TBTrackInfo.h:37
TB_tree::trk_Trt_HLTRT
Int_t trk_Trt_HLTRT[60][100]
Definition: TB_tree.h:701
TileRec_h1000::EfitC0
Float_t EfitC0[48]
Definition: TileRec_h1000.h:88
TBTrackInfo::tileRec_TfitC2
std::vector< float > tileRec_TfitC2
Definition: TBTrackInfo.h:59
TB_tree::sADC_muHalo
Float_t sADC_muHalo
Definition: TB_tree.h:72
TBTrackInfo::tb_sADC_S1
float tb_sADC_S1
Definition: TBTrackInfo.h:33
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
TileRec_h1000::GainC0
Int_t GainC0[48]
Definition: TileRec_h1000.h:83
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
TBTrackInfoFromTag::m_max_nPixelHits
unsigned int m_max_nPixelHits
Definition: TBTrackInfoFromTag.h:73
TBTrackInfo::tileRec_XchN2
float tileRec_XchN2
Definition: TBTrackInfo.h:47
TileRec_h1000::Xcha1
Float_t Xcha1
Definition: TileRec_h1000.h:71
TBTrackInfoFromTag::m_max1_Trt_HLTRT
unsigned int m_max1_Trt_HLTRT
Definition: TBTrackInfoFromTag.h:74
AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:85
TBTrackInfo::tb_sADC_C2
float tb_sADC_C2
Definition: TBTrackInfo.h:36
TBTrackInfoFromTag::m_max2_SampleC
unsigned int m_max2_SampleC
Definition: TBTrackInfoFromTag.h:77
TBTrackInfoFromTag::m_max_nSctHits
unsigned int m_max_nSctHits
Definition: TBTrackInfoFromTag.h:73
TB_tree::sADC_muTag
Float_t sADC_muTag
Definition: TB_tree.h:70
TB_tree::fChain
TTree * fChain
Definition: TB_tree.h:24
AthCommonDataStore
Definition: AthCommonDataStore.h:52
AthAlgorithm::sysInitialize
virtual StatusCode sysInitialize() override
Override sysInitialize.
Definition: AthAlgorithm.cxx:66
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
ParseInputs.gDirectory
gDirectory
Definition: Final2012/ParseInputs.py:133
TB_tree::trk_nTracksTRT
Int_t trk_nTracksTRT
Definition: TB_tree.h:663
TileRec_h1000::GainC1
Int_t GainC1[48]
Definition: TileRec_h1000.h:98
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
TBTrackInfo
Definition: TBTrackInfo.h:19
TBTrackInfoFromTag::m_inputRootFileName
std::string m_inputRootFileName
Definition: TBTrackInfoFromTag.h:71
TBTrackInfo::tileRec_Chi2C2
std::vector< float > tileRec_Chi2C2
Definition: TBTrackInfo.h:65
TBTrackInfoFromTag::m_max_Chi2C
unsigned int m_max_Chi2C
Definition: TBTrackInfoFromTag.h:76
TBTrackInfo::tileRec_Chi2C0
std::vector< float > tileRec_Chi2C0
Definition: TBTrackInfo.h:63
TBTrackInfoFromTag::m_max2_Trt_HLTRT
unsigned int m_max2_Trt_HLTRT
Definition: TBTrackInfoFromTag.h:74
xAOD::uint64_t
uint64_t
Definition: EventInfo_v1.cxx:123
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
TBTrackInfo::tileRec_SampleC0
std::vector< std::vector< int > > tileRec_SampleC0
Definition: TBTrackInfo.h:67
TBTrackInfoFromTag::m_SGrecordkey
std::string m_SGrecordkey
Definition: TBTrackInfoFromTag.h:70
TileRec_h1000::EfitC1
Float_t EfitC1[48]
Definition: TileRec_h1000.h:103
SG::VarHandleKeyArray::renounce
virtual void renounce()=0
SG::HandleClassifier::type
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
Definition: HandleClassifier.h:54
copyArrToVec_1d
void copyArrToVec_1d(unsigned int size, type1 arr, type2 *vec)
Definition: TBTrackInfoFromTag.cxx:10
TBTrackInfo::tileRec_SampleC2
std::vector< std::vector< int > > tileRec_SampleC2
Definition: TBTrackInfo.h:69
TBTrackInfo::tb_trk_nSctHits
std::vector< int > tb_trk_nSctHits
Definition: TBTrackInfo.h:40
TileRec_h1000::TfitC2
Float_t TfitC2[48]
Definition: TileRec_h1000.h:119
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
TBTrackInfo::tileRec_Xcha1
float tileRec_Xcha1
Definition: TBTrackInfo.h:49
TBTrackInfo::tb_sADC_muHalo
float tb_sADC_muHalo
Definition: TBTrackInfo.h:34
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TileRec_h1000::Chi2C1
Float_t Chi2C1[48]
Definition: TileRec_h1000.h:106
TBTrackInfo::tileRec_XchN1
float tileRec_XchN1
Definition: TBTrackInfo.h:46
TBTrackInfo::tileRec_Chi2C1
std::vector< float > tileRec_Chi2C1
Definition: TBTrackInfo.h:64
TileRec_h1000::SampleC2
Int_t SampleC2[48][9]
Definition: TileRec_h1000.h:115
TBTrackInfo::tb_sADC_muTag
float tb_sADC_muTag
Definition: TBTrackInfo.h:35
TileRec_h1000::Chi2C0
Float_t Chi2C0[48]
Definition: TileRec_h1000.h:91
TBTrackInfoFromTag::m_max_MuBack
unsigned int m_max_MuBack
Definition: TBTrackInfoFromTag.h:76
TileRec_h1000::SampleC0
Int_t SampleC0[48][9]
Definition: TileRec_h1000.h:85
DeMoAtlasDataLoss.runNumber
string runNumber
Definition: DeMoAtlasDataLoss.py:64
AthAlgorithm::m_extendedExtraObjects
DataObjIDColl m_extendedExtraObjects
Definition: AthAlgorithm.h:79
TB_tree::Event
Int_t Event
Definition: TB_tree.h:29
a
TList * a
Definition: liststreamerinfos.cxx:10
h
TBTrackInfo::tileRec_SampleC1
std::vector< std::vector< int > > tileRec_SampleC1
Definition: TBTrackInfo.h:68
copyArrToVec_2d
void copyArrToVec_2d(unsigned int size1, unsigned int size2, type1 arr, type2 *vec)
Definition: TBTrackInfoFromTag.cxx:17
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
TBTrackInfo::tileRec_EfitC2
std::vector< float > tileRec_EfitC2
Definition: TBTrackInfo.h:62
TileRec_h1000::SampleC1
Int_t SampleC1[48][9]
Definition: TileRec_h1000.h:100
TBTrackInfo::tileRec_btdc1
std::vector< int > tileRec_btdc1
Definition: TBTrackInfo.h:51
TB_tree::trk_nPixelHits
Int_t trk_nPixelHits[60]
Definition: TB_tree.h:436
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:616
declareProperty
#define declareProperty(n, p, h)
Definition: BaseFakeBkgTool.cxx:15
TBTrackInfo::tb_trk_nPixelHits
std::vector< int > tb_trk_nPixelHits
Definition: TBTrackInfo.h:39
TBTrackInfoFromTag::rootFile2
TFile * rootFile2
Definition: TBTrackInfoFromTag.h:79
AthAlgorithm::AthAlgorithm
AthAlgorithm()
Default constructor:
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:790
TB_tree::sADC_TRTSci
Float_t sADC_TRTSci
Definition: TB_tree.h:80
LHEF::Writer
Pythia8::Writer Writer
Definition: Prophecy4fMerger.cxx:12
TBTrackInfoFromTag::m_max_EfitC
unsigned int m_max_EfitC
Definition: TBTrackInfoFromTag.h:76
TileRec_h1000::MuBack
Float_t MuBack[14]
Definition: TileRec_h1000.h:39
TBTrackInfoFromTag::m_max_TfitC
unsigned int m_max_TfitC
Definition: TBTrackInfoFromTag.h:76
TileRec_h1000::Evt
Int_t Evt
Definition: TileRec_h1000.h:30
TBTrackInfoFromTag::m_max1_SampleC
unsigned int m_max1_SampleC
Definition: TBTrackInfoFromTag.h:77
TBTrackInfo::tileRec_MuBack
std::vector< float > tileRec_MuBack
Definition: TBTrackInfo.h:56
TB_tree
Definition: TB_tree.h:22
TBTrackInfo::tileRec_EfitC1
std::vector< float > tileRec_EfitC1
Definition: TBTrackInfo.h:61
TB_tree::trk_nTracks
Int_t trk_nTracks
Definition: TB_tree.h:435
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
TB_tree::sADC_C2
Float_t sADC_C2
Definition: TB_tree.h:68
fitman.k
k
Definition: fitman.py:528
TBTrackInfoFromTag::m_max_btdc1
unsigned int m_max_btdc1
Definition: TBTrackInfoFromTag.h:75
TileRec_h1000::Loop
virtual void Loop()
Definition: TileRec_h1000.cxx:387
TBTrackInfo::tileRec_TfitC0
std::vector< float > tileRec_TfitC0
Definition: TBTrackInfo.h:57
ServiceHandle< ICondSvc >
TBTrackInfo::tileRec_GainC1
std::vector< int > tileRec_GainC1
Definition: TBTrackInfo.h:53
TBTrackInfoFromTag::m_max_GainC
unsigned int m_max_GainC
Definition: TBTrackInfoFromTag.h:75