| The Gaudi Framework v32r1 (f65d50dc)

Public Member Functions | List of all members
Gaudi::Interfaces::IAsyncEventProcessor Struct Referenceabstract

Extend IEventProcessor for asynchronous scheduling of events. More...

`#include <Gaudi/Interfaces/IAsyncEventProcessor.h>`

Inheritance diagram for Gaudi::Interfaces::IAsyncEventProcessor:
[legend]
Collaboration diagram for Gaudi::Interfaces::IAsyncEventProcessor:
[legend]

## Public Member Functions
| DeclareInterfaceID (IAsyncEventProcessor, 1, 0)
virtual std::future< std::tuple< StatusCode, EventContext > > | asyncExecuteEvent (EventContext &&ctx)=0
| Schedule the processing of the given event. More...
Public Member Functions inherited from IEventProcessor
| DeclareInterfaceID (IEventProcessor, 4, 0)
| InterfaceID. More...
virtual EventContext | createEventContext ()=0
virtual StatusCode | executeEvent (EventContext &&ctx)=0
| Process single event. More...
virtual StatusCode | executeRun (int maxevt)=0
| Process the maxevt events as a Run. More...
virtual StatusCode | nextEvent (int maxevt)=0
| Process the next maxevt events. More...
virtual StatusCode | stopRun ()=0
| Schedule a stop of the current event processing. 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 : 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 InterfaceID & | interfaceID ()
| Return an instance of InterfaceID identifying the interface. More...

## Detailed Description

Extend IEventProcessor for asynchronous scheduling of events.

Definition at line 10 of file IAsyncEventProcessor.h.

## Member Function Documentation

## ◆ asyncExecuteEvent()

virtual std::future<std::tuple<StatusCode, EventContext> > Gaudi::Interfaces::IAsyncEventProcessor::asyncExecuteEvent | ( | EventContext && | ctx | ) |
| pure virtual

Schedule the processing of the given event.

When the event is completed, the returned future will contain the result of the processing (StatusCode) and the passed EventContext.

## ◆ DeclareInterfaceID()

Gaudi::Interfaces::IAsyncEventProcessor::DeclareInterfaceID | ( | IAsyncEventProcessor | ,
|  | 1 | ,
|  | 0 |
| ) |  |

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

- GaudiKernel/Gaudi/Interfaces/IAsyncEventProcessor.h