16#ifndef REGISTRATIONSERVICES_IOVREGISTRATIONSVC_H
17# define REGISTRATIONSERVICES_IOVREGISTRATIONSVC_H
24#include "GaudiKernel/ServiceHandle.h"
25#include "GaudiKernel/ClassID.h"
26#include "CoolKernel/StorageType.h"
63 virtual const InterfaceID&
type()
const;
68 virtual StatusCode
registerIOV(
const std::string& typeName )
const;
74 virtual StatusCode
registerIOV(
const std::string& typeName,
const std::string& tag )
const;
80 virtual StatusCode
registerIOV(
const std::string& typeName,
const std::string& key,
81 const std::string& tag )
const;
85 virtual StatusCode
registerIOV(
const std::string& typeName,
86 const std::string& tag,
87 unsigned int beginRun,
90 unsigned int endLB )
const;
95 virtual StatusCode
registerIOV(
const std::string& typeName,
96 const std::string& tag,
98 uint64_t endTime )
const;
102 virtual StatusCode
registerIOV(
const std::string& typeName,
103 const std::string& key,
104 const std::string& tag,
105 unsigned int beginRun,
107 unsigned int beginLB,
108 unsigned int endLB )
const;
112 virtual StatusCode
registerIOV(
const std::string& typeName,
113 const std::string& key,
114 const std::string& tag,
116 uint64_t endTime )
const;
120 virtual StatusCode
registerIOV(
const std::string& typeName,
121 const std::string& key,
122 const std::string& folder,
123 const std::string& tag,
124 unsigned int beginRun,
126 unsigned int beginLB,
127 unsigned int endLB )
const;
131 virtual StatusCode
registerIOV(
const std::string& typeName,
132 const std::string& key,
133 const std::string& folder,
134 const std::string& tag,
136 uint64_t endTime )
const;
150 StatusCode
registerIOV(
const std::string& typeName,
151 const std::string& key,
152 const std::string& folder,
153 const std::string& tag,
158 const std::string& key,
159 const std::string& folderName,
160 const std::string& tag,
165 const std::string& coralName)
const;
168 const std::string& key,
169 std::string& saddr)
const;
171 uint64_t
timeToNano(
const unsigned long int timesec)
const;
176 const std::string& value,
181 std::string& address_header,
182 std::string& address_data)
const;
193 Gaudi::Property<std::string>
m_tag{
this,
"IOVDbTag",
""};
195 Gaudi::Property<std::string>
m_tagDescription{
this,
"TagDescription",
"Athena IOVRegistrationSvc"};
202 Gaudi::Property<std::vector<std::string>>
m_overrideName{
this,
"OverrideNames", {}};
203 Gaudi::Property<std::vector<std::string>>
m_overrideType{
this,
"OverrideTypes", {}};
uint32_t CLID
The Class ID type.
This is an interface to a tool used to register conditions objects in the Interval of Validity (IOV) ...
Basic time unit for IOVSvc.
Gaudi::Property< bool > m_writeKeyInfo
Gaudi::Property< bool > m_recreateFolders
Gaudi::Property< bool > m_forceGlobalIOV
IOVRegistrationSvc(const std::string &name, ISvcLocator *svc)
ServiceHandle< IAddressCreator > m_persSvc
virtual StatusCode initialize()
Initialize AlgTool.
Gaudi::Property< std::string > m_tagDescription
virtual StatusCode buildDescription(const std::string &identifier, const std::string &value, std::string &description) const
Build the folder description field add in front of the description the value with identifier-markups.
virtual ~IOVRegistrationSvc()
ServiceHandle< IIOVCondDbSvc > m_iov_db
Gaudi::Property< bool > m_userTagsUH
Gaudi::Property< bool > m_userTags
Gaudi::Property< unsigned long > m_beginTime
ServiceHandle< IClassIDSvc > m_clidSvc
uint64_t timeToNano(const unsigned long int timesec) const
StatusCode registerIOVCOOL(const std::string &typeName, const std::string &key, const std::string &folderName, const std::string &tag, const IOVTime &begin, const IOVTime &end) const
Gaudi::Property< bool > m_timeStamp
ServiceHandle< StoreGateSvc > m_detStore
Gaudi::Property< bool > m_payloadTable
Gaudi::Property< unsigned int > m_endLB
StatusCode getStringAddress(const CLID &clid, const std::string &key, std::string &saddr) const
Gaudi::Property< unsigned int > m_beginLB
Gaudi::Property< std::string > m_tag
virtual StatusCode finalize()
Finalize AlgTool.
Gaudi::Property< std::vector< std::string > > m_overrideName
virtual StatusCode registerIOV(const std::string &typeName) const
Register IOV DB for an object given its typeName - run/LB numbers interval or times interval and tag ...
Gaudi::Property< unsigned int > m_beginRun
Gaudi::Property< unsigned int > m_endRun
Gaudi::Property< std::vector< std::string > > m_overrideType
Gaudi::Property< bool > m_svFolder
Gaudi::Property< unsigned long > m_endTime
virtual const InterfaceID & type() const
Service type.
cool::StorageType::TypeId coralToCoolType(const std::string &parname, const std::string &coralName) const
StatusCode splitAddress(const std::string &address, std::string &address_header, std::string &address_data) const
Split address in its header and data parts.
Basic time unit for IOVSvc.
static constexpr uint32_t MAXRUN
static constexpr uint32_t MINEVENT
static constexpr uint64_t MINTIMESTAMP
static constexpr uint32_t MAXEVENT
static constexpr uint32_t MINRUN
The Athena Transient Store API.
std::string description
glabal timer - how long have I taken so far?