The Gaudi Framework  master (82fdf313)
Loading...
Searching...
No Matches
IEventProcessor.h
Go to the documentation of this file.
1/***********************************************************************************\
2* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3* *
4* This software is distributed under the terms of the Apache version 2 licence, *
5* copied verbatim in the file "LICENSE". *
6* *
7* In applying this licence, CERN does not waive the privileges and immunities *
8* granted to it by virtue of its status as an Intergovernmental Organization *
9* or submit itself to any jurisdiction. *
10\***********************************************************************************/
11#pragma once
12
15
22class GAUDI_API IEventProcessor : virtual public IInterface {
23public:
26
29 virtual StatusCode executeEvent( EventContext&& ctx ) = 0;
31 virtual StatusCode executeRun( int maxevt ) = 0;
33 virtual StatusCode nextEvent( int maxevt ) = 0;
35 virtual StatusCode stopRun() = 0;
36};
#define GAUDI_API
Definition Kernel.h:49
This class represents an entry point to all the event specific data.
The IEventProcessor is the interface to process events.
DeclareInterfaceID(IEventProcessor, 4, 0)
InterfaceID.
virtual EventContext createEventContext()=0
virtual StatusCode executeRun(int maxevt)=0
Process the maxevt events as a Run.
virtual StatusCode stopRun()=0
Schedule a stop of the current event processing.
virtual StatusCode nextEvent(int maxevt)=0
Process the next maxevt events.
virtual StatusCode executeEvent(EventContext &&ctx)=0
Process single event.
Definition of the basic interface.
Definition IInterface.h:225
This class is used for returning status codes from appropriate routines.
Definition StatusCode.h:64