|
Gaudi Framework, version v21r8 |
| Home | Generated: 17 Mar 2010 |
#include <FastContainersSvc/FastContainersSvc.h>


Public Member Functions | |
| virtual StatusCode | initialize () |
| Initialize the service. | |
| virtual StatusCode | reinitialize () |
| Initialize the service. | |
| virtual StatusCode | finalize () |
| Finalize the service. | |
| virtual void | resetStore () |
| Reset all the instances of TransientFastContainerBase in the store. | |
| virtual void | handle (const Incident &incident) |
| Handle the new incident. | |
Protected Member Functions | |
| FastContainersSvc (const std::string &name, ISvcLocator *svc) | |
| Standard service constructor. | |
| virtual | ~FastContainersSvc () |
| Destructor. | |
Private Attributes | |
| std::string | m_rootDirName |
| Name of the root node (property "RootDirName"). | |
| FastContainersSvc::StoreResetter | m_storeResetter |
| Internal data store agent used to find and clear objects of type TransientFastContainerBase. | |
Friends | |
| class | SvcFactory< FastContainersSvc > |
Classes | |
| class | StoreResetter |
| Internal data store agent used to find and clear objects of type TransientFastContainerBase. More... | |
Pointers to objects in this transient store are always valid. The instances of TransientFastContainer are cleared before each event.
Definition at line 22 of file FastContainersSvc.h.
| FastContainersSvc::FastContainersSvc | ( | const std::string & | name, | |
| ISvcLocator * | svc | |||
| ) | [protected] |
Standard service constructor.
Definition at line 26 of file FastContainersSvc.cpp.
00026 : 00027 base_class(name,svc) 00028 { 00029 declareProperty("RootDirName", m_rootDirName = "fc" ); 00030 m_rootName = "/" + m_rootDirName; 00031 }
| FastContainersSvc::~FastContainersSvc | ( | ) | [protected, virtual] |
| StatusCode FastContainersSvc::initialize | ( | ) | [virtual] |
Initialize the service.
Reimplemented from DataSvc.
Definition at line 41 of file FastContainersSvc.cpp.
00041 { 00042 // initialize base class 00043 StatusCode status = DataSvc::initialize(); 00044 if (!status.isSuccess()) return status; 00045 00046 MsgStream log(msgSvc(), name()); 00047 // create root node 00048 log << MSG::VERBOSE << "creating root node" << endmsg; 00049 status = setRoot(m_rootName,new DataObject); 00050 if (!status.isSuccess()){ 00051 log << MSG::FATAL << "failed to create the root node" << endmsg; 00052 return status; 00053 } 00054 00055 // register to the incident service 00056 log << MSG::VERBOSE << "registering to the incident service for " << IncidentType::BeginEvent << endmsg; 00057 m_incidentSvc->addListener(this,IncidentType::BeginEvent); 00058 00059 return status; 00060 }
| StatusCode FastContainersSvc::reinitialize | ( | ) | [virtual] |
Initialize the service.
Reimplemented from DataSvc.
Definition at line 65 of file FastContainersSvc.cpp.
00065 { 00066 // do nothing 00067 return StatusCode::SUCCESS; 00068 }
| StatusCode FastContainersSvc::finalize | ( | void | ) | [virtual] |
Finalize the service.
Reimplemented from DataSvc.
Definition at line 73 of file FastContainersSvc.cpp.
00073 { 00074 MsgStream log(msgSvc(), name()); 00075 // de-register to the incident service 00076 log << MSG::VERBOSE << "de-registering from the incident service" << endmsg; 00077 m_incidentSvc->removeListener(this,IncidentType::BeginEvent); 00078 00079 return DataSvc::finalize(); 00080 }
| void FastContainersSvc::resetStore | ( | ) | [virtual] |
Reset all the instances of TransientFastContainerBase in the store.
Definition at line 85 of file FastContainersSvc.cpp.
00085 { 00086 traverseTree(&m_storeResetter).ignore(); 00087 }
| void FastContainersSvc::handle | ( | const Incident & | incident | ) | [virtual] |
Handle the new incident.
Implements IIncidentListener.
Definition at line 92 of file FastContainersSvc.cpp.
00092 { 00093 if (incident.type() == IncidentType::BeginEvent) 00094 resetStore(); 00095 }
friend class SvcFactory< FastContainersSvc > [friend] |
Definition at line 53 of file FastContainersSvc.h.
std::string FastContainersSvc::m_rootDirName [private] |
Internal data store agent used to find and clear objects of type TransientFastContainerBase.