1 #ifndef GAUDIKERNEL_DATASVC_H
2 #define GAUDIKERNEL_DATASVC_H
5 #include "GaudiKernel/Service.h"
6 #include "GaudiKernel/DataStoreItem.h"
7 #include "GaudiKernel/IDataManagerSvc.h"
8 #include "GaudiKernel/IDataProviderSvc.h"
9 #include "GaudiKernel/IIncidentSvc.h"
10 #include "GaudiKernel/SmartIF.h"
12 #include <boost/utility/string_ref.hpp>
52 std::string m_rootName =
"/Event" ;
60 bool m_forceLeaves =
false;
62 bool m_enableAccessHdlr =
false;
64 bool m_enableFaultHdlr =
false;
68 DataSvcHelpers::InhibitMap* m_inhibitMap =
nullptr;
72 std::string m_accessName =
"DataAccess";
74 std::string m_faultName =
"DataFault";
78 CLID rootCLID()
const override;
81 const std::string& rootName()
const override;
84 virtual StatusCode registerAddress(
const std::string& fullPath,
89 const std::string& objectPath,
94 const std::string& objectPath,
98 virtual StatusCode unregisterAddress(
const std::string& fullPath);
102 const std::string& objPath);
106 const std::string& objPath);
112 std::vector<IRegistry*>& refLeaves)
override;
117 std::vector<IRegistry*>& refLeaves)
override;
129 StatusCode clearSubTree(
const std::string& sub_tree_path )
override;
142 StatusCode traverseSubTree(
const std::string& sub_tree_path,
160 virtual StatusCode i_setRoot( std::string root_name,
172 virtual StatusCode i_setRoot (std::string root_path,
184 virtual StatusCode addPreLoadItem(
const std::string& itemPath );
190 virtual StatusCode removePreLoadItem(
const std::string& itemPath );
210 StatusCode registerObject(
const std::string& fullPath,
214 StatusCode registerObject(
const std::string& parentPath,
215 const std::string& objPath,
219 StatusCode registerObject(
const std::string& parentPath,
225 const std::string& objPath,
234 StatusCode unregisterObject(
const std::string& fullPath )
override;
237 StatusCode unregisterObject(
const std::string& parentPath,
238 const std::string& objectPath )
override;
241 StatusCode unregisterObject(
const std::string& parentPath,
249 const std::string& objectPath )
override;
257 const std::string&
path,
261 StatusCode retrieveObject(
const std::string& fullPath,
265 StatusCode retrieveObject(
const std::string& parentPath,
266 const std::string& objPath,
270 StatusCode retrieveObject(
const std::string& parentPath,
276 const std::string& objPath,
285 StatusCode findObject(
const std::string& fullPath,
290 const std::string&
path,
294 StatusCode findObject(
const std::string& parentPath,
295 const std::string& objPath,
299 StatusCode findObject(
const std::string& parentPath,
305 const std::string& objPath,
315 const std::string& objPath,
319 StatusCode linkObject(
const std::string& fromPath,
320 const std::string& objPath,
325 const std::string& objPath,
329 StatusCode linkObject(
const std::string& fullPath,
334 const std::string& objPath )
override;
337 StatusCode unlinkObject(
const std::string& fromPath,
338 const std::string& objPath )
override;
342 const std::string& objPath )
override;
345 StatusCode unlinkObject(
const std::string& fullPath )
override;
351 StatusCode updateObject(
const std::string& updatePath )
override;
357 StatusCode updateObject(
const std::string& parentPath,
358 const std::string& updatePath )
override;
362 const std::string& updatePath )
override;
397 virtual DataObject* createDefaultObject()
const;
412 const std::string&
path,
423 boost::string_ref
path,
427 #endif // GAUDIKERNEL_DATASVC_H
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
LoadItems m_preLoads
Items to be pre-loaded.
bool checkRoot()
Check if root path is valid.
Description of the DataStoreItem class.
std::vector< std::string > m_inhibitPathes
Property for the inhibited leaves.
std::vector< DataStoreItem > LoadItems
Define set of load items.
This class is used for returning status codes from appropriate routines.
The IRegistry represents the entry door to the environment any data object residing in a transient da...
unsigned int CLID
Class ID definition.
Definition of an entry in the transient data store.
Generic data agent interface.
Base class used to extend a class implementing other interfaces.
Opaque address interface definition.
A DataObject is the base class of any identifiable object on any data store.
The interface implemented by the IncidentSvc service.