Frapper  1.0a
Static Public Member Functions | Static Private Member Functions | List of all members
Frapper::OgreTools Class Reference

Static class with helper functions working on OGRE objects. More...

#include <OgreTools.h>

Static Public Member Functions

static Ogre::MovableObject * cloneMovableObject (Ogre::MovableObject *movableObject, const QString &name, Ogre::SceneManager *sceneManager=0)
 Clones an Ogre::MovableObject.
 
static void deepCopySceneNode (Ogre::SceneNode *sceneNode, Ogre::SceneNode *&sceneNodeCopy, const QString &namePrefix, Ogre::SceneManager *sceneManager=0)
 Creates a deep copy of the given scene node.
 
static Ogre::SceneNodecopySceneNode (Ogre::SceneNode *sceneNode, const QString &name, Ogre::SceneManager *sceneManager=0)
 Creates a copy of the given scene node.
 
static void deepDeleteSceneNode (Ogre::SceneNode *sceneNode, Ogre::SceneManager *sceneManager=0, bool deleteRoot=false)
 Deletes a whole scene node tree (including attached objects).
 
static void deleteUserAnyFromSceneNode (Ogre::SceneNode *sceneNode)
 Delete user any from the given scene node / movable object.
 
static void deleteUserAnyFromMovableObject (Ogre::MovableObject *movableObject)
 
static Ogre::Entity * getFirstEntity (Ogre::SceneNode *sceneNode)
 Returns the first entity attached to the given scene node.
 
static Ogre::Camera * getFirstCamera (Ogre::SceneNode *sceneNode)
 Returns the first camera attached to the given scene node.
 
static Ogre::Light * getFirstLight (Ogre::SceneNode *sceneNode)
 Returns the first light attached to the given scene node.
 
static Ogre::MovableObject * OgreTools::getFirstMovableObject (Ogre::SceneNode *sceneNode)
 As the name suggests, this method returns the first attached object of a scene node, if there is one.
 
static void OgreTools::getAllLights (Ogre::SceneNode *sceneNode, QList< Ogre::Light * > &lightsList)
 Returns the all lights attached to the given scene node.
 
static void OgreTools::getAllCameras (Ogre::SceneNode *sceneNode, QList< Ogre::Camera * > &camerasList)
 Returns the all cameras attached to the given scene node.
 
static void OgreTools::getAllEntities (Ogre::SceneNode *sceneNode, QList< Ogre::Entity * > &entityList)
 Returns the all entity attached to the given scene node.
 
static void getSceneNodesByName (Ogre::SceneNode *root, QString name, QList< Ogre::SceneNode * > &sceneNodes)
 Returns all child scene nodes of a given scene node whose name contains the given string.
 
static OgreContainergetOgreContainer (Ogre::SceneNode *sceneNode)
 Returns a pointer to the OgreContainer of a given scene node.
 
static void destroyResourceGroup (const QString &name)
 Destroy the node's Ogre resource group.
 
static void createResourceGroup (const QString &name, const QString &path)
 Create the node's Ogre resource group.
 
static void OgreTextureToQImage (const Ogre::TexturePtr src, QImage &dst, QImage::Format format=QImage::Format_ARGB32)
 Copy Ogre Texture to QImage.
 
static void QImageToOgreTexture (const QImage &src, const Ogre::TexturePtr dst, Ogre::PixelFormat format=Ogre::PF_A8R8G8B8)
 Copy QImage to Ogre Texture.
 

Static Private Member Functions

template<typename T >
static T findFirstObject (Ogre::SceneNode *sceneNode)
 Returns the first movable object of the given type name contained in the given scene node.
 
template<typename T >
static void findAllObjects (Ogre::SceneNode *sceneNode, QList< T > &objectsList)
 Returns all movable objects of the given type contained in the given scene node and its ancestors.
 
template<typename T >
static void deleteUserAnyFrom (T t)
 Delete user any from given object / scene node.
 

Detailed Description

Static class with helper functions working on OGRE objects.

Member Function Documentation

Ogre::MovableObject * Frapper::OgreTools::cloneMovableObject ( Ogre::MovableObject *  movableObject,
const QString &  name,
Ogre::SceneManager *  sceneManager = 0 
)
static

Clones an Ogre::MovableObject.

Public Static Functions.

Is needed because OGRE does not provide clone functions for cameras and lights.

Parameters
movableObjectThe object to clone.
nameThe name to use for the object.
sceneManagerThe scene manager to use for creating the object.
Returns
The cloned object.

Clones an Ogre::MovableObject.

Is needed because OGRE does not provide clone functions for cameras and lights.

Parameters
movableObjectThe object to clone.
nameThe name to use for the object.
sceneManagerThe scene manager to use for creating the object.
Returns
The cloned object.
void Frapper::OgreTools::deepCopySceneNode ( Ogre::SceneNode sceneNode,
Ogre::SceneNode *&  sceneNodeCopy,
const QString &  namePrefix,
Ogre::SceneManager *  sceneManager = 0 
)
static

Creates a deep copy of the given scene node.

Parameters
sceneNodeThe scene node to copy.
sceneNodeCopyThe scene node to add the copied objects to (will be created if 0).
namePrefixThe prefix to use for names of copied objects.
sceneManagerThe scene manager to use for creating the object.
Ogre::SceneNode * Frapper::OgreTools::copySceneNode ( Ogre::SceneNode sceneNode,
const QString &  name,
Ogre::SceneManager *  sceneManager = 0 
)
static

Creates a copy of the given scene node.

