This file describes and implements a reference counted pointer that is NOT threadsafe. More...
#include "datatypes.h"
Go to the source code of this file.
Classes | |
class | Mezzanine::CountedPtr< TypePointedTo > |
A simple reference counting pointer. More... | |
class | Mezzanine::CountedPtr< TypePointedTo > |
A simple reference counting pointer. More... | |
class | Mezzanine::CountedPtrCastImpl< ReturnPointer, OriginalPointer, CountedPointerCastingState > |
This is used as to determine how a CountedPtr performs castin between pointer types internally. More... | |
class | Mezzanine::CountedPtrCastImpl< ReturnPointer, OriginalPointer, CountedPointerCastingState > |
This is used as to determine how a CountedPtr performs castin between pointer types internally. More... | |
class | Mezzanine::CountedPtrCastImpl< OriginalPointer, OriginalPointer, CastNoneError > |
An implementation of the CountedPtrCast that always return the pointer passed reached via CastNoneError in the ReferenceCountTraits of the target class. More... | |
class | Mezzanine::CountedPtrCastImpl< ReturnPointer, OriginalPointer, CastDynamic > |
An implementation of the CountedPtrCast that naively dynamic casts the passed pointer. Reached by putting CastDynamic in the ReferenceCountTraits of the target class. More... | |
class | Mezzanine::CountedPtrCastImpl< ReturnPointer, OriginalPointer, CastImplicit > |
An implementation of the CountedPtrCast that casts the passed pointer. Reached by putting CastStatic in the ReferenceCountTraits of the target class. More... | |
class | Mezzanine::CountedPtrCastImpl< ReturnPointer, OriginalPointer, CastNoneReturnZero > |
An implementation of the CountedPtrCast that always returns 0 cast to the original pointer type. Reached by putting CastNoneReturnZero in the ReferenceCountTraits of the target class. More... | |
class | Mezzanine::CountedPtrCastImpl< ReturnPointer, OriginalPointer, CastStatic > |
An implementation of the CountedPtrCast that naively static casts the passed pointer. Reached by putting CastStatic in the ReferenceCountTraits of the target class. More... | |
class | Mezzanine::IntrusiveRefCount |
A sample class that implements a minimal intrusive reference counting scheme. More... | |
class | Mezzanine::ReferenceCount< TypePointedTo > |
This exists once per object managed by a group of shared pointer to track items in memory. More... | |
class | Mezzanine::ReferenceCountTraits< T > |
This is used to deduce at compile if a specific class has built-in reference counting or needs an external reference count. More... | |
class | Mezzanine::ReferenceCountTraits< T > |
This is used to deduce at compile if a specific class has built-in reference counting or needs an external reference count. More... | |
class | Mezzanine::ReferenceCountTraits< IntrusiveRefCount > |
An Example ReferenceCountTraits implmentation. More... | |
Namespaces | |
Mezzanine | |
The bulk of the engine components go in this namspace. | |
Enumerations | |
enum | Mezzanine::CountedPointerCastingState { Mezzanine::CastNoneError = -2, Mezzanine::CastNoneReturnZero = -1, Mezzanine::CastImplicit = 1, Mezzanine::CastStatic = 2, Mezzanine::CastDynamic = 3 } |
CountedPointer casting implementation states. More... | |
Functions | |
template<typename ReturnType , typename OtherPointerTargetType > | |
CountedPtr< ReturnType > | Mezzanine::CountedPtrCast (CountedPtr< OtherPointerTargetType > &Original) |
A compile time cast that uses only the implicit conversion of the underlying raw pointers. More... | |
template<typename ReturnType , typename OtherPointerTargetType > | |
CountedPtr< ReturnType > | Mezzanine::CountedPtrDynamicCast (CountedPtr< OtherPointerTargetType > &Original) |
A Runtime cast that uses dynamic casting conversion of the underlying raw pointers but only works on internally reference count types. More... | |
template<typename Pointer > | |
Pointer * | Mezzanine::CountedPtrInternalCast (Pointer *Original) |
Used internally by CounterPtr to abstract away casts in the case where the return type would match the input type. More... | |
template<typename ReturnPointer , typename OriginalPointer > | |
ReturnPointer * | Mezzanine::CountedPtrInternalCast (const OriginalPointer *Original) |
Used internally by CounterPtr to abstract away casts in the case where the return type would NOT match the input type. More... | |
template<typename ReturnType , typename OtherPointerTargetType > | |
CountedPtr< ReturnType > | Mezzanine::CountedPtrStaticCast (CountedPtr< OtherPointerTargetType > &Original) |
A compile time cast that uses static casting conversion of the underlying raw pointers but only works on internally reference count types. More... | |
This file describes and implements a reference counted pointer that is NOT threadsafe.
Definition in file countedptr.h.