Class Acts::Cuda::StreamWrapper¶
-
class Acts::Cuda::StreamWrapper¶
Helper class for passing around
cudaStream_t
objects (pointers)In order to be able to create user interfaces that return/receive CUDA streams, while not exposing the users of those interfaces to the CUDA Runtime API, this class helps us hiding the concrete CUDA types from our interfaces.
Public Functions
-
StreamWrapper(void *stream, bool ownsStream = true)¶
Declare the
Acts::Cuda::getStreamFrom
function a frient of the class.Note that it’s not practical to put that function into the
Acts::Cuda::details
namespace, because then we would be forced to forward declare it in this header. Constructor with the stream to be wrapped
-
StreamWrapper(StreamWrapper &&parent)¶
Move constructor.
-
StreamWrapper(const StreamWrapper&) = delete¶
Disabled copy constructor.
-
~StreamWrapper()¶
Destructor.
-
StreamWrapper &operator=(StreamWrapper &&rhs)¶
Move assignment operator.
-
StreamWrapper &operator=(const StreamWrapper&) = delete¶
Disabled copy assignment operator.
-
void synchronize() const¶
Wait for all scheduled operations to finish in the stream.
-
StreamWrapper(void *stream, bool ownsStream = true)¶