Public Member Functions

eq::base::RefPtr< T > Class Template Reference

A smart reference pointer. More...

#include <refPtr.h>

Collaboration diagram for eq::base::RefPtr< T >:

List of all members.

Public Member Functions

 RefPtr ()
 Construct a new, empty reference pointer.
 RefPtr (T *const ptr)
 Construct a reference pointer from a C pointer.
 RefPtr (const RefPtr &from)
 Construct a copy of a reference pointer.
template<class O >
 RefPtr (RefPtr< O > from)
 Construct a copy of a reference pointer of a different type.
 ~RefPtr ()
 Destruct this reference pointer.
RefPtroperator= (const RefPtr &rhs)
 Assign another RefPtr to this reference pointer.
RefPtroperator= (T *ptr)
 Assign a C pointer to this reference pointer.
bool operator== (const RefPtr &rhs) const
bool operator!= (const RefPtr &rhs) const
bool operator< (const RefPtr &rhs) const
bool operator> (const RefPtr &rhs) const
bool operator! () const
bool operator== (const T *ptr) const
bool operator!= (const T *ptr) const
T * operator-> ()
 Access the held object.
const T * operator-> () const
 Access the held object.
T & operator* ()
 Access the held object.
const T & operator* () const
 Access the held object.
T * get ()
const T * get () const
bool isValid () const

Detailed Description

template<class T>
class eq::base::RefPtr< T >

A smart reference pointer.

Relies on the held object to implement ref and unref correctly.

Definition at line 46 of file refPtr.h.


Constructor & Destructor Documentation

template<class T>
eq::base::RefPtr< T >::RefPtr (  ) [inline]

Construct a new, empty reference pointer.

Version:
1.0

Definition at line 50 of file refPtr.h.

template<class T>
eq::base::RefPtr< T >::RefPtr ( T *const   ptr ) [inline]

Construct a reference pointer from a C pointer.

Version:
1.0

Definition at line 53 of file refPtr.h.

template<class T>
eq::base::RefPtr< T >::RefPtr ( const RefPtr< T > &  from ) [inline]

Construct a copy of a reference pointer.

Version:
1.0

Definition at line 56 of file refPtr.h.

template<class T>
template<class O >
eq::base::RefPtr< T >::RefPtr ( RefPtr< O >  from ) [inline]

Construct a copy of a reference pointer of a different type.

Version:
1.0

Definition at line 62 of file refPtr.h.

template<class T>
eq::base::RefPtr< T >::~RefPtr (  ) [inline]

Destruct this reference pointer.

Version:
1.0

Definition at line 66 of file refPtr.h.


Member Function Documentation

template<class T>
T* eq::base::RefPtr< T >::get (  ) [inline]
Returns:
the C pointer.
Version:
1.0

Definition at line 151 of file refPtr.h.

template<class T>
const T* eq::base::RefPtr< T >::get (  ) const [inline]
Returns:
the C pointer.
Version:
1.0

Definition at line 153 of file refPtr.h.

template<class T>
bool eq::base::RefPtr< T >::isValid (  ) const [inline]
Returns:
true if the RefPtr holds a non-0 pointer.
Version:
1.0

Definition at line 156 of file refPtr.h.

template<class T>
bool eq::base::RefPtr< T >::operator! (  ) const [inline]
Returns:
true if the RefPtr is empty.
Version:
1.0

Definition at line 123 of file refPtr.h.

template<class T>
bool eq::base::RefPtr< T >::operator!= ( const T *  ptr ) const [inline]
Returns:
true if the reference pointers does not hold the C pointer
Version:
1.0

Definition at line 135 of file refPtr.h.

template<class T>
bool eq::base::RefPtr< T >::operator!= ( const RefPtr< T > &  rhs ) const [inline]
Returns:
true if both reference pointer hold different C pointer.
Version:
1.0

Definition at line 105 of file refPtr.h.

template<class T>
const T& eq::base::RefPtr< T >::operator* (  ) const [inline]

Access the held object.

Version:
1.0

Definition at line 147 of file refPtr.h.

template<class T>
T& eq::base::RefPtr< T >::operator* (  ) [inline]

Access the held object.

Version:
1.0

Definition at line 144 of file refPtr.h.

template<class T>
const T* eq::base::RefPtr< T >::operator-> (  ) const [inline]

Access the held object.

Version:
1.0

Definition at line 141 of file refPtr.h.

template<class T>
T* eq::base::RefPtr< T >::operator-> (  ) [inline]

Access the held object.

Version:
1.0

Definition at line 138 of file refPtr.h.

template<class T>
bool eq::base::RefPtr< T >::operator< ( const RefPtr< T > &  rhs ) const [inline]
Returns:
true if the left RefPtr is smaller then the right.
Version:
1.0

Definition at line 112 of file refPtr.h.

template<class T>
RefPtr& eq::base::RefPtr< T >::operator= ( T *  ptr ) [inline]

Assign a C pointer to this reference pointer.

Version:
1.0

Definition at line 82 of file refPtr.h.

template<class T>
RefPtr& eq::base::RefPtr< T >::operator= ( const RefPtr< T > &  rhs ) [inline]

Assign another RefPtr to this reference pointer.

Version:
1.0

Definition at line 69 of file refPtr.h.

template<class T>
bool eq::base::RefPtr< T >::operator== ( const T *  ptr ) const [inline]
Returns:
true if the reference pointers holds the C pointer.
Version:
1.0

Definition at line 129 of file refPtr.h.

template<class T>
bool eq::base::RefPtr< T >::operator== ( const RefPtr< T > &  rhs ) const [inline]
Returns:
true if both reference pointers hold the same C pointer.
Version:
1.0

Definition at line 98 of file refPtr.h.

template<class T>
bool eq::base::RefPtr< T >::operator> ( const RefPtr< T > &  rhs ) const [inline]
Returns:
true if the right RefPtr is smaller then the left.
Version:
1.0

Definition at line 119 of file refPtr.h.


The documentation for this class was generated from the following file:
Generated on Wed Dec 22 2010 15:45:48 for Equalizer 1.0-alpha by  1.7.2