Classes | |
class | EmptyClass |
Used as a template argument to derive unmanaged classes. More... | |
class | ManagedObjectBase |
Represents a managed object. More... | |
class | ServiceObject |
Represents a service (an object that may have clients). More... | |
class | IntermediateServiceObject |
Represents a simple intermediate service. More... | |
class | ConstManagedPointer |
Represents a read-only managed pointer for function parameters. Should only be used for creating references/pointers. More... | |
class | ParentServiceReference |
Represents a managed pointer field. More... | |
class | ManagedPointer |
Represents a managed pointer to an object. More... | |
Functions | |
template<class _DestType , class _SourceType > | |
static ManagedPointer< _DestType > | managed_cast (const ConstManagedPointer< _SourceType > &ptr) |
Provides type casting for managed pointers. |
static ManagedPointer<_DestType> BazisLib::ObjectManager::managed_cast | ( | const ConstManagedPointer< _SourceType > & | ptr | ) | [inline, static] |
Provides type casting for managed pointers.
Use the managed_cast template function to cast from one managed pointer type to another. Example:
class A { ... };
class B : public A { ... };
... { ManagedPointer ptr = new A(); ManagedPointer ptr2 = managed_cast<B>(ptr); }