CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes | Friends
edm::TaskBase Class Referenceabstract

#include <TaskBase.h>

Inheritance diagram for edm::TaskBase:
edm::FunctorTask< F > edm::WaitingTask edm::FinalWaitingTask edm::FunctorWaitingTask< F > edm::Worker::AcquireTask< T, DUMMY > edm::Worker::AcquireTask< OccurrenceTraits< EventPrincipal, BranchActionStreamBegin >, DUMMY > edm::Worker::HandleExternalWorkExceptionTask edm::Worker::RunModuleTask< T >

Public Member Functions

unsigned int decrement_ref_count ()
 
virtual void execute ()=0
 
void increment_ref_count ()
 
 TaskBase ()
 Constructor. More...
 
virtual ~TaskBase ()=default
 

Private Member Functions

virtual void recycle ()
 

Private Attributes

std::atomic< unsigned int > m_refCount {0}
 

Friends

class TaskSentry
 

Detailed Description

Definition at line 31 of file TaskBase.h.

Constructor & Destructor Documentation

edm::TaskBase::TaskBase ( )
inline

Constructor.

Definition at line 36 of file TaskBase.h.

36 : m_refCount{0} {}
std::atomic< unsigned int > m_refCount
Definition: TaskBase.h:47
virtual edm::TaskBase::~TaskBase ( )
virtualdefault

Member Function Documentation

unsigned int edm::TaskBase::decrement_ref_count ( )
inline

Definition at line 42 of file TaskBase.h.

References m_refCount.

Referenced by edm::WaitingTaskList::add(), edm::WaitingTaskWithArenaHolder::makeWaitingTaskHolderAndRelease(), and edm::Worker::prePrefetchSelectionAsync().

42 { return --m_refCount; }
std::atomic< unsigned int > m_refCount
Definition: TaskBase.h:47
virtual void edm::TaskBase::execute ( )
pure virtual
void edm::TaskBase::increment_ref_count ( )
inline
virtual void edm::TaskBase::recycle ( )
inlineprivatevirtual

Reimplemented in edm::FinalWaitingTask.

Definition at line 45 of file TaskBase.h.

Referenced by edm::TaskSentry::~TaskSentry().

45 { delete this; }

Friends And Related Function Documentation

friend class TaskSentry
friend

Definition at line 33 of file TaskBase.h.

Member Data Documentation

std::atomic<unsigned int> edm::TaskBase::m_refCount {0}
private

Definition at line 47 of file TaskBase.h.

Referenced by decrement_ref_count(), and increment_ref_count().