| The Gaudi Framework v28r2-patches (bc4ad17a)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

HiveEventRegistryEntry.h
Go to the documentation of this file.
1 #ifndef GAUDIHIVE_HIVEEVENTREGISTRYENTRY_H
2 #define GAUDIHIVE_HIVEEVENTREGISTRYENTRY_H
3
4 // STL include files
5 #include <vector>
6 #include <string>
7
8 // Framework include files
9 #include "GaudiKernel/Kernel.h"
10 #include "GaudiKernel/RegistryEntry.h"
11 #include "GaudiKernel/DataSvc.h"
12
13 // tbb include files
14 #include "tbb/concurrent_queue.h"
15 #include "tbb/concurrent_vector.h"
16
17 // Forward declarations
18 //class DataSvc;
19 class DataObject;
20 class IDataProviderSvc;
21 class IOpaqueAddress;
22 class IDataStoreAgent;
23
24 namespace Hive {
25
26 class HiveRegistryEntry;
27
28 class GAUDI_API HiveEventRegistryEntry : public DataSvcHelpers::RegistryEntry {
29 public:
30 friend class ::DataSvc;
31 private:
33 tbb::concurrent_queue<std::string> m_publishedData;
34 private:
40 void assemblePath(std::string& buffer) const;
43 HiveRegistryEntry* i_add(const std::string&);
44 public:
46 HiveEventRegistryEntry(const std::string& path, DataSvcHelpers::RegistryEntry* parent = 0);
48 virtual ~HiveEventRegistryEntry();
50 virtual long add(const std::string& name,
51 DataObject* pObject,
52 bool is_soft = false);
54 virtual long add(const std::string& name,
55 IOpaqueAddress* pAddress,
56 bool is_soft = false);
58 virtual long add(IRegistry* obj);
60 virtual tbb::concurrent_queue<std::string>& new_products() {
61 return m_publishedData;
62 }
63 };
64
65 } // namespace Hive
66 #endif // GAUDIHIVE_HIVEEVENTREGISTRYENTRY_H
Kernel.h
GaudiPython.HistoUtils.path
path
Definition: HistoUtils.py:772
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:28
Hive::HiveEventRegistryEntry::new_products
virtual tbb::concurrent_queue< std::string > & new_products()
Get list of new products.
Definition: HiveEventRegistryEntry.h:60
IDataProviderSvc
Data provider interface definition.
Definition: IDataProviderSvc.h:45
std::string
STL class.
DataSvc.h
GaudiPython.Persistency.add
def add(instance)
Definition: Persistency.py:32
IRegistry
The IRegistry represents the entry door to the environment any data object residing in a transient da...
Definition: IRegistry.h:22
RegistryEntry.h
DataSvcHelpers::RegistryEntry
Definition of an entry in the transient data store.
Definition: RegistryEntry.h:36
IDataStoreAgent
Generic data agent interface.
Definition: IDataStoreAgent.h:16
Hive
Definition: HiveEventRegistryEntry.h:24
Hive::HiveEventRegistryEntry
Definition: HiveEventRegistryEntry.h:28
IOpaqueAddress
Opaque address interface definition.
Definition: IOpaqueAddress.h:23
Hive::HiveEventRegistryEntry::m_publishedData
tbb::concurrent_queue< std::string > m_publishedData
registry for all data published in the event; getting read from time to time
Definition: HiveEventRegistryEntry.h:33
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:107
DataObject
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:30