This is the documentation for Enlighten.

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

template<typename T>
class Geo::GeoIntrusivePtr

A value type to take ownership of a raw object allocated on the heap and handle calling AddRef() and Release().

Functions

Name Description
~GeoIntrusivePtr()

Destructor - Delete the internal object.

Delete()

Explicitly delete the internal object.

Detach()

Return the object to the client.

GeoIntrusivePtr(T *)

Constructor to take ownership of the raw-ptr obj. Explicit so that you don't unknowingly change ownership.

GeoIntrusivePtr(const Geo::GeoIntrusivePtr< T > &)

Construct from existing GeoIntrusivePtr, incrementing the reference count.

GeoIntrusivePtr(const Geo::GeoIntrusivePtr< TOther > &)

Add a reference to the payload of other Geo::GeoIntrusivePtr, as long as the pointers are compatible.

GetPtr()

Explicitly return the contained type.

operator bool_type()

Is the object valid?

operator!=(Geo::GeoIntrusivePtr< T >)

Equivalence/comparison tests.

operator*()

Allow dereferencing of the contained type.

operator<(Geo::GeoIntrusivePtr< T >)

Equivalence/comparison tests.

operator=(const Geo::GeoIntrusivePtr< T > &)

Assignment.

operator==(Geo::GeoIntrusivePtr< T >)

Equivalence/comparison tests.

operator>(Geo::GeoIntrusivePtr< T >)

Equivalence/comparison tests.

operator->()

Access members of the owned object.

Reset(T *)

Hold new object, releasing current.


Geo::GeoIntrusivePtr< T >::~GeoIntrusivePtr


public: ~GeoIntrusivePtr()


Destructor - Delete the internal object.


void Geo::GeoIntrusivePtr< T >::Delete


public: void Delete()


Explicitly delete the internal object.


T* Geo::GeoIntrusivePtr< T >::Detach


public: T * Detach()


Return the object to the client.

From then on its the client's responsibility to release it.


Geo::GeoIntrusivePtr< T >::GeoIntrusivePtr


public: GeoIntrusivePtr
(
    T * obj
)


Constructor to take ownership of the raw-ptr obj. Explicit so that you don't unknowingly change ownership.


Geo::GeoIntrusivePtr< T >::GeoIntrusivePtr


public: GeoIntrusivePtr
(
    const Geo::GeoIntrusivePtr< T > & rhs
)


Construct from existing GeoIntrusivePtr, incrementing the reference count.


Geo::GeoIntrusivePtr< T >::GeoIntrusivePtr


public: GeoIntrusivePtr
(
    const Geo::GeoIntrusivePtr< TOther > & rhs
)


Add a reference to the payload of other Geo::GeoIntrusivePtr, as long as the pointers are compatible.


T* Geo::GeoIntrusivePtr< T >::GetPtr


public: T * GetPtr() const


Explicitly return the contained type.


Geo::GeoIntrusivePtr< T >::operator bool_type


public: operator bool_type() const


Is the object valid?


bool Geo::GeoIntrusivePtr< T >::operator!=


public: bool operator!=
(
    Geo::GeoIntrusivePtr< T > rhs
)


Equivalence/comparison tests.


T& Geo::GeoIntrusivePtr< T >::operator*


public: T & operator*() const


Allow dereferencing of the contained type.


bool Geo::GeoIntrusivePtr< T >::operator<


public: bool operator<
(
    Geo::GeoIntrusivePtr< T > rhs
)


Equivalence/comparison tests.


Geo::GeoIntrusivePtr<T>& Geo::GeoIntrusivePtr< T >::operator=


public: Geo::GeoIntrusivePtr< T > & operator=
(
    const Geo::GeoIntrusivePtr< T > & obj
)


Assignment.


bool Geo::GeoIntrusivePtr< T >::operator==


public: bool operator==
(
    Geo::GeoIntrusivePtr< T > rhs
)


Equivalence/comparison tests.


bool Geo::GeoIntrusivePtr< T >::operator>


public: bool operator>
(
    Geo::GeoIntrusivePtr< T > rhs
)


Equivalence/comparison tests.


T* Geo::GeoIntrusivePtr< T >::operator->


public: T * operator->() const


Access members of the owned object.


void Geo::GeoIntrusivePtr< T >::Reset


public: void Reset
(
    T * obj
)


Hold new object, releasing current.

  • No labels