ATLAS Offline Software
|
Holder for recyclable objects. More...
#include <RecyclableDataObject.h>
Public Types | |
typedef RecyclableDataObject< DOBJ >::queue_t | queue_t |
Underlying queue type holding these objects. More... | |
Public Member Functions | |
RecyclableDataQueue () | |
Constructor. More... | |
template<typename... ARGS> | |
DOBJ * | get (ARGS &&... args) |
Get an object, either a new one or one recycled from a previous event. More... | |
~RecyclableDataQueue () | |
Destructor. More... | |
Private Attributes | |
std::shared_ptr< queue_t > | m_queue |
Shared reference to the actual queue. More... | |
Holder for recyclable objects.
See RecyclableDataObject
.
Definition at line 125 of file RecyclableDataObject.h.
typedef RecyclableDataObject<DOBJ>::queue_t Athena::RecyclableDataQueue< DOBJ >::queue_t |
Underlying queue type holding these objects.
Definition at line 129 of file RecyclableDataObject.h.
Athena::RecyclableDataQueue< DOBJ >::RecyclableDataQueue | ( | ) |
Constructor.
Athena::RecyclableDataQueue< DOBJ >::~RecyclableDataQueue | ( | ) |
Destructor.
Free all objects in the queue.
DOBJ* Athena::RecyclableDataQueue< DOBJ >::get | ( | ARGS &&... | args | ) |
Get an object, either a new one or one recycled from a previous event.
args... | Arguments to pass to the DOBJ constructor if we make a new one. |
|
private |
Shared reference to the actual queue.
Each data object also has a reference to the queue.
Definition at line 157 of file RecyclableDataObject.h.