7#ifndef ATHXRTINTERFACES_STATEHANDLER_H
8#define ATHXRTINTERFACES_STATEHANDLER_H
10#include "GaudiKernel/IIncidentListener.h"
11#include "GaudiKernel/IIncidentSvc.h"
12#include "GaudiKernel/ConcurrencyFlags.h"
13#include "GaudiKernel/ServiceHandle.h"
33 return StatusCode::SUCCESS;
39 return StatusCode::SUCCESS;
45 return StatusCode::SUCCESS;
52 const bool is_multiprocess = (Gaudi::Concurrency::ConcurrencyFlags::numProcs() > 0);
64 return StatusCode::SUCCESS;
67 virtual StatusCode
stop() {
68 const bool is_multiprocess = (Gaudi::Concurrency::ConcurrencyFlags::numProcs() > 0);
70 if (!is_multiprocess) {
78 return StatusCode::SUCCESS;
85 void handle(
const Incident & incident)
override
87 const bool is_multiprocess = (Gaudi::Concurrency::ConcurrencyFlags::numProcs() > 0);
93 throw GaudiException(
"Failed to initialize the XRT setup!",
94 "StateHandler::handle",
#define ATH_CHECK
Evaluate an expression and check for errors.
Base class to provide common infrastructure for handling multiprocess state transitions for FPGA.
virtual StatusCode initialize()
void handle(const Incident &incident) override
virtual StatusCode initialize_worker()
Initialization per process.
virtual StatusCode stop_worker()
clean up
virtual StatusCode stop()
virtual StatusCode initialize_global()
Glocal XRT initialization.
virtual ~StateHandler()=default
static const std::string & type()
Incident type.