7#ifndef ATHEXHIP_HIPSTATEHANDLER_H
8#define ATHEXHIP_HIPSTATEHANDLER_H
10#include "GaudiKernel/IIncidentListener.h"
11#include "GaudiKernel/IIncidentSvc.h"
12#include "GaudiKernel/ConcurrencyFlags.h"
13#include "GaudiKernel/ServiceHandle.h"
34 return StatusCode::SUCCESS;
40 return StatusCode::SUCCESS;
46 return StatusCode::SUCCESS;
53 const bool is_multiprocess = (Gaudi::Concurrency::ConcurrencyFlags::numProcs() > 0);
65 return StatusCode::SUCCESS;
68 virtual StatusCode
stop() {
69 const bool is_multiprocess = (Gaudi::Concurrency::ConcurrencyFlags::numProcs() > 0);
71 if (!is_multiprocess) {
79 return StatusCode::SUCCESS;
86 void handle(
const Incident & incident)
override
88 const bool is_multiprocess = (Gaudi::Concurrency::ConcurrencyFlags::numProcs() > 0);
94 throw GaudiException(
"Failed to initialize the device setup!",
95 "DeviceStateHandler::handle",
#define ATH_CHECK
Evaluate an expression and check for errors.
Base class to provide common infrastructure for handling multiprocess state transitions for GPU.
virtual StatusCode stop()
virtual StatusCode stop_worker()
clean up
virtual StatusCode initialize_global()
Glocal initialization.
virtual StatusCode initialize()
virtual ~DeviceStateHandler()=default
virtual StatusCode initialize_worker()
Initialization per process.
void handle(const Incident &incident) override
static const std::string & type()
Incident type.