Parameters
sceneNodeThe scene node to copy.
nameThe name to use for the copied scene node.
sceneManagerThe scene manager to use for creating the scene node.
Returns
A copy of the given scene node.
void Frapper::OgreTools::deepDeleteSceneNode ( Ogre::SceneNode sceneNode,
Ogre::SceneManager *  sceneManager = 0,
bool  deleteRoot = false 
)
static

Deletes a whole scene node tree (including attached objects).

Parameters
sceneNodeThe scene node containing the tree to delete.
sceneManagerThe scene manager to use for destroying the scene node.
deleteRootFlag to control whether to delete the given scene node.
void Frapper::OgreTools::deleteUserAnyFromSceneNode ( Ogre::SceneNode sceneNode)
static

Delete user any from the given scene node / movable object.

Parameters
sceneNodeThe scene node containing the tree to delete.
sceneManagerThe scene manager to use for destroying the scene node.
deleteRootFlag to control whether to delete the given scene node.
void Frapper::OgreTools::deleteUserAnyFromMovableObject ( Ogre::MovableObject *  movableObject)
static
Ogre::Entity * Frapper::OgreTools::getFirstEntity ( Ogre::SceneNode sceneNode)
static

Returns the first entity attached to the given scene node.

Parameters
sceneNodeThe scene node to return the entity from.
Returns
The first entity attached to the given scene node.
Ogre::Camera * Frapper::OgreTools::getFirstCamera ( Ogre::SceneNode sceneNode)
static

Returns the first camera attached to the given scene node.

Parameters
sceneNodeThe scene node to return the camera from.
Returns
The first camera attached to the given scene node.
Ogre::Light * Frapper::OgreTools::getFirstLight ( Ogre::SceneNode sceneNode)
static

Returns the first light attached to the given scene node.

Parameters
sceneNodeThe scene node to return the light from.
Returns
The first light attached to the given scene node.
static Ogre::MovableObject* Frapper::OgreTools::OgreTools::getFirstMovableObject ( Ogre::SceneNode sceneNode)
static

As the name suggests, this method returns the first attached object of a scene node, if there is one.

Parameters
sceneNodeThe scene node to get the attached object from
Returns
The first movable object attached to the given scene node.
static void Frapper::OgreTools::OgreTools::getAllLights ( Ogre::SceneNode sceneNode,
QList< Ogre::Light * > &  lightsList 
)
static

Returns the all lights attached to the given scene node.

Parameters
sceneNodeThe scene node to return the light from.
lightsListThe list where the lights are stored in.
static void Frapper::OgreTools::OgreTools::getAllCameras ( Ogre::SceneNode sceneNode,
QList< Ogre::Camera * > &  camerasList 
)
static

Returns the all cameras attached to the given scene node.

Parameters
sceneNodeThe scene node to return the cameras from.
camerasListThe list where the cameras are stored in.
static void Frapper::OgreTools::OgreTools::getAllEntities ( Ogre::SceneNode sceneNode,
QList< Ogre::Entity * > &  entityList 
)
static

Returns the all entity attached to the given scene node.

Parameters
sceneNodeThe scene node to return the entity from.
entityListThe list where the entity are stored in.
void Frapper::OgreTools::getSceneNodesByName ( Ogre::SceneNode root,
QString  name,
QList< Ogre::SceneNode * > &  sceneNodes 
)
static

Returns all child scene nodes of a given scene node whose name contains the given string.

Parameters
sceneNodeThe scene node to start the search at.
Returns
A list of scene nodes containing the given name.
OgreContainer * Frapper::OgreTools::getOgreContainer ( Ogre::SceneNode sceneNode)
static

Returns a pointer to the OgreContainer of a given scene node.

Parameters
sceneNodeThe scene node to get the OgreContainer for
void Frapper::OgreTools::destroyResourceGroup ( const QString &  name)
static

Destroy the node's Ogre resource group.

void Frapper::OgreTools::createResourceGroup ( const QString &  name,
const QString &  path 
)
static

Create the node's Ogre resource group.

void Frapper::OgreTools::OgreTextureToQImage ( const Ogre::TexturePtr  src,
QImage &  dst,
QImage::Format  format = QImage::Format_ARGB32 
)
static

Copy Ogre Texture to QImage.

void Frapper::OgreTools::QImageToOgreTexture ( const QImage &  src,
const Ogre::TexturePtr  dst,
Ogre::PixelFormat  format = Ogre::PF_A8R8G8B8 
)
static

Copy QImage to Ogre Texture.

template<typename T >
T Frapper::OgreTools::findFirstObject ( Ogre::SceneNode sceneNode)
staticprivate

Returns the first movable object of the given type name contained in the given scene node.

Private Static Functions.

Parameters
sceneNodeThe scene node to find the first object in.
typeNameThe name of the type of objects to look for.
Returns
The first movable object of the given type name contained in the given scene node.

Returns the first movable object of the given type name contained in the given scene node.

Parameters
sceneNodeThe scene node to find the first object in.
typeNameThe name of the type of objects to look for.
Returns
The first movable object of the given type name contained in the given scene node.
template<typename T >
static void Frapper::OgreTools::findAllObjects ( Ogre::SceneNode sceneNode,
QList< T > &  objectsList 
)
staticprivate

Returns all movable objects of the given type contained in the given scene node and its ancestors.

Parameters
sceneNodeThe scene node to find all objects in.
typeNameThe name of the type of objects to look for.
Returns
The first movable object of the given type name contained in the given scene node.
Parameters
sceneNodeThe scene node to find all objects in.
Returns
The first movable object of the given type name contained in the given scene node.
template<typename T >
void Frapper::OgreTools::deleteUserAnyFrom ( t)
staticprivate

Delete user any from given object / scene node.

T The type to delete the user any from

Parameters
tThe object to delete the user any from

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