Ogre::Pose Class Reference
Core » Animation

A pose is a linked set of vertex offsets applying to one set of vertex data. More...

`#include <OgrePose.h>`

Inheritance diagram for Ogre::Pose:
[legend]

## Public Types

typedef ConstMapIterator< NormalsMap > | ConstNormalsIterator
| An iterator over the vertex offsets. More...
typedef ConstMapIterator< VertexOffsetMap > | ConstVertexOffsetIterator
| An iterator over the vertex offsets. More...
typedef MapIterator< NormalsMap > | NormalsIterator
| An iterator over the vertex offsets. More...
typedef map< size_t, Vector3 >::type | NormalsMap
| A collection of normals based on the vertex index. More...
typedef MapIterator< VertexOffsetMap > | VertexOffsetIterator
| An iterator over the vertex offsets. More...
typedef map< size_t, Vector3 >::type | VertexOffsetMap
| A collection of vertex offsets based on the vertex index. More...

## Public Member Functions

| Pose (ushort target, const String &name=StringUtil::BLANK)
| Constructor. More...
virtual | ~Pose ()
const HardwareVertexBufferSharedPtr & | _getHardwareVertexBuffer (const VertexData *origData) const
| Get a hardware vertex buffer version of the vertex offsets. More...
void | addVertex (size_t index, const Vector3 &offset)
| Adds an offset to a vertex for this pose. More...
void | addVertex (size_t index, const Vector3 &offset, const Vector3 &normal)
| Adds an offset to a vertex and a new normal for this pose. More...
void | clearVertices (void)
| Clear all vertices. More...
Pose * | clone (void) const
| Clone this pose and create another one configured exactly the same way (only really useful for cloning holders of this class). More...
bool | getIncludesNormals () const
| Return whether the pose vertices include normals. More...
const String & | getName (void) const
| Return the name of the pose (may be blank) More...
const NormalsMap & | getNormals (void) const
| Gets a const reference to the vertex offsets. More...
ConstNormalsIterator | getNormalsIterator (void) const
| Gets an iterator over all the vertex offsets. More...
NormalsIterator | getNormalsIterator (void)
| Gets an iterator over all the vertex offsets. More...
ushort | getTarget (void) const
| Return the target geometry index of the pose. More...
ConstVertexOffsetIterator | getVertexOffsetIterator (void) const
| Gets an iterator over all the vertex offsets. More...
VertexOffsetIterator | getVertexOffsetIterator (void)
| Gets an iterator over all the vertex offsets. More...
const VertexOffsetMap & | getVertexOffsets (void) const
| Gets a const reference to the vertex offsets. More...
void | operator delete (void *ptr)
void | operator delete (void *ptr, void *)
void | operator delete (void *ptr, const char *, int, const char *)
void | operator delete[] (void *ptr)
void | operator delete[] (void *ptr, const char *, int, const char *)
void * | operator new (size_t sz, const char *file, int line, const char *func)
| operator new, with debug line info More...
void * | operator new (size_t sz)
void * | operator new (size_t sz, void *ptr)
| placement operator new More...
void * | operator new[] (size_t sz, const char *file, int line, const char *func)
| array operator new, with debug line info More...
void * | operator new[] (size_t sz)
void | removeVertex (size_t index)
| Remove a vertex offset. More...

## Protected Attributes

HardwareVertexBufferSharedPtr | mBuffer
| Derived hardware buffer, covers all vertices. More...
String | mName
| Optional name. More...
NormalsMap | mNormalsMap
| Primary storage, sparse vertex use. More...
ushort | mTarget
| Target geometry index. More...
VertexOffsetMap | mVertexOffsetMap
| Primary storage, sparse vertex use. More...

## Detailed Description

A pose is a linked set of vertex offsets applying to one set of vertex data.

Remarks
  The target index referred to by the pose has a meaning set by the user of this class; but for example when used by Mesh it refers to either the Mesh shared geometry (0) or a SubMesh dedicated geometry (1+). Pose instances can be referred to by keyframes in VertexAnimationTrack in order to animate based on blending poses together.

Definition at line 55 of file OgrePose.h.

## Member Typedef Documentation

## ConstNormalsIterator

typedef ConstMapIterator<NormalsMap> Ogre::Pose::ConstNormalsIterator

An iterator over the vertex offsets.

Definition at line 80 of file OgrePose.h.

## ConstVertexOffsetIterator

typedef ConstMapIterator<VertexOffsetMap> Ogre::Pose::ConstVertexOffsetIterator

An iterator over the vertex offsets.

Definition at line 74 of file OgrePose.h.

## NormalsIterator

typedef MapIterator<NormalsMap> Ogre::Pose::NormalsIterator

An iterator over the vertex offsets.

Definition at line 78 of file OgrePose.h.

## NormalsMap

typedef map<size_t, Vector3>::type Ogre::Pose::NormalsMap

A collection of normals based on the vertex index.

Definition at line 76 of file OgrePose.h.

## VertexOffsetIterator

typedef MapIterator<VertexOffsetMap> Ogre::Pose::VertexOffsetIterator

An iterator over the vertex offsets.

Definition at line 72 of file OgrePose.h.

## VertexOffsetMap

typedef map<size_t, Vector3>::type Ogre::Pose::VertexOffsetMap

A collection of vertex offsets based on the vertex index.

Definition at line 70 of file OgrePose.h.

