| The Gaudi Framework v27r1

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

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | List of all members
IScheduler Class Referenceabstract

General interface for algorithm scheduler. More...

`#include <GaudiKernel/IScheduler.h>`

Inheritance diagram for IScheduler:
[legend]
Collaboration diagram for IScheduler:
[legend]

## 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 ()
| DeclareInterfaceID (IScheduler, 1, 0)
| InterfaceID. More...
virtual StatusCode | addEvent (EventContext *eventContext)=0
| Make an event available to the scheduler. More...
virtual unsigned int | getEventsInFlight ()=0
| Get number of in flight events. More...
virtual unsigned int | getCompletedEvents ()=0
| Get number of completed events. More...
Public Member Functions inherited from IInterface
virtual void * | i_cast (const InterfaceID &) const =0
| main cast function More...
virtual std::vector< std::string > | getInterfaceNames () 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 { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, 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 InterfaceID & | interfaceID ()
| Return an instance of InterfaceID identifying the interface. More...

## Detailed Description

General interface for algorithm scheduler.

Interface for the schedulers.

Author
  Danilo Piparo
  Benedikt Hegner

Version
  1.1

It allows to add events to the processing and to know how many events are in flight and how many completed.

Author
  Danilo Piparo

Version
  1.0

Definition at line 20 of file IScheduler.h.

## Member Function Documentation

virtual StatusCode IScheduler::addEvent | ( | EventContext * | eventContext | ) |
| pure virtual

Make an event available to the scheduler.

IScheduler::DeclareInterfaceID | ( | IScheduler | ,
|  | 1 | ,
|  | 0 |
| ) |  |

InterfaceID.

IScheduler::DeclareInterfaceID | ( | IScheduler | ,
|  | 1 | ,
|  | 0 |
| ) |  |

InterfaceID.

virtual void IScheduler::dumpState | ( |  | ) |
| inline virtual

Definition at line 41 of file IScheduler.h.

41 {};

virtual unsigned int IScheduler::freeSlots | ( |  | ) |
| pure virtual

Get the free event processing slots.

virtual unsigned int IScheduler::getCompletedEvents | ( |  | ) |
| pure virtual

Get number of completed events.

virtual unsigned int IScheduler::getEventsInFlight | ( |  | ) |
| pure virtual

Get number of in flight events.

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::tryPopFinishedEvent | ( | EventContext *& | eventContext | ) |
| pure virtual

Try to retrieve a finished event from the scheduler.

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

- GaudiKernel/GaudiKernel/IScheduler.h
- GaudiKernel/GaudiKernel/ISchedulerSvc.h