The Gaudi Framework
master (bb4415cc)
Toggle main menu visibility
Loading...
Searching...
No Matches
RecordDataSvc.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2026 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
#pragma once
12
13
#include <
GaudiKernel/DataSvc.h
>
14
#include <
GaudiKernel/IConversionSvc.h
>
15
#include <
GaudiKernel/IIncidentListener.h
>
16
33
class
RecordDataSvc
:
public
extends
<DataSvc, IIncidentListener> {
34
public
:
35
StatusCode
initialize
()
override
;
36
StatusCode
finalize
()
override
;
37
39
void
handle
(
const
Incident
& incident )
override
;
40
42
RecordDataSvc
(
const
std::string&
name
,
ISvcLocator
* svc );
43
44
protected
:
46
void
registerRecord
(
const
std::string& data,
IOpaqueAddress
* pAddr );
47
49
void
loadRecords
(
IRegistry
* pReg );
50
51
protected
:
52
Gaudi::Property<bool>
m_autoLoad
{
this
,
"AutoLoad"
,
true
,
"autoload of records"
};
53
Gaudi::Property<std::string>
m_incidentName
{
this
,
"IncidentName"
,
""
,
54
"name of incident to be fired if new record arrives"
};
55
Gaudi::Property<std::string>
m_saveIncidentName
{
this
,
"SaveIncident"
,
"SAVE_RECORD"
,
"name of the 'save' incident"
};
56
Gaudi::Property<std::string>
m_persSvcName
{
this
,
"PersistencySvc"
,
"PersistencySvc/RecordPersistencySvc"
,
57
"name of the persistency service"
};
58
60
std::vector<std::string>
m_incidents
;
62
SmartIF<IConversionSvc>
m_cnvSvc
;
63
};
DataSvc.h
IConversionSvc.h
IIncidentListener.h
Gaudi::Property
Implementation of property with value of concrete type.
Definition
Property.h:35
IOpaqueAddress
Opaque address interface definition.
Definition
IOpaqueAddress.h:28
IRegistry
The IRegistry represents the entry door to the environment any data object residing in a transient da...
Definition
IRegistry.h:29
ISvcLocator
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition
ISvcLocator.h:42
Incident
Base class for all Incidents (computing events).
Definition
Incident.h:24
RecordDataSvc::m_incidentName
Gaudi::Property< std::string > m_incidentName
Definition
RecordDataSvc.h:53
RecordDataSvc::initialize
StatusCode initialize() override
Service initialisation.
Definition
RecordDataSvc.cpp:47
RecordDataSvc::m_cnvSvc
SmartIF< IConversionSvc > m_cnvSvc
Reference to the main data conversion service.
Definition
RecordDataSvc.h:62
RecordDataSvc::m_incidents
std::vector< std::string > m_incidents
Pending new file incidents.
Definition
RecordDataSvc.h:60
RecordDataSvc::registerRecord
void registerRecord(const std::string &data, IOpaqueAddress *pAddr)
Load new record into the data store if necessary.
Definition
RecordDataSvc.cpp:138
RecordDataSvc::m_persSvcName
Gaudi::Property< std::string > m_persSvcName
Definition
RecordDataSvc.h:56
RecordDataSvc::m_autoLoad
Gaudi::Property< bool > m_autoLoad
Definition
RecordDataSvc.h:52
RecordDataSvc::RecordDataSvc
RecordDataSvc(const std::string &name, ISvcLocator *svc)
Standard Constructor.
Definition
RecordDataSvc.cpp:156
RecordDataSvc::handle
void handle(const Incident &incident) override
IIncidentListener override: Inform that a new incident has occured.
Definition
RecordDataSvc.cpp:99
RecordDataSvc::m_saveIncidentName
Gaudi::Property< std::string > m_saveIncidentName
Definition
RecordDataSvc.h:55
RecordDataSvc::finalize
StatusCode finalize() override
Service finalization.
Definition
RecordDataSvc.cpp:91
RecordDataSvc::loadRecords
void loadRecords(IRegistry *pReg)
Load dependent records into memory.
Definition
RecordDataSvc.cpp:119
Service::name
const std::string & name() const override
Retrieve name of the service.
Definition
Service.cpp:333
SmartIF
Small smart pointer class with automatic reference counting for IInterface.
Definition
SmartIF.h:28
StatusCode
This class is used for returning status codes from appropriate routines.
Definition
StatusCode.h:64
extends
Base class used to extend a class implementing other interfaces.
Definition
extends.h:19
GaudiCommonSvc
src
DataSvc
RecordDataSvc.h
Generated on
for The Gaudi Framework by
1.17.0