![]() |
ATLAS Offline Software
|
CUDA implementation of AthCUDA::StreamPoolSvc.
More...
#include <StreamPoolSvcImpl.h>
Public Member Functions | |
| StreamPoolSvcImpl (unsigned int nStreams, IStreamPoolSvc &svc) | |
| Constructor with all necessary arguments. More... | |
| StreamPoolSvcImpl (const StreamPoolSvcImpl &)=delete | |
| Copy constructor. More... | |
| StreamPoolSvcImpl (StreamPoolSvcImpl &&parent) | |
| Move constructor. More... | |
| ~StreamPoolSvcImpl () | |
| Destructor. More... | |
| StreamPoolSvcImpl & | operator= (const StreamPoolSvcImpl &)=delete |
| Copy assignment operator. More... | |
| StreamPoolSvcImpl & | operator= (StreamPoolSvcImpl &&rhs) |
| Move assignment operator. More... | |
Interface implementing parts of @c AthCUDA::IStreamPoolSvc | |
| StreamHolder | getAvailableStream () |
| Get a stream from the pool. More... | |
| void | yieldStream (StreamHolder &stream) |
| Put a given stream back into the pool. More... | |
Private Attributes | |
| IStreamPoolSvc * | m_svc |
| The service that this object is used by. More... | |
| StreamPoolSvcImplData * | m_data |
| Data used by the class behind the scenes. More... | |
CUDA implementation of AthCUDA::StreamPoolSvc.
Definition at line 18 of file StreamPoolSvcImpl.h.
| AthCUDA::StreamPoolSvcImpl::StreamPoolSvcImpl | ( | unsigned int | nStreams, |
| IStreamPoolSvc & | svc | ||
| ) |
Constructor with all necessary arguments.
|
delete |
Copy constructor.
| AthCUDA::StreamPoolSvcImpl::StreamPoolSvcImpl | ( | StreamPoolSvcImpl && | parent | ) |
Move constructor.
| AthCUDA::StreamPoolSvcImpl::~StreamPoolSvcImpl | ( | ) |
Destructor.
| StreamHolder AthCUDA::StreamPoolSvcImpl::getAvailableStream | ( | ) |
Get a stream from the pool.
Note that the returned holder may point to a null memory address, in case no streams are available at the moment of the call.
|
delete |
Copy assignment operator.
| StreamPoolSvcImpl& AthCUDA::StreamPoolSvcImpl::operator= | ( | StreamPoolSvcImpl && | rhs | ) |
Move assignment operator.
| void AthCUDA::StreamPoolSvcImpl::yieldStream | ( | StreamHolder & | stream | ) |
Put a given stream back into the pool.
This is a function called by AthCUDA::StreamHolder behind the scenes when it goes out of scope. It should not be called by hand.
| stream | The stream holder whose stream is to be put back into the pool |
|
private |
Data used by the class behind the scenes.
Definition at line 63 of file StreamPoolSvcImpl.h.
|
private |
The service that this object is used by.
Definition at line 61 of file StreamPoolSvcImpl.h.
1.8.18