ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
AthDevice
AthDeviceInterfaces
AthDeviceInterfaces
ICopiesTool.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 ATHDEVICEINTERFACES_ICOPIESTOOL_H
5
#define ATHDEVICEINTERFACES_ICOPIESTOOL_H
6
7
// Framework include(s).
8
#include "GaudiKernel/EventContext.h"
9
#include "GaudiKernel/IAlgTool.h"
10
11
// VecMem include(s).
12
#include <vecmem/utils/copy.hpp>
13
14
// System include(s).
15
#include <memory>
16
17
namespace
AthDevice
{
18
40
class
ICopiesTool
:
virtual
public
IAlgTool {
41
42
public
:
44
DeclareInterfaceID
(
ICopiesTool
, 1, 0);
45
47
virtual
~ICopiesTool
() =
default
;
48
50
virtual
std::shared_ptr<const vecmem::copy>
hostCopy
(
51
const
EventContext& ctx)
const
= 0;
52
54
virtual
std::shared_ptr<const vecmem::copy>
deviceCopy
(
55
const
EventContext& ctx)
const
= 0;
56
57
};
// class ICopiesTool
58
59
}
// namespace AthDevice
60
61
#endif
// ATHDEVICEINTERFACES_ICOPIESTOOL_H
AthDevice::ICopiesTool
Interface for a tool that provides host and device copy objects.
Definition
ICopiesTool.h:40
AthDevice::ICopiesTool::DeclareInterfaceID
DeclareInterfaceID(ICopiesTool, 1, 0)
Declare the interface that the tool will implement.
AthDevice::ICopiesTool::hostCopy
virtual std::shared_ptr< const vecmem::copy > hostCopy(const EventContext &ctx) const =0
Get the "host" copy object.
AthDevice::ICopiesTool::~ICopiesTool
virtual ~ICopiesTool()=default
Destructor.
AthDevice::ICopiesTool::deviceCopy
virtual std::shared_ptr< const vecmem::copy > deviceCopy(const EventContext &ctx) const =0
Get the "device" copy object.
AthDevice
Definition
BinaryPageMemoryResourceSvc.cxx:15
Generated on
for ATLAS Offline Software by
1.17.0