StrongRefUnion
Engine/source/core/util/refBase.h
Union of an arbitrary type with a StrongRefBase.
Private Types
StrongRefUnion< ExposedType >
Union
Private Attributes
ExposedType *
Public Functions
StrongRefUnion(const StrongRefPtr< StrongRefBase > & ref, ExposedType * ptr)
StrongRefUnion(const Union & lock)
StrongRefUnion(StrongRefBase * ref)
ExposedType *
bool
isNull()
bool
isValid()
bool
operator!=(const ExposedType * t)
bool
operator!=(const Union & t)
ExposedType &
ExposedType *
bool
operator==(const ExposedType * t)
bool
operator==(const Union & t)
set(const StrongRefPtr< StrongRefBase > & ref, ExposedType * ptr)
Detailed Description
Union of an arbitrary type with a StrongRefBase.
StrongRefBase will remain locked until the union is destructed. Handy for when the exposed class will become invalid whenever the reference becomes invalid and you want to make sure that doesn't happen.
Private Types
typedef StrongRefUnion< ExposedType > Union
Private Attributes
ExposedType * mPtr
StrongRefPtr< StrongRefBase > mReference
Public Functions
StrongRefUnion()
StrongRefUnion(const StrongRefPtr< StrongRefBase > & ref, ExposedType * ptr)
StrongRefUnion(const Union & lock)
StrongRefUnion(StrongRefBase * ref)
~StrongRefUnion()
getPointer()
getRef()
isNull()
isValid()
operator ExposedType*()
operator!=(const ExposedType * t)
operator!=(const Union & t)
operator*()
operator->()
operator=(const Union & ptr)
operator==(const ExposedType * t)
operator==(const Union & t)
set(const StrongRefPtr< StrongRefBase > & ref, ExposedType * ptr)