OGRE 2.1
Object-Oriented Graphics Rendering Engine
Loading...
Searching...
No Matches
Ogre::SkeletonManager Class Reference

Handles the management of skeleton resources. More...

#include <OgreSkeletonManager.h>

+ Inheritance diagram for Ogre::SkeletonManager:

Public Member Functions

 SkeletonManager ()
 Constructor.
 
 ~SkeletonManager ()
 
void add (SkeletonDefPtr skeletonDef)
 Adds an external pointer for us to track.
 
SkeletonDefPtr getSkeletonDef (const String &name, const String &groupName=ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME)
 Create a new skeleton or retrieves an existing one. Will throw if can't find the skeleton.
 
SkeletonDefPtr getSkeletonDef (v1::Skeleton *oldSkeletonBase)
 Creates a skeletondef based on an existing one from the legacy skeleton system.
 
void operator delete (void *ptr)
 
void operator delete (void *ptr, const char *, int, const char *)
 
void operator delete (void *ptr, void *)
 
void operator delete[] (void *ptr)
 
void operator delete[] (void *ptr, const char *, int, const char *)
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
 
voidoperator new (size_t sz, void *ptr)
 placement operator new
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
 
void remove (const IdString &name)
 Will remove the SkeletonDef from our lists, but the memory pointer may not actually be deleted, which will happen when all references to the shared object are destroyed.
 

Static Public Member Functions

static SkeletonManagergetSingleton (void)
 Override standard Singleton retrieval.
 
static SkeletonManagergetSingletonPtr (void)
 Override standard Singleton retrieval.
 

Detailed Description

Handles the management of skeleton resources.

Remarks
This class deals with the runtime management of skeleton data; like other resource managers it handles the creation of resources (in this case skeleton data).

Constructor & Destructor Documentation

◆ SkeletonManager()

Ogre::SkeletonManager::SkeletonManager ( )

Constructor.

◆ ~SkeletonManager()

Ogre::SkeletonManager::~SkeletonManager ( )

Member Function Documentation

◆ add()

void Ogre::SkeletonManager::add ( SkeletonDefPtr  skeletonDef)

Adds an external pointer for us to track.

Throws if a skeleton with the same name already exists

◆ getSingleton()

static SkeletonManager & Ogre::SkeletonManager::getSingleton ( void  )
static

Override standard Singleton retrieval.

Remarks
Why do we do this? Well, it's because the Singleton implementation is in a .h file, which means it gets compiled into anybody who includes it. This is needed for the Singleton template to work, but we actually only want it compiled into the implementation of the class based on the Singleton, not all of them. If we don't change this, we get link errors when trying to use the Singleton-based class from an outside dll.
This method just delegates to the template version anyway, but the implementation stays in this single compilation unit, preventing link errors.

◆ getSingletonPtr()

static SkeletonManager * Ogre::SkeletonManager::getSingletonPtr ( void  )
static

Override standard Singleton retrieval.

Remarks
Why do we do this? Well, it's because the Singleton implementation is in a .h file, which means it gets compiled into anybody who includes it. This is needed for the Singleton template to work, but we actually only want it compiled into the implementation of the class based on the Singleton, not all of them. If we don't change this, we get link errors when trying to use the Singleton-based class from an outside dll.
This method just delegates to the template version anyway, but the implementation stays in this single compilation unit, preventing link errors.

◆ getSkeletonDef() [1/2]

SkeletonDefPtr Ogre::SkeletonManager::getSkeletonDef ( const String name,
const String groupName = ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME 
)

Create a new skeleton or retrieves an existing one. Will throw if can't find the skeleton.

◆ getSkeletonDef() [2/2]

SkeletonDefPtr Ogre::SkeletonManager::getSkeletonDef ( v1::Skeleton oldSkeletonBase)

Creates a skeletondef based on an existing one from the legacy skeleton system.

If a skeleton def with the same name already exists, returns that one instead.

◆ operator delete() [1/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void ptr)
inlineinherited

◆ operator delete() [2/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void ptr,
const char ,
int  ,
const char  
)
inlineinherited

◆ operator delete() [3/3]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void ptr,
void  
)
inlineinherited

◆ operator delete[]() [1/2]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void ptr)
inlineinherited

◆ operator delete[]() [2/2]

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void ptr,
const char ,
int  ,
const char  
)
inlineinherited

◆ operator new() [1/3]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz)
inlineinherited

◆ operator new() [2/3]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
const char file,
int  line,
const char func 
)
inlineinherited

operator new, with debug line info

◆ operator new() [3/3]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
void ptr 
)
inlineinherited

placement operator new

◆ operator new[]() [1/2]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz)
inlineinherited

◆ operator new[]() [2/2]

template<class Alloc >
void * Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz,
const char file,
int  line,
const char func 
)
inlineinherited

array operator new, with debug line info

◆ remove()

void Ogre::SkeletonManager::remove ( const IdString name)

Will remove the SkeletonDef from our lists, but the memory pointer may not actually be deleted, which will happen when all references to the shared object are destroyed.


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