The Gaudi Framework  v30r3 (a5ef0a68)
IHiveWhiteBoard Class Referenceabstract

#include <GaudiKernel/IHiveWhiteBoard.h>

Inheritance diagram for IHiveWhiteBoard:
Collaboration diagram for IHiveWhiteBoard:

Public Member Functions

 DeclareInterfaceID (IHiveWhiteBoard, 2, 0)
 InterfaceID. More...
 
virtual StatusCode selectStore (size_t partitionIndex)=0
 Activate an given 'slot' for all subsequent calls within the same thread id. More...
 
virtual StatusCode clearStore (size_t partitionIndex)=0
 Clear an given 'slot'. More...
 
virtual StatusCode setNumberOfStores (size_t slots)=0
 Set the number of 'slots'. More...
 
virtual size_t getNumberOfStores () const =0
 Get the number of 'slots'. More...
 
virtual void addNewDataObjects (DataObjIDColl &products)=0
 explicitly notify the presence of new object in the store More...
 
virtual DataObjIDColl getNewDataObjects ()=0
 Get the latest new data objects registered in store. More...
 
virtual bool exists (const DataObjID &)=0
 Check if a data object exists in store. More...
 
virtual size_t allocateStore (int evtnumber)=0
 Allocate a store partition for new event. More...
 
virtual StatusCode freeStore (size_t partitionIndex)=0
 Free a store partition. More...
 
virtual size_t getPartitionNumber (int eventnumber) const =0
 Get the partition number corresponding to a given event. More...
 
virtual size_t freeSlots ()=0
 Get free slots number. More...
 

Additional Inherited Members

- Public Types inherited from extend_interfaces< IInterface >
using ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids... >::type
 take union of the ext_iids of all Interfaces... More...
 

Detailed Description

Author
Pere Mato
Danilo Piparo
Version
1.0

Definition at line 17 of file IHiveWhiteBoard.h.

Member Function Documentation

virtual void IHiveWhiteBoard::addNewDataObjects ( DataObjIDColl products)
pure virtual

explicitly notify the presence of new object in the store

Parameters
products[IN] Location of new objects
virtual size_t IHiveWhiteBoard::allocateStore ( int  evtnumber)
pure virtual

Allocate a store partition for new event.

Parameters
evtnumber[IN] Event number
Returns
Partition number (npos to indicate an error).
virtual StatusCode IHiveWhiteBoard::clearStore ( size_t  partitionIndex)
pure virtual

Clear an given 'slot'.

Parameters
partition[IN] Partition number (event slot) *
Returns
Status code indicating failure or success.
IHiveWhiteBoard::DeclareInterfaceID ( IHiveWhiteBoard  ,
,
 
)
virtual bool IHiveWhiteBoard::exists ( const DataObjID )
pure virtual

Check if a data object exists in store.

TODO: remove the method ASA a cross-experiment event data store interface emerges

Returns
boolean
virtual size_t IHiveWhiteBoard::freeSlots ( )
pure virtual

Get free slots number.

virtual StatusCode IHiveWhiteBoard::freeStore ( size_t  partitionIndex)
pure virtual

Free a store partition.

Parameters
partition[IN] Partition number
Returns
Status code indicating failure or success.
virtual DataObjIDColl IHiveWhiteBoard::getNewDataObjects ( )
pure virtual

Get the latest new data objects registered in store.

Returns
collection of new data object locations
virtual size_t IHiveWhiteBoard::getNumberOfStores ( ) const
pure virtual

Get the number of 'slots'.

Returns
Number of event stores allocated in the whiteboard
virtual size_t IHiveWhiteBoard::getPartitionNumber ( int  eventnumber) const
pure virtual

Get the partition number corresponding to a given event.

Parameters
evtnumber[IN] Event number
Returns
Partition number (npos to indicate an error).
virtual StatusCode IHiveWhiteBoard::selectStore ( size_t  partitionIndex)
pure virtual

Activate an given 'slot' for all subsequent calls within the same thread id.

Parameters
partition[IN] Partition number (event slot) *
Returns
Status code indicating failure or success.
virtual StatusCode IHiveWhiteBoard::setNumberOfStores ( size_t  slots)
pure virtual

Set the number of 'slots'.

Parameters
partition[IN] Partition number (event slot) *
Returns
Status code indicating failure or success.

The documentation for this class was generated from the following file: