ATLAS Offline Software
Loading...
Searching...
No Matches
StreamSvcAdaptorTool.h
Go to the documentation of this file.
1//
2// Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3//
4#ifndef ATHCUDASERVICES_STREAMSVCADAPTORTOOL_H
5#define ATHCUDASERVICES_STREAMSVCADAPTORTOOL_H
6
7// Framework include(s).
9#include "GaudiKernel/ServiceHandle.h"
10
11// AthCUDA include(s).
14
15namespace AthCUDA {
16
26class StreamSvcAdaptorTool : public extends<AthAlgTool, IStreamTool> {
27
28 public:
29 // Inherit the base class's constructor(s).
30 using extends::extends;
31
34
36 virtual StatusCode initialize() override;
37
39
42
48 virtual cudaStream_t stream(const EventContext& ctx) const override;
49
51
52 private:
55 this, "StreamSvc", "", "Service providing the 'adapted' CUDA streams"};
56
57}; // class StreamSvcAdaptorTool
58
59} // namespace AthCUDA
60
61#endif // ATHCUDASERVICES_STREAMSVCADAPTORTOOL_H
Tool exposing a CUDA stream service as a CUDA stream tool.
virtual cudaStream_t stream(const EventContext &ctx) const override
Get the CUDA stream to use.
ServiceHandle< IStreamSvc > m_svc
Handle to the service providing the CUDA streams.
virtual StatusCode initialize() override
Initialize the tool.
Definition Info.h:14