| The Gaudi Framework v29r0 (ff2e7097)

- 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 <string>
6 #include <vector>
7
8 // Framework include files
9 #include "GaudiKernel/DataSvc.h"
10 #include "GaudiKernel/Kernel.h"
11 #include "GaudiKernel/RegistryEntry.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
27 class HiveRegistryEntry;
28
29 class GAUDI_API HiveEventRegistryEntry : public DataSvcHelpers::RegistryEntry
30 {
31 public:
32 friend class ::DataSvc;
33
34 private:
36 tbb::concurrent_queue<std::string> m_publishedData;
37
38 private:
44 void assemblePath( std::string& buffer ) const;
47 HiveRegistryEntry* i_add( const std::string& );
48
49 public:
51 HiveEventRegistryEntry( const std::string& path, DataSvcHelpers::RegistryEntry* parent = 0 );
53 virtual ~HiveEventRegistryEntry();
55 virtual long add( const std::string& name, DataObject* pObject, bool is_soft = false );
57 virtual long add( const std::string& name, IOpaqueAddress* pAddress, bool is_soft = false );
59 virtual long add( IRegistry* obj );
61 virtual tbb::concurrent_queue<std::string>& new_products() { return m_publishedData; }
62 };
63
64 } // namespace Hive
65 #endif // GAUDIHIVE_HIVEEVENTREGISTRYENTRY_H
Kernel.h
GaudiPython.HistoUtils.path
path
Definition: HistoUtils.py:895
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:32
Hive::HiveEventRegistryEntry::new_products
virtual tbb::concurrent_queue< std::string > & new_products()
Get list of new products.
Definition: HiveEventRegistryEntry.h:61
IDataProviderSvc
Data provider interface definition.
Definition: IDataProviderSvc.h:45
std::string
STL class.
DataSvc.h
GaudiPython.Persistency.add
def add(instance)
Definition: Persistency.py:39
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:29
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:36
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:110
DataObject
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:29