OGRE-Next 3.0.0
Object-Oriented Graphics Rendering Engine
Loading...
Searching...
No Matches
Ogre::ComPtr< T > Class Template Reference

#include <OgreComPtr.h>

Public Types

typedef T Type
 

Public Member Functions

 ComPtr () ASSUME_NOEXCEPT
 
template<typename U>
 ComPtr (ComPtr< U > const &other) ASSUME_NOEXCEPT
 
 ComPtr (const ComPtr &other) ASSUME_NOEXCEPT
 
template<typename U>
 ComPtr (U *other) ASSUME_NOEXCEPT
 
 ~ComPtr () ASSUME_NOEXCEPT
 
template<typename U>
HRESULT As (ComPtr< U > *res) const ASSUME_NOEXCEPT
 
void Attach (T *other) ASSUME_NOEXCEPT
 
T * Detach () ASSUME_NOEXCEPT
 
T * Get () const ASSUME_NOEXCEPT
 
T ** GetAddressOf () ASSUME_NOEXCEPT
 
 operator bool () const ASSUME_NOEXCEPT
 
NoAddRefRelease< T > * operator-> () const ASSUME_NOEXCEPT
 
ComPtroperator= (const ComPtr &other) ASSUME_NOEXCEPT
 
template<typename U>
ComPtroperator= (const ComPtr< U > &other) ASSUME_NOEXCEPT
 
ComPtroperator= (T *other) ASSUME_NOEXCEPT
 
template<typename U>
ComPtroperator= (U *other) ASSUME_NOEXCEPT
 
T ** ReleaseAndGetAddressOf () ASSUME_NOEXCEPT
 
void Reset () ASSUME_NOEXCEPT
 
void Swap (ComPtr &other) ASSUME_NOEXCEPT
 

Member Typedef Documentation

◆ Type

template<typename T>
typedef T Ogre::ComPtr< T >::Type

Constructor & Destructor Documentation

◆ ComPtr() [1/4]

template<typename T>
Ogre::ComPtr< T >::ComPtr ( )
inline

References ASSUME_NOEXCEPT.

◆ ComPtr() [2/4]

template<typename T>
template<typename U>
Ogre::ComPtr< T >::ComPtr ( U * other)
inline

References ASSUME_NOEXCEPT.

◆ ComPtr() [3/4]

template<typename T>
Ogre::ComPtr< T >::ComPtr ( const ComPtr< T > & other)
inline

References ComPtr, and ASSUME_NOEXCEPT.

◆ ComPtr() [4/4]

template<typename T>
template<typename U>
Ogre::ComPtr< T >::ComPtr ( ComPtr< U > const & other)
inline

References ComPtr, and ASSUME_NOEXCEPT.

◆ ~ComPtr()

template<typename T>
Ogre::ComPtr< T >::~ComPtr ( )
inline

References ASSUME_NOEXCEPT.

Member Function Documentation

◆ As()

template<typename T>
template<typename U>
HRESULT Ogre::ComPtr< T >::As ( ComPtr< U > * res) const
inline

References ComPtr, and ASSUME_NOEXCEPT.

◆ Attach()

template<typename T>
void Ogre::ComPtr< T >::Attach ( T * other)
inline

References ASSUME_NOEXCEPT.

◆ Detach()

template<typename T>
T * Ogre::ComPtr< T >::Detach ( )
inline

References ASSUME_NOEXCEPT.

◆ Get()

template<typename T>
T * Ogre::ComPtr< T >::Get ( ) const
inline

References ASSUME_NOEXCEPT.

◆ GetAddressOf()

template<typename T>
T ** Ogre::ComPtr< T >::GetAddressOf ( )
inline

References ASSUME_NOEXCEPT.

◆ operator bool()

template<typename T>
Ogre::ComPtr< T >::operator bool ( ) const
inlineexplicit

References ASSUME_NOEXCEPT.

◆ operator->()

template<typename T>
NoAddRefRelease< T > * Ogre::ComPtr< T >::operator-> ( ) const
inline

References ASSUME_NOEXCEPT.

◆ operator=() [1/4]

template<typename T>
ComPtr & Ogre::ComPtr< T >::operator= ( const ComPtr< T > & other)
inline

References ComPtr, and ASSUME_NOEXCEPT.

◆ operator=() [2/4]

template<typename T>
template<typename U>
ComPtr & Ogre::ComPtr< T >::operator= ( const ComPtr< U > & other)
inline

References ComPtr, and ASSUME_NOEXCEPT.

◆ operator=() [3/4]

template<typename T>
ComPtr & Ogre::ComPtr< T >::operator= ( T * other)
inline

References ComPtr, and ASSUME_NOEXCEPT.

◆ operator=() [4/4]

template<typename T>
template<typename U>
ComPtr & Ogre::ComPtr< T >::operator= ( U * other)
inline

References ComPtr, and ASSUME_NOEXCEPT.

◆ ReleaseAndGetAddressOf()

template<typename T>
T ** Ogre::ComPtr< T >::ReleaseAndGetAddressOf ( )
inline

References ASSUME_NOEXCEPT.

◆ Reset()

template<typename T>
void Ogre::ComPtr< T >::Reset ( )
inline

References ASSUME_NOEXCEPT.

◆ Swap()

template<typename T>
void Ogre::ComPtr< T >::Swap ( ComPtr< T > & other)
inline

References ComPtr, and ASSUME_NOEXCEPT.

Referenced by Ogre::swap().


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