## Constructor & Destructor Documentation

## Pose()

Ogre::Pose::Pose | ( | ushort | target,
|  | const String & | name = `StringUtil::BLANK`
| ) |  |

Constructor.

Parameters

  target | The target vertexdata index (0 for shared, 1+ for dedicated at the submesh index + 1)
  name | Optional name

## ~Pose()

virtual Ogre::Pose::~Pose | ( |  | ) |

virtual

## Member Function Documentation

## _getHardwareVertexBuffer()

const HardwareVertexBufferSharedPtr& Ogre::Pose::_getHardwareVertexBuffer | ( | const VertexData * | origData | ) | const

Get a hardware vertex buffer version of the vertex offsets.

## addVertex() [1/2]

void Ogre::Pose::addVertex | ( | size_t | index,
|  | const Vector3 & | offset
| ) |  |

Adds an offset to a vertex for this pose.

Parameters

  index | The vertex index
  offset | The position offset for this pose

## addVertex() [2/2]

void Ogre::Pose::addVertex | ( | size_t | index,
|  | const Vector3 & | offset,
|  | const Vector3 & | normal
| ) |  |

Adds an offset to a vertex and a new normal for this pose.

Parameters

  index | The vertex index
  offset | The position offset for this pose

## clearVertices()

void Ogre::Pose::clearVertices | ( | void |  | ) |

Clear all vertices.

## clone()

Pose* Ogre::Pose::clone | ( | void |  | ) | const

Clone this pose and create another one configured exactly the same way (only really useful for cloning holders of this class).

## getIncludesNormals()

bool Ogre::Pose::getIncludesNormals | ( |  | ) | const

Return whether the pose vertices include normals.

Definition at line 82 of file OgrePose.h.

## getName()

const String& Ogre::Pose::getName | ( | void |  | ) | const

Return the name of the pose (may be blank)

Definition at line 66 of file OgrePose.h.

## getNormals()

const NormalsMap& Ogre::Pose::getNormals | ( | void |  | ) | const

Gets a const reference to the vertex offsets.

Definition at line 114 of file OgrePose.h.

## getNormalsIterator() [1/2]

ConstNormalsIterator Ogre::Pose::getNormalsIterator | ( | void |  | ) | const

Gets an iterator over all the vertex offsets.

## getNormalsIterator() [2/2]

NormalsIterator Ogre::Pose::getNormalsIterator | ( | void |  | ) |

Gets an iterator over all the vertex offsets.

## getTarget()

ushort Ogre::Pose::getTarget | ( | void |  | ) | const

Return the target geometry index of the pose.

Definition at line 68 of file OgrePose.h.

## getVertexOffsetIterator() [1/2]

ConstVertexOffsetIterator Ogre::Pose::getVertexOffsetIterator | ( | void |  | ) | const

Gets an iterator over all the vertex offsets.

## getVertexOffsetIterator() [2/2]

VertexOffsetIterator Ogre::Pose::getVertexOffsetIterator | ( | void |  | ) |

Gets an iterator over all the vertex offsets.

## getVertexOffsets()

const VertexOffsetMap& Ogre::Pose::getVertexOffsets | ( | void |  | ) | const

Gets a const reference to the vertex offsets.

Definition at line 107 of file OgrePose.h.

## operator delete() [1/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr | ) |

inherited

Definition at line 96 of file OgreMemoryAllocatedObject.h.

## operator delete() [2/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | void * |
| ) |  |

inherited

Definition at line 102 of file OgreMemoryAllocatedObject.h.

## operator delete() [3/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 108 of file OgreMemoryAllocatedObject.h.

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

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr | ) |

inherited

Definition at line 113 of file OgreMemoryAllocatedObject.h.

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

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 119 of file OgreMemoryAllocatedObject.h.

## operator new() [1/3]

template<class Alloc >

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

inherited

operator new, with debug line info

Definition at line 68 of file OgreMemoryAllocatedObject.h.

## operator new() [2/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz | ) |

inherited

Definition at line 73 of file OgreMemoryAllocatedObject.h.

## operator new() [3/3]

template<class Alloc >

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

inherited

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

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

template<class Alloc >

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

inherited

array operator new, with debug line info

Definition at line 86 of file OgreMemoryAllocatedObject.h.

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

template<class Alloc >

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

inherited

Definition at line 91 of file OgreMemoryAllocatedObject.h.

## removeVertex()

void Ogre::Pose::removeVertex | ( | size_t | index | ) |

Remove a vertex offset.

## Member Data Documentation

## mBuffer

HardwareVertexBufferSharedPtr Ogre::Pose::mBuffer

mutable protected

Derived hardware buffer, covers all vertices.

Definition at line 133 of file OgrePose.h.

## mName

String Ogre::Pose::mName

protected

Optional name.

Definition at line 127 of file OgrePose.h.

## mNormalsMap

NormalsMap Ogre::Pose::mNormalsMap

protected

Primary storage, sparse vertex use.

Definition at line 131 of file OgrePose.h.

## mTarget

ushort Ogre::Pose::mTarget

protected

Target geometry index.

Definition at line 125 of file OgrePose.h.

## mVertexOffsetMap

VertexOffsetMap Ogre::Pose::mVertexOffsetMap

protected

Primary storage, sparse vertex use.

Definition at line 129 of file OgrePose.h.

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

- OgrePose.h

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.