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

#include <declareHandles.h>

Public Types

typedef SdfHandle< TThis
 
typedef T SpecType
 
typedef std::remove_const
< SpecType >::type 
NonConstSpecType
 
typedef SdfHandle
< NonConstSpecType
NonConstThis
 
typedef SpecType This::* UnspecifiedBoolType
 

Public Member Functions

 SdfHandle ()
 
 SdfHandle (TfNullPtrType)
 
 SdfHandle (const Sdf_IdentityRefPtr &id)
 
 SdfHandle (const SpecType &spec)
 
template<class U >
 SdfHandle (const SdfHandle< U > &x)
 
Thisoperator= (const This &x)
 
template<class U >
Thisoperator= (const SdfHandle< U > &x)
 
SpecTypeoperator-> () const
 
const SpecTypeGetSpec () const
 
void Reset ()
 
 operator UnspecifiedBoolType () const
 
bool operator! () const
 
template<class U >
bool operator== (const SdfHandle< U > &other) const
 Compares handles for equality. More...
 
template<class U >
bool operator< (const SdfHandle< U > &other) const
 

Friends

template<class U >
class SdfHandle
 
bool operator!= (const SdfHandle &lhs, const SdfHandle &rhs)
 
bool operator> (const SdfHandle &lhs, const SdfHandle &rhs)
 
bool operator<= (const SdfHandle &lhs, const SdfHandle &rhs)
 
bool operator>= (const SdfHandle &lhs, const SdfHandle &rhs)
 
size_t hash_value (const This &x)
 Hash. More...
 
SpecTypeget_pointer (const SdfHandle &x)
 

Detailed Description

template<class T>
class SdfHandle< T >

SdfHandle is a smart ptr that calls IsDormant() on the pointed-to object as an extra expiration check so that dormant objects appear to be expired.

Definition at line 62 of file declareHandles.h.

Member Typedef Documentation

template<class T>
typedef std::remove_const<SpecType>::type SdfHandle< T >::NonConstSpecType

Definition at line 67 of file declareHandles.h.

template<class T>
typedef SdfHandle<NonConstSpecType> SdfHandle< T >::NonConstThis

Definition at line 68 of file declareHandles.h.

template<class T>
typedef T SdfHandle< T >::SpecType

Definition at line 65 of file declareHandles.h.

template<class T>
typedef SdfHandle<T> SdfHandle< T >::This

Definition at line 64 of file declareHandles.h.

template<class T>
typedef SpecType This::* SdfHandle< T >::UnspecifiedBoolType

Definition at line 114 of file declareHandles.h.

Constructor & Destructor Documentation

template<class T>
SdfHandle< T >::SdfHandle ( )
inline

Definition at line 70 of file declareHandles.h.

template<class T>
SdfHandle< T >::SdfHandle ( TfNullPtrType  )
inline

Definition at line 71 of file declareHandles.h.

template<class T>
SdfHandle< T >::SdfHandle ( const Sdf_IdentityRefPtr id)
inlineexplicit

Definition at line 72 of file declareHandles.h.

template<class T>
SdfHandle< T >::SdfHandle ( const SpecType spec)
inline

Definition at line 73 of file declareHandles.h.

template<class T>
template<class U >
SdfHandle< T >::SdfHandle ( const SdfHandle< U > &  x)
inline

Definition at line 76 of file declareHandles.h.

Member Function Documentation

template<class T>
const SpecType& SdfHandle< T >::GetSpec ( ) const
inline

Definition at line 103 of file declareHandles.h.

template<class T>
SdfHandle< T >::operator UnspecifiedBoolType ( ) const
inline

Returns true in a boolean context if the object is valid, false otherwise.

Definition at line 119 of file declareHandles.h.

template<class T>
bool SdfHandle< T >::operator! ( void  ) const
inline

Returns false in a boolean context if the object is valid, true otherwise.

Definition at line 125 of file declareHandles.h.

template<class T>
SpecType* SdfHandle< T >::operator-> ( ) const
inline

Dereference. Raises a fatal error if the object is invalid or dormant.

Definition at line 93 of file declareHandles.h.

template<class T>
template<class U >
bool SdfHandle< T >::operator< ( const SdfHandle< U > &  other) const
inline

Arranges handles in an arbitrary strict weak ordering. Note that this ordering is stable across path changes.

Definition at line 146 of file declareHandles.h.

template<class T>
This& SdfHandle< T >::operator= ( const This x)
inline

Definition at line 78 of file declareHandles.h.

template<class T>
template<class U >
This& SdfHandle< T >::operator= ( const SdfHandle< U > &  x)
inline

Definition at line 85 of file declareHandles.h.

template<class T>
template<class U >
bool SdfHandle< T >::operator== ( const SdfHandle< U > &  other) const
inline

Compares handles for equality.

Definition at line 132 of file declareHandles.h.

template<class T>
void SdfHandle< T >::Reset ( )
inline

Definition at line 108 of file declareHandles.h.

Friends And Related Function Documentation

template<class T>
SpecType* get_pointer ( const SdfHandle< T > &  x)
friend

Definition at line 176 of file declareHandles.h.

template<class T>
size_t hash_value ( const This x)
friend

Hash.

Definition at line 170 of file declareHandles.h.

template<class T>
bool operator!= ( const SdfHandle< T > &  lhs,
const SdfHandle< T > &  rhs 
)
friend
See Also
SdfHandle::operator==

Definition at line 138 of file declareHandles.h.

template<class T>
bool operator<= ( const SdfHandle< T > &  lhs,
const SdfHandle< T > &  rhs 
)
friend
See Also
SdfHandle::operator<

Definition at line 158 of file declareHandles.h.

template<class T>
bool operator> ( const SdfHandle< T > &  lhs,
const SdfHandle< T > &  rhs 
)
friend
See Also
SdfHandle::operator<

Definition at line 152 of file declareHandles.h.

template<class T>
bool operator>= ( const SdfHandle< T > &  lhs,
const SdfHandle< T > &  rhs 
)
friend
See Also
SdfHandle::operator<

Definition at line 164 of file declareHandles.h.

template<class T>
template<class U >
friend class SdfHandle
friend

Definition at line 183 of file declareHandles.h.


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