33 #ifndef _AK_SMARTPTR_H
34 #define _AK_SMARTPTR_H
115 operator</span> T*() const { return m_pT; }
132 void _Assign( T* in_pObj,
bool in_bAddRef =
true )
134 if (in_pObj !=
NULL && in_bAddRef)
147 return m_pT == in_pObj;
154 #endif // _AK_SMARTPTR_H
T ** operator &()
Operators to pass to functions like QueryInterface and other functions returning an addref'd pointer.
AkForceInline CAkSmartPtr(const CAkSmartPtr< T > &in_rPtr)
Smart pointer constructor.
T * m_pT
internal use only
AkForceInline void Release()
Release.
bool _Compare(const T *in_pObj) const
internal use only
const T * Cast() const
Cast.
AkForceInline void Attach(T *in_pObj)
Assign with no Addref.
T * operator->() const
Operator ->
~CAkSmartPtr()
Smart pointer destructor.
void _Assign(T *in_pObj, bool in_bAddRef=true)
internal use only
const CAkSmartPtr< T > & operator=(const CAkSmartPtr< T > &in_pObj)
Assignation operator.
AkForceInline CAkSmartPtr(T *in_pT)
Smart pointer constructor.
const CAkSmartPtr< T > & operator=(T *in_pObj)
Assignation operator.
AkForceInline CAkSmartPtr()
Smart pointer constructor.
AkForceInline T * Detach()
Give the pointer without releasing it.
T & operator *()
Operator *.