#include <ScopedContext.h>
Public Types | |
using | Queue = TQueue |
using | ScopedContextBase = impl::ScopedContextBase< Queue > |
Public Types inherited from cms::alpakatools::impl::ScopedContextBase< TQueue > | |
using | Device = alpaka::Dev< Queue > |
using | Platform = alpaka::Pltf< Device > |
using | Queue = TQueue |
Public Member Functions | |
template<typename F > | |
void | pushNextTask (F &&f) |
Queue & | queue () |
const std::shared_ptr< Queue > & | queuePtr () const |
void | replaceWaitingTaskHolder (edm::WaitingTaskWithArenaHolder waitingTaskHolder) |
ScopedContextTask (ContextState< Queue > const *state, edm::WaitingTaskWithArenaHolder waitingTaskHolder) | |
Constructor to re-use the queue of acquire() (ExternalWork module) More... | |
~ScopedContextTask () | |
Public Member Functions inherited from cms::alpakatools::impl::ScopedContextBase< TQueue > | |
Device | device () const |
Queue & | queue () |
const std::shared_ptr< Queue > & | queuePtr () const |
Private Attributes | |
ContextState< Queue > const * | contextState_ |
impl::ScopedContextHolderHelper | holderHelper_ |
Additional Inherited Members | |
Protected Member Functions inherited from cms::alpakatools::impl::ScopedContextBase< TQueue > | |
ScopedContextBase (ProductBase< Queue > const &data) | |
ScopedContextBase (std::shared_ptr< Queue > queue) | |
ScopedContextBase (edm::StreamID streamID) | |
The aim of this class is to do necessary per-task "initialization" tasks created in ExternalWork acquire():
Definition at line 251 of file ScopedContext.h.
using cms::alpakatools::ScopedContextTask< TQueue, typename >::Queue = TQueue |
Definition at line 253 of file ScopedContext.h.
using cms::alpakatools::ScopedContextTask< TQueue, typename >::ScopedContextBase = impl::ScopedContextBase<Queue> |
Definition at line 254 of file ScopedContext.h.
|
inlineexplicit |
Constructor to re-use the queue of acquire() (ExternalWork module)
Definition at line 259 of file ScopedContext.h.
References eostools::move().
|
inline |
Definition at line 264 of file ScopedContext.h.
References cms::alpakatools::impl::ScopedContextHolderHelper::enqueueCallback(), cms::alpakatools::ScopedContextTask< TQueue, typename >::holderHelper_, and cms::alpakatools::impl::ScopedContextBase< TQueue >::queue().
|
inline |
Definition at line 267 of file ScopedContext.h.
References cms::alpakatools::ScopedContextTask< TQueue, typename >::contextState_, f, cms::alpakatools::ScopedContextTask< TQueue, typename >::holderHelper_, and cms::alpakatools::impl::ScopedContextHolderHelper::pushNextTask().
|
inline |
Definition at line 39 of file ScopedContext.h.
|
inline |
Definition at line 40 of file ScopedContext.h.
|
inline |
Definition at line 271 of file ScopedContext.h.
References cms::alpakatools::ScopedContextTask< TQueue, typename >::holderHelper_, eostools::move(), and cms::alpakatools::impl::ScopedContextHolderHelper::replaceWaitingTaskHolder().
|
private |
Definition at line 277 of file ScopedContext.h.
Referenced by cms::alpakatools::ScopedContextTask< TQueue, typename >::pushNextTask().
|
private |
Definition at line 276 of file ScopedContext.h.
Referenced by cms::alpakatools::ScopedContextTask< TQueue, typename >::pushNextTask(), cms::alpakatools::ScopedContextTask< TQueue, typename >::replaceWaitingTaskHolder(), and cms::alpakatools::ScopedContextTask< TQueue, typename >::~ScopedContextTask().