HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_COWReadHandle< T > Class Template Reference

#include <DEP_ContextOptionsFwd.h>

Public Member Functions

 UT_COWReadHandle ()
 
 ~UT_COWReadHandle ()
 
 UT_COWReadHandle (const UT_COWReadHandle< Data > &src)
 
 UT_COWReadHandle (const UT_COWHandle< Data > &src)
 
const UT_COWReadHandle< Data > & operator= (const UT_COWReadHandle< Data > &src)
 
const UT_COWReadHandle< Data > & operator= (const UT_COWHandle< Data > &src)
 
void resetHandle ()
 Removes references, making this a null pointer. More...
 
bool isNull () const
 Test if this is a NULL pointer. More...
 
const Data & operator* () const
 
const Data * operator-> () const
 
const Data * get () const
 
int getRefCount () const
 

Detailed Description

template<typename T>
class UT_COWReadHandle< T >

This is a copy-on-write shared pointer to data. If you create a writehandle, it will uniquify the underlying data. Do not pass references to handles or pointers to them around. This can cause you to invalidate the tracking of copies. In any case, passing by value is fast.

Read Handles are copies of the original handle that have their internal data exposed. You are not allowed to edit them, so many read handles may be sharing the same underlying data.

Examples:
field3d/f3d_io.C, GEO/GEO_VoxelTranslator.C, SOP/SOP_Surface.C, and standalone/geo2voxel.C.

Definition at line 15 of file DEP_ContextOptionsFwd.h.

Constructor & Destructor Documentation

template<typename T>
UT_COWReadHandle< T >::UT_COWReadHandle ( )
inline

Definition at line 168 of file UT_COW.h.

template<typename T>
UT_COWReadHandle< T >::~UT_COWReadHandle ( )
inline

Definition at line 173 of file UT_COW.h.

template<typename T>
UT_COWReadHandle< T >::UT_COWReadHandle ( const UT_COWReadHandle< Data > &  src)
inline

Definition at line 178 of file UT_COW.h.

template<typename T>
UT_COWReadHandle< T >::UT_COWReadHandle ( const UT_COWHandle< Data > &  src)
inline

Definition at line 183 of file UT_COW.h.

Member Function Documentation

template<typename T>
const Data* UT_COWReadHandle< T >::get ( ) const
inline

Definition at line 225 of file UT_COW.h.

template<typename T>
int UT_COWReadHandle< T >::getRefCount ( ) const
inline

Definition at line 230 of file UT_COW.h.

template<typename T>
bool UT_COWReadHandle< T >::isNull ( ) const
inline

Test if this is a NULL pointer.

Definition at line 211 of file UT_COW.h.

template<typename T>
const Data& UT_COWReadHandle< T >::operator* ( ) const
inline

Definition at line 216 of file UT_COW.h.

template<typename T>
const Data* UT_COWReadHandle< T >::operator-> ( ) const
inline

Definition at line 221 of file UT_COW.h.

template<typename T>
const UT_COWReadHandle<Data>& UT_COWReadHandle< T >::operator= ( const UT_COWReadHandle< Data > &  src)
inline

Definition at line 188 of file UT_COW.h.

template<typename T>
const UT_COWReadHandle<Data>& UT_COWReadHandle< T >::operator= ( const UT_COWHandle< Data > &  src)
inline

Definition at line 194 of file UT_COW.h.

template<typename T>
void UT_COWReadHandle< T >::resetHandle ( )
inline

Removes references, making this a null pointer.

Definition at line 205 of file UT_COW.h.


The documentation for this class was generated from the following files: