CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Private Member Functions | Private Attributes | Friends
cmsutils::_bqueue_item< T > Class Template Reference

#include <bqueue.h>

Inheritance diagram for cmsutils::_bqueue_item< T >:
BlockWipedAllocated< _bqueue_item< T > >

Private Member Functions

 _bqueue_item ()
 
 _bqueue_item (boost::intrusive_ptr< _bqueue_item< T > > tail, const T &val)
 
 _bqueue_item (boost::intrusive_ptr< _bqueue_item< T > > tail, T &&val)
 
template<typename... Args>
 _bqueue_item (boost::intrusive_ptr< _bqueue_item< T > > tail, Args &&...args)
 
void addRef ()
 
void delRef ()
 

Private Attributes

boost::intrusive_ptr
< _bqueue_item< T > > 
back
 
unsigned int refCount
 
T const value
 

Friends

class _bqueue_itr< T >
 
class bqueue< T >
 
void intrusive_ptr_add_ref (_bqueue_item< T > *it)
 
void intrusive_ptr_release (_bqueue_item< T > *it)
 

Additional Inherited Members

- Static Public Member Functions inherited from BlockWipedAllocated< _bqueue_item< T > >
static void * alloc ()
 
static BlockWipedAllocatorallocator ()
 
static void dealloc (void *p)
 
static void destroy (_bqueue_item< T > *p)
 
static void operator delete (void *p)
 
static void * operator new (size_t)
 
static void * operator new (size_t, void *p)
 
static BlockWipedAllocator::Stat stat ()
 

Detailed Description

template<class T>
class cmsutils::_bqueue_item< T >

Definition at line 41 of file bqueue.h.

Constructor & Destructor Documentation

template<class T>
cmsutils::_bqueue_item< T >::_bqueue_item ( )
inlineprivate

Definition at line 54 of file bqueue.h.

54 : back(0), value(), refCount(0) { }
unsigned int refCount
Definition: bqueue.h:65
boost::intrusive_ptr< _bqueue_item< T > > back
Definition: bqueue.h:63
template<class T>
cmsutils::_bqueue_item< T >::_bqueue_item ( boost::intrusive_ptr< _bqueue_item< T > >  tail,
const T val 
)
inlineprivate

Definition at line 55 of file bqueue.h.

55 : back(tail), value(val), refCount(0) { }
unsigned int refCount
Definition: bqueue.h:65
boost::intrusive_ptr< _bqueue_item< T > > back
Definition: bqueue.h:63
template<class T>
cmsutils::_bqueue_item< T >::_bqueue_item ( boost::intrusive_ptr< _bqueue_item< T > >  tail,
T &&  val 
)
inlineprivate

Definition at line 57 of file bqueue.h.

57  :
58  back(tail), value(std::move(val)), refCount(0) { }
unsigned int refCount
Definition: bqueue.h:65
boost::intrusive_ptr< _bqueue_item< T > > back
Definition: bqueue.h:63
template<class T>
template<typename... Args>
cmsutils::_bqueue_item< T >::_bqueue_item ( boost::intrusive_ptr< _bqueue_item< T > >  tail,
Args &&...  args 
)
inlineprivate

Definition at line 61 of file bqueue.h.

61  :
62  back(tail), value(std::forward<Args>(args)...), refCount(0) { }
unsigned int refCount
Definition: bqueue.h:65
boost::intrusive_ptr< _bqueue_item< T > > back
Definition: bqueue.h:63

Member Function Documentation

template<class T>
void cmsutils::_bqueue_item< T >::addRef ( )
inlineprivate

Definition at line 51 of file bqueue.h.

References cmsutils::_bqueue_item< T >::refCount.

Referenced by cmsutils::intrusive_ptr_add_ref().

51 { ++refCount; }
unsigned int refCount
Definition: bqueue.h:65
template<class T>
void cmsutils::_bqueue_item< T >::delRef ( )
inlineprivate

Definition at line 52 of file bqueue.h.

References cmsutils::_bqueue_item< T >::refCount.

Referenced by cmsutils::intrusive_ptr_release().

52 { if ((--refCount) == 0) delete this; }
unsigned int refCount
Definition: bqueue.h:65

Friends And Related Function Documentation

template<class T>
friend class _bqueue_itr< T >
friend

Definition at line 48 of file bqueue.h.

template<class T>
friend class bqueue< T >
friend

Definition at line 47 of file bqueue.h.

template<class T>
void intrusive_ptr_add_ref ( _bqueue_item< T > *  it)
friend
template<class T>
void intrusive_ptr_release ( _bqueue_item< T > *  it)
friend

Member Data Documentation

template<class T>
boost::intrusive_ptr< _bqueue_item<T> > cmsutils::_bqueue_item< T >::back
private

Definition at line 63 of file bqueue.h.

template<class T>
unsigned int cmsutils::_bqueue_item< T >::refCount
private
template<class T>
T const cmsutils::_bqueue_item< T >::value
private