ATLAS Offline Software
CondInputLoader.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // CondInputLoader.h
8 // Header file for class CondInputLoader
10 #ifndef IOVSVC_CONDINPUTLOADER_H
11 #define IOVSVC_CONDINPUTLOADER_H 1
12 
13 #include "GaudiKernel/DataObjID.h"
14 #include "GaudiKernel/ICondSvc.h"
15 #include "GaudiKernel/ServiceHandle.h"
16 
17 #include "AthenaKernel/IIOVSvc.h"
18 #include "AthenaKernel/IIOVDbSvc.h"
20 #include "AthenaKernel/ITPCnvSvc.h"
21 #include "StoreGate/StoreGateSvc.h"
24 
25 #include <string>
26 #include <map>
27 
28 
30  : public ::AthAlgorithm
31 {
32 
33  public:
34 
36  CondInputLoader( const std::string& name, ISvcLocator* pSvcLocator );
37 
38  // Athena algorithm's Hooks
39  virtual StatusCode initialize() override;
40  virtual StatusCode start() override;
41  virtual StatusCode execute() override;
42  virtual StatusCode finalize() override;
43 
44 
45  private:
46 
47  // need to override the ExtraInputs/Outputs property handler
48  // from AthAlgorithm
49  void extraDeps_update_handler(Gaudi::Details::PropertyBase&);
50 
51  RootType loadDict (CLID clid);
52  RootType loadDict (const std::string& name);
53 
55  Gaudi::Property<DataObjIDColl> m_load{this,"Load",{},"List of objects to be loaded"};
56  DataObjIDColl m_handlesToCreate;
57  std::vector< SG::VarHandleKey > m_vhk;
58 
59  Gaudi::Property<bool> m_dumpCondStore{ this, "DumpCondStore", false,
60  "dump the ConditionStore at the end execute"};
61  Gaudi::Property<bool> m_dumpCondSvc{ this, "DumpCondSvc", false,
62  "dump the CondSvc at the end execute"};
63  Gaudi::Property<bool> m_abort {this, "AbortIfInitFails", true,
64  "Abort execution if unable to create the CondCont<T> in first event"};
65 
66 
74  { this, "DictLoaderSvc", "AthDictLoaderSvc", "" };
76  { this, "TPCnvSvc", "AthTPCnvSvc", "" };
77 
78  std::map<std::string,std::string> m_keyFolderMap;
79 };
80 
81 
82 #endif
83 
CondInputLoader::m_vhk
std::vector< SG::VarHandleKey > m_vhk
Definition: CondInputLoader.h:57
CondInputLoader::start
virtual StatusCode start() override
Definition: CondInputLoader.cxx:237
ITPCnvSvc.h
CondInputLoader::finalize
virtual StatusCode finalize() override
Definition: CondInputLoader.cxx:227
CondInputLoader::m_rcuSvc
ServiceHandle< Athena::IRCUSvc > m_rcuSvc
Definition: CondInputLoader.h:72
CondInputLoader::CondInputLoader
CondInputLoader(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Definition: CondInputLoader.cxx:58
IIOVDbSvc.h
Abstract interface to IOVDbSvc to access IOVRange and tag information.
CondInputLoader::m_clidSvc
ServiceHandle< IClassIDSvc > m_clidSvc
Definition: CondInputLoader.h:71
CondInputLoader::m_tpCnvSvc
ServiceHandle< ITPCnvSvc > m_tpCnvSvc
Definition: CondInputLoader.h:76
AthAlgorithm.h
CondInputLoader::m_load
Gaudi::Property< DataObjIDColl > m_load
Containers.
Definition: CondInputLoader.h:55
CondInputLoader::initialize
virtual StatusCode initialize() override
Definition: CondInputLoader.cxx:85
CondInputLoader::execute
virtual StatusCode execute() override
Definition: CondInputLoader.cxx:308
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CondInputLoader::m_IOVSvc
ServiceHandle< IIOVSvc > m_IOVSvc
Definition: CondInputLoader.h:69
CondInputLoader::m_IOVDbSvc
ServiceHandle< IIOVDbSvc > m_IOVDbSvc
Definition: CondInputLoader.h:70
CondInputLoader
Definition: CondInputLoader.h:31
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
AthAlgorithm
Definition: AthAlgorithm.h:47
CondInputLoader::m_handlesToCreate
DataObjIDColl m_handlesToCreate
Definition: CondInputLoader.h:56
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
CondInputLoader::m_keyFolderMap
std::map< std::string, std::string > m_keyFolderMap
Definition: CondInputLoader.h:78
AthenaAttributeList.h
An AttributeList represents a logical row of attributes in a metadata table. The name and type of eac...
IIOVSvc.h
CondInputLoader::m_condSvc
ServiceHandle< ICondSvc > m_condSvc
Definition: CondInputLoader.h:68
IDictLoaderSvc.h
CondInputLoader::m_dumpCondStore
Gaudi::Property< bool > m_dumpCondStore
Definition: CondInputLoader.h:59
CondInputLoader::loadDict
RootType loadDict(CLID clid)
Definition: CondInputLoader.cxx:414
CondInputLoader::m_dictLoader
ServiceHandle< IDictLoaderSvc > m_dictLoader
Definition: CondInputLoader.h:74
CondInputLoader::m_dumpCondSvc
Gaudi::Property< bool > m_dumpCondSvc
Definition: CondInputLoader.h:61
StoreGateSvc.h
CondInputLoader::m_abort
Gaudi::Property< bool > m_abort
Definition: CondInputLoader.h:63
CondInputLoader::m_condStore
ServiceHandle< StoreGateSvc > m_condStore
Definition: CondInputLoader.h:67
CondInputLoader::extraDeps_update_handler
void extraDeps_update_handler(Gaudi::Details::PropertyBase &)
Definition: CondInputLoader.cxx:391
ServiceHandle< StoreGateSvc >
TScopeAdapter
Definition: RootType.h:119