counted_ptr< X > Class Template Reference

#include <counted_ptr.h>

List of all members.

Public Types

typedef X element_type

Public Member Functions

 counted_ptr (X *p=0)
 ~counted_ptr ()
 counted_ptr (const counted_ptr &r) throw ()
counted_ptroperator= (const counted_ptr &r)
template<class Y>
 counted_ptr (const counted_ptr< Y > &r) throw ()
template<class Y>
counted_ptroperator= (const counted_ptr< Y > &r)
X & operator * () const throw ()
X * operator-> () const throw ()
X * get () const throw ()
bool unique () const throw ()

Private Member Functions

void acquire (counter *c) throw ()
void release ()

Private Attributes

counted_ptr::counteritsCounter

Friends

class counted_ptr< Y >

Classes

struct  counter

template<class X>
class counted_ptr< X >


Member Typedef Documentation

template<class X>
typedef X counted_ptr< X >::element_type


Constructor & Destructor Documentation

template<class X>
counted_ptr< X >::counted_ptr ( X *  p = 0  )  [inline, explicit]

template<class X>
counted_ptr< X >::~counted_ptr (  )  [inline]

template<class X>
counted_ptr< X >::counted_ptr ( const counted_ptr< X > &  r  )  throw () [inline]

template<class X>
template<class Y>
counted_ptr< X >::counted_ptr ( const counted_ptr< Y > &  r  )  throw () [inline]


Member Function Documentation

template<class X>
void counted_ptr< X >::acquire ( counter c  )  throw () [inline, private]

template<class X>
X* counted_ptr< X >::get (  )  const throw () [inline]

template<class X>
X& counted_ptr< X >::operator * (  )  const throw () [inline]

template<class X>
X* counted_ptr< X >::operator-> (  )  const throw () [inline]

template<class X>
template<class Y>
counted_ptr& counted_ptr< X >::operator= ( const counted_ptr< Y > &  r  )  [inline]

template<class X>
counted_ptr& counted_ptr< X >::operator= ( const counted_ptr< X > &  r  )  [inline]

template<class X>
void counted_ptr< X >::release (  )  [inline, private]

template<class X>
bool counted_ptr< X >::unique (  )  const throw () [inline]


Friends And Related Function Documentation

template<class X>
friend class counted_ptr< Y > [friend]


Member Data Documentation

template<class X>
struct counted_ptr::counter* counted_ptr< X >::itsCounter [private]


The documentation for this class was generated from the following file:
Generated on Tue Sep 25 10:20:31 2007 for rpa by  doxygen 1.4.7