The Gaudi Framework  v30r3 (a5ef0a68)
IScheduler Class Referenceabstract

General interface for algorithm scheduler. More...

#include <GaudiKernel/IScheduler.h>

Inheritance diagram for IScheduler:
Collaboration diagram for IScheduler:

Public Member Functions

 DeclareInterfaceID (IScheduler, 1, 0)
 InterfaceID. More...
 
virtual StatusCode pushNewEvent (EventContext *eventContext)=0
 Make an event available to the scheduler. More...
 
virtual StatusCode pushNewEvents (std::vector< EventContext * > &eventContexts)=0
 Make a list of events available to the scheduler This method makes a bunch creation of new events atomic to the scheduler. More...
 
virtual StatusCode popFinishedEvent (EventContext *&eventContext)=0
 Retrieve a finished event from the scheduler. More...
 
virtual StatusCode tryPopFinishedEvent (EventContext *&eventContext)=0
 Try to retrieve a finished event from the scheduler. More...
 
virtual unsigned int freeSlots ()=0
 Get the free event processing slots. More...
 
virtual void dumpState ()
 
virtual StatusCode scheduleEventView (EventContext const *sourceContext, std::string const &nodeName, EventContext *viewContext)=0
 Method to inform the scheduler about event views. More...
 
- Public Member Functions inherited from IInterface
virtual void * i_cast (const InterfaceID &) const =0
 main cast function More...
 
virtual std::vector< std::stringgetInterfaceNames () const =0
 Returns a vector of strings containing the names of all the implemented interfaces. More...
 
virtual unsigned long addRef ()=0
 Increment the reference count of Interface instance. More...
 
virtual unsigned long release ()=0
 Release Interface instance. More...
 
virtual unsigned long refCount () const =0
 Current reference count. More...
 
virtual StatusCode queryInterface (const InterfaceID &ti, void **pp)=0
 Set the void** to the pointer to the requested interface of the instance. More...
 
virtual ~IInterface ()=default
 Virtual destructor. More...
 

Additional Inherited Members

- Public Types inherited from IInterface
enum  Status : StatusCode::code_t {
  Status::FAILURE = 0, Status::SUCCESS = 1, Status::NO_INTERFACE, Status::VERSMISMATCH,
  Status::LAST_ERROR
}
 Return status. More...
 
using iid = Gaudi::InterfaceId< IInterface, 0, 0 >
 Interface ID. More...
 
using ext_iids = Gaudi::interface_list< iid >
 Extra interfaces. More...
 
- Static Public Member Functions inherited from IInterface
static const InterfaceIDinterfaceID ()
 Return an instance of InterfaceID identifying the interface. More...
 

Detailed Description

General interface for algorithm scheduler.

Author
Danilo Piparo
Benedikt Hegner
Version
1.1

Definition at line 20 of file IScheduler.h.

Member Function Documentation

IScheduler::DeclareInterfaceID ( IScheduler  ,
,
 
)
virtual void IScheduler::dumpState ( )
inlinevirtual

Definition at line 42 of file IScheduler.h.

42 {};
virtual unsigned int IScheduler::freeSlots ( )
pure virtual

Get the free event processing slots.

virtual StatusCode IScheduler::popFinishedEvent ( EventContext *&  eventContext)
pure virtual

Retrieve a finished event from the scheduler.

virtual StatusCode IScheduler::pushNewEvent ( EventContext eventContext)
pure virtual

Make an event available to the scheduler.

virtual StatusCode IScheduler::pushNewEvents ( std::vector< EventContext * > &  eventContexts)
pure virtual

Make a list of events available to the scheduler This method makes a bunch creation of new events atomic to the scheduler.

virtual StatusCode IScheduler::scheduleEventView ( EventContext const *  sourceContext,
std::string const &  nodeName,
EventContext viewContext 
)
pure virtual

Method to inform the scheduler about event views.

virtual StatusCode IScheduler::tryPopFinishedEvent ( EventContext *&  eventContext)
pure virtual

Try to retrieve a finished event from the scheduler.


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