Open CASCADE Technology
6.9.0
|
Purpose: This template class is used to define Handle adaptor for allocated dynamically objects of arbitrary type. More...
#include <NCollection_Handle.hxx>
Public Types | |
typedef T | element_type |
Public Member Functions | |
NCollection_Handle () | |
Default constructor; creates null handle. More... | |
NCollection_Handle (T *theObject) | |
Constructor of handle from pointer on newly allocated object. More... | |
T * | operator-> () |
Cast handle to contained type. More... | |
const T * | operator-> () const |
Cast handle to contained type. More... | |
T & | operator* () |
Cast handle to contained type. More... | |
const T & | operator* () const |
Cast handle to contained type. More... | |
Static Public Member Functions | |
static NCollection_Handle< T > | DownCast (const Handle< Standard_Transient > &theOther) |
Downcast arbitrary Handle to the argument type if contained object is Handle for this type; returns null otherwise. More... | |
Purpose: This template class is used to define Handle adaptor for allocated dynamically objects of arbitrary type.
The advantage is that this handle will automatically destroy the object when last referred Handle is destroyed (i.e. it is a typical smart pointer), and that it can be handled as Handle(Standard_Transient) in OCCT components.
Use it as follows:
NCollection_Handle<T> aPtr = new T (...);
aPtr->Method(...);
Handle(Standard_Transient) aBase = aPtr; if ( aBase->IsKind(STANDARD_TYPE(NCollection_Handle)) ) { NCollection_Handle<T> aPtr2 = NCollection_Handle<T>::DownCast (aBase); if ( ! aPtr2.IsNull() ) aPtr2->Method2(); }
typedef T NCollection_Handle< T >::element_type |
|
inline |
Default constructor; creates null handle.
|
inline |
Constructor of handle from pointer on newly allocated object.
|
inlinestatic |
Downcast arbitrary Handle to the argument type if contained object is Handle for this type; returns null otherwise.
|
inline |
Cast handle to contained type.
|
inline |
Cast handle to contained type.
|
inline |
Cast handle to contained type.
|
inline |
Cast handle to contained type.