![]() |
The Gaudi Framework
master (e68eea06)
|
General interface for algorithm scheduler. More...
#include <GaudiKernel/IScheduler.h>


Classes | |
| struct | OccupancySnapshot |
| Sample occupancy at fixed interval (ms) Negative value to deactivate, 0 to snapshot every change Each sample, apply the callback function to the result. More... | |
Public Member Functions | |
| DeclareInterfaceID (IScheduler, 1, 0) | |
| InterfaceID. | |
| virtual StatusCode | pushNewEvent (EventContext *eventContext)=0 |
| Make an event available to the scheduler. | |
| 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. | |
| virtual StatusCode | popFinishedEvent (EventContext *&eventContext)=0 |
| Retrieve a finished event from the scheduler. | |
| virtual StatusCode | tryPopFinishedEvent (EventContext *&eventContext)=0 |
| Try to retrieve a finished event from the scheduler. | |
| virtual unsigned int | freeSlots ()=0 |
| Get the free event processing slots. | |
| virtual void | dumpState () |
| virtual StatusCode | scheduleEventView (const EventContext *sourceContext, const std::string &nodeName, std::unique_ptr< EventContext > viewContext)=0 |
| Method to inform the scheduler about event views. | |
| virtual void | recordOccupancy (int samplePeriod, std::function< void(OccupancySnapshot)> callback)=0 |
Public Member Functions inherited from IInterface | |
| template<Gaudi::IsInterface TARGET> | |
| TARGET * | cast () |
| template<Gaudi::IsInterface TARGET> | |
| TARGET const * | cast () const |
| template<typename TARGET> requires ( !Gaudi::IsInterface<TARGET> ) | |
| TARGET * | cast () |
| template<typename TARGET> requires ( !Gaudi::IsInterface<TARGET> ) | |
| TARGET const * | cast () const |
| virtual std::vector< std::string > | getInterfaceNames () const =0 |
| Returns a vector of strings containing the names of all the implemented interfaces. | |
| virtual unsigned long | addRef () const =0 |
| Increment the reference count of Interface instance. | |
| virtual unsigned long | release () const =0 |
| Release Interface instance. | |
| virtual unsigned long | refCount () const =0 |
| Current reference count. | |
| virtual StatusCode | queryInterface (const InterfaceID &ti, void **pp)=0 |
| Set the void** to the pointer to the requested interface of the instance. | |
| virtual | ~IInterface ()=default |
| Virtual destructor. | |
| virtual void const * | i_cast (const InterfaceID &) const =0 |
| void * | i_cast (const InterfaceID &iid) |
Additional Inherited Members | |
Public Types inherited from IInterface | |
| enum class | Status : StatusCode::code_t { FAILURE = 0 , SUCCESS = 1 , NO_INTERFACE , VERSMISMATCH , LAST_ERROR } |
| Return status. More... | |
| using | iid = Gaudi::InterfaceId<IInterface, 0, 0> |
| Interface ID. | |
| using | ext_iids = Gaudi::interface_list<iid> |
| Extra interfaces. | |
Static Public Member Functions inherited from IInterface | |
| static const InterfaceID & | interfaceID () |
| Return an instance of InterfaceID identifying the interface. | |
Protected Member Functions inherited from IInterface | |
| virtual unsigned long | decRef () const =0 |
| Decrement reference count and return the new reference count. | |
| IScheduler::DeclareInterfaceID | ( | IScheduler | , |
| 1 | , | ||
| 0 | ) |
|
inlinevirtual |
Definition at line 49 of file IScheduler.h.
|
pure virtual |
Get the free event processing slots.
|
pure virtual |
Retrieve a finished event from the scheduler.
|
pure virtual |
Make an event available to the scheduler.
|
pure virtual |
Make a list of events available to the scheduler This method makes a bunch creation of new events atomic to the scheduler.
|
pure virtual |
|
pure virtual |
Method to inform the scheduler about event views.
|
pure virtual |
Try to retrieve a finished event from the scheduler.