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);
}
