ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FW::IService Class Referenceabstract

#include <acts/blob/master/Examples/Framework/include/ACTFW/Framework/IService.hpp>

+ Inheritance diagram for FW::IService:

Public Member Functions

virtual ~IService ()=default
 
virtual std::string name () const =0
 The service name.
 
virtual void startRun ()=0
 
virtual void prepare (AlgorithmContext &ctx)=0
 

Detailed Description

Service interface.

A service should be used to provide constant or slowly changing per-event information, e.g. geometry with or without alignment, magnetic field, ..., and to handle once-per-run tasks. In contrast to an algorithm (i.e. inheriting from IAlgorithm), a service can have an internal state and each implementation has to ensure that concurrent calls are valid.

Definition at line 32 of file IService.hpp.

View newest version in sPHENIX GitHub at line 32 of file IService.hpp

Constructor & Destructor Documentation

virtual FW::IService::~IService ( )
virtualdefault

Member Function Documentation

virtual std::string FW::IService::name ( ) const
pure virtual

The service name.

Implemented in FW::BareService.

virtual void FW::IService::prepare ( AlgorithmContext ctx)
pure virtual

Prepare per-event information.

This is intended to add already existing information, e.g. geometry or conditions data, to the event store. While possible, complex operations should be better implemented as an regular algorithm.

Should throw an exception on non-recoverable errors.

Implemented in FW::BareService, and FW::HelloService.

virtual void FW::IService::startRun ( )
pure virtual

Start-of-run hook to be called before any events are processed.

Should throw an exception for non-recoverable errors.

Implemented in FW::BareService, and FW::HelloService.


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