|
XLE
v0.02.0
|
Standard intrusive pointer object More...
#include <IntrusivePtr.h>
Public Types | |
| typedef T | element_type |
Public Member Functions | |
| intrusive_ptr (T *copyOrMoveFrom, bool takeNewReference=true) | |
| intrusive_ptr (MovePTRHelper< T > moveFrom) never_throws | |
| intrusive_ptr (const intrusive_ptr ©From) | |
| intrusive_ptr (intrusive_ptr &&moveFrom) never_throws | |
| template<typename Y > | |
| intrusive_ptr (const intrusive_ptr< Y > ©From) | |
| template<typename Y > | |
| intrusive_ptr (intrusive_ptr< Y > &&moveFrom) never_throws | |
| intrusive_ptr & | operator= (const intrusive_ptr ©From) |
| template<typename Y > | |
| intrusive_ptr & | operator= (const intrusive_ptr< Y > ©From) |
| intrusive_ptr & | operator= (T *copyFrom) |
| intrusive_ptr & | operator= (MovePTRHelper< T > moveFrom) never_throws |
| intrusive_ptr & | operator= (intrusive_ptr &&moveFrom) never_throws |
| template<typename Y > | |
| intrusive_ptr & | operator= (intrusive_ptr< Y > &&moveFrom) never_throws |
| void | reset () |
| void | reset (T *copyFrom) |
| T & | operator* () const never_throws |
| T * | operator-> () const never_throws |
| T * | get () const never_throws |
| operator bool () const never_throws | |
| void | swap (intrusive_ptr &b) never_throws |
| template<typename Y > | |
| templ | intrusive_ptr (const intrusive_ptr< Y > ©From) |
| template<typename Y > | |
| templ | intrusive_ptr (intrusive_ptr< Y > &&moveFrom) never_throws |
| template<typename Y > | |
| templ intrusive_ptr< T > & | operator= (const intrusive_ptr< Y > ©From) |
| template<typename Y > | |
| templ intrusive_ptr< T > & | operator= (intrusive_ptr< Y > &&moveFrom) never_throws |
Friends | |
| template<typename T > | |
| T * | ReleaseOwnership (intrusive_ptr< T > &ptr) |
| template<typename T , typename U > | |
| bool | operator== (const intrusive_ptr< T > &lhs, const intrusive_ptr< U > &rhs) never_throws |
| template<typename T , typename U > | |
| bool | operator!= (const intrusive_ptr< T > &lhs, const intrusive_ptr< U > &rhs) never_throws |
| template<typename T > | |
| bool | operator== (const intrusive_ptr< T > &a, T *b) never_throws |
| template<typename T > | |
| bool | operator!= (const intrusive_ptr< T > &a, T *b) never_throws |
| template<typename T > | |
| bool | operator== (T *a, const intrusive_ptr< T > &b) never_throws |
| template<typename T > | |
| bool | operator!= (T *a, const intrusive_ptr< T > &b) never_throws |
| template<typename T , typename U > | |
| bool | operator< (const intrusive_ptr< T > &a, const intrusive_ptr< U > &b) never_throws |
Standard intrusive pointer object
Intrusive pointer implementation. based on standard designs (names kept similar to boost::intrusive_ptr intentially). Useful for interacting with 3rd party code (like D3D), or legacy code. Prefer to use std::shared_ptr<> where possible.
1.8.10