Assimp  v4.1. (December 2018)
Assimp::Ogre Namespace Reference

Classes

class  Animation
 Ogre Animation. More...
 
class  Bone
 Ogre Bone. More...
 
class  IndexData
 
class  IndexDataXml
 Ogre XML Index Data. More...
 
class  ISubMesh
 Ogre Sub Mesh interface, inherited by the binary and XML implementations. More...
 
class  IVertexData
 
class  Mesh
 Ogre Mesh. More...
 
class  MeshXml
 Ogre XML Mesh. More...
 
struct  MorphKeyFrame
 Ogre Morph Key Frame. More...
 
class  OgreBinarySerializer
 
class  OgreImporter
 Importer for Ogre mesh, skeleton and material formats. More...
 
class  OgreXmlSerializer
 
class  Pose
 Ogre Pose. More...
 
struct  PoseKeyFrame
 Ogre Pose Key Frame. More...
 
struct  PoseRef
 Ogre Pose Key Frame Ref. More...
 
class  Skeleton
 Ogre Skeleton. More...
 
class  SubMesh
 Ogre SubMesh. More...
 
class  SubMeshXml
 Ogre XML SubMesh. More...
 
struct  TransformKeyFrame
 Ogre animation key frame. More...
 
struct  VertexAnimationTrack
 Ogre Animation Track. More...
 
struct  VertexBoneAssignment
 Ogre Vertex Bone Assignment. More...
 
class  VertexData
 
class  VertexDataXml
 Ogre XML Vertex Data. More...
 
class  VertexElement
 

Typedefs

typedef std::vector< Animation * > AnimationList
 
typedef std::map< uint16_t, std::vector< aiVertexWeight > > AssimpVertexBoneWeightList
 
typedef std::vector< Bone * > BoneList
 
typedef Assimp::MemoryIOStream MemoryStream
 
typedef std::shared_ptr< MemoryStreamMemoryStreamPtr
 
typedef Assimp::StreamReaderLE MemoryStreamReader
 
typedef std::shared_ptr< MemoryStreamReaderMemoryStreamReaderPtr
 
typedef std::vector< MorphKeyFrameMorphKeyFrameList
 
typedef std::vector< PoseKeyFramePoseKeyFrameList
 
typedef std::vector< Pose * > PoseList
 
typedef std::vector< PoseRefPoseRefList
 
typedef std::vector< SubMesh * > SubMeshList
 
typedef std::vector< SubMeshXml * > SubMeshXmlList
 
typedef std::vector< TransformKeyFrameTransformKeyFrameList
 
typedef std::vector< VertexAnimationTrackVertexAnimationTrackList
 
typedef std::vector< VertexBoneAssignmentVertexBoneAssignmentList
 
typedef std::map< uint32_t, VertexBoneAssignmentListVertexBoneAssignmentsMap
 
typedef std::map< uint16_t, MemoryStreamPtrVertexBufferBindings
 
typedef std::vector< VertexElementVertexElementList
 
typedef irr::io::IrrXMLReader XmlReader
 
typedef std::shared_ptr< XmlReaderXmlReaderPtr
 

Enumerations

enum  MeshChunkId {
  M_HEADER = 0x1000, M_MESH = 0x3000, M_SUBMESH = 0x4000, M_SUBMESH_OPERATION = 0x4010,
  M_SUBMESH_BONE_ASSIGNMENT = 0x4100, M_SUBMESH_TEXTURE_ALIAS = 0x4200, M_GEOMETRY = 0x5000, M_GEOMETRY_VERTEX_DECLARATION = 0x5100,
  M_GEOMETRY_VERTEX_ELEMENT = 0x5110, M_GEOMETRY_VERTEX_BUFFER = 0x5200, M_GEOMETRY_VERTEX_BUFFER_DATA = 0x5210, M_MESH_SKELETON_LINK = 0x6000,
  M_MESH_BONE_ASSIGNMENT = 0x7000, M_MESH_LOD = 0x8000, M_MESH_LOD_USAGE = 0x8100, M_MESH_LOD_MANUAL = 0x8110,
  M_MESH_LOD_GENERATED = 0x8120, M_MESH_BOUNDS = 0x9000, M_SUBMESH_NAME_TABLE = 0xA000, M_SUBMESH_NAME_TABLE_ELEMENT = 0xA100,
  M_EDGE_LISTS = 0xB000, M_EDGE_LIST_LOD = 0xB100, M_EDGE_GROUP = 0xB110, M_POSES = 0xC000,
  M_POSE = 0xC100, M_POSE_VERTEX = 0xC111, M_ANIMATIONS = 0xD000, M_ANIMATION = 0xD100,
  M_ANIMATION_BASEINFO = 0xD105, M_ANIMATION_TRACK = 0xD110, M_ANIMATION_MORPH_KEYFRAME = 0xD111, M_ANIMATION_POSE_KEYFRAME = 0xD112,
  M_ANIMATION_POSE_REF = 0xD113, M_TABLE_EXTREMES = 0xE000
}
 
enum  SkeletonChunkId {
  SKELETON_HEADER = 0x1000, SKELETON_BLENDMODE = 0x1010, SKELETON_BONE = 0x2000, SKELETON_BONE_PARENT = 0x3000,
  SKELETON_ANIMATION = 0x4000, SKELETON_ANIMATION_BASEINFO = 0x4010, SKELETON_ANIMATION_TRACK = 0x4100, SKELETON_ANIMATION_TRACK_KEYFRAME = 0x4110,
  SKELETON_ANIMATION_LINK = 0x5000
}
 

Functions

static bool BoneCompare (Bone *a, Bone *b)
 
static AI_FORCE_INLINE bool EndsWith (const std::string &s, const std::string &suffix, bool caseSensitive=true)
 Returns if s ends with suffix. If caseSensitive is false, both strings will be lower cased before matching. More...
 
static AI_FORCE_INLINE std::string NextAfterNewLine (std::stringstream &ss, std::string &nextElement)
 Skips a line and reads next element from ss to nextElement. More...
 
template<>
std::string OgreXmlSerializer::ReadAttribute< std::string > (const char *name) const
 
static AI_FORCE_INLINE std::string SkipLine (std::stringstream &ss)
 Skips a line from current @ss position until a newline. Returns the skipped part. More...
 
AI_WONT_RETURN void ThrowAttibuteError (const XmlReader *reader, const std::string &name, const std::string &error="") AI_WONT_RETURN_SUFFIX
 
static AI_FORCE_INLINE std::string ToLower (std::string s)
 Returns a lower cased copy of @s. More...
 
static AI_FORCE_INLINE std::string & Trim (std::string &s, bool newlines=true)
 Trim from both ends. More...
 
static AI_FORCE_INLINE std::string & TrimLeft (std::string &s, bool newlines=true)
 Trim from start. More...
 
static AI_FORCE_INLINE std::string & TrimRight (std::string &s, bool newlines=true)
 Trim from end. More...
 

Variables

static const char * anX = "x"
 
static const char * anY = "y"
 
static const char * anZ = "z"
 
const unsigned short HEADER_CHUNK_ID = 0x1000
 
const std::string MESH_VERSION_1_8 = "[MeshSerializer_v1.8]"
 
const long MSTREAM_BONE_SIZE_WITHOUT_SCALE = MSTREAM_OVERHEAD_SIZE + sizeof(unsigned short) + (sizeof(float) * 7)
 
const long MSTREAM_KEYFRAME_SIZE_WITHOUT_SCALE = MSTREAM_OVERHEAD_SIZE + (sizeof(float) * 8)
 
const long MSTREAM_OVERHEAD_SIZE = sizeof(uint16_t) + sizeof(uint32_t)
 
static const char * nnAnimation = "animation"
 
static const char * nnAnimationLinks = "animationlinks"
 
static const char * nnAnimations = "animations"
 
static const char * nnAxis = "axis"
 
static const char * nnBinormal = "binormal"
 
static const char * nnBone = "bone"
 
static const char * nnBoneAssignments = "boneassignments"
 
static const char * nnBoneHierarchy = "bonehierarchy"
 
static const char * nnBoneParent = "boneparent"
 
static const char * nnBones = "bones"
 
static const char * nnColorDiffuse = "colour_diffuse"
 
static const char * nnColorSpecular = "colour_specular"
 
static const char * nnExtremes = "extremes"
 
static const char * nnFace = "face"
 
static const char * nnFaces = "faces"
 
static const char * nnGeometry = "geometry"
 
static const char * nnKeyFrame = "keyframe"
 
static const char * nnKeyFrames = "keyframes"
 
static const char * nnLOD = "levelofdetail"
 
static const char * nnMesh = "mesh"
 
static const char * nnNormal = "normal"
 
static const char * nnPoses = "poses"
 
static const char * nnPosition = "position"
 
static const char * nnRotate = "rotate"
 
static const char * nnRotation = "rotation"
 
static const char * nnScale = "scale"
 
static const char * nnSharedGeometry = "sharedgeometry"
 
static const char * nnSkeleton = "skeleton"
 
static const char * nnSkeletonLink = "skeletonlink"
 
static const char * nnSubMesh = "submesh"
 
static const char * nnSubMeshes = "submeshes"
 
static const char * nnSubMeshNames = "submeshnames"
 
static const char * nnTangent = "tangent"
 
static const char * nnTexCoord = "texcoord"
 
static const char * nnTextures = "textures"
 
static const char * nnTrack = "track"
 
static const char * nnTracks = "tracks"
 
static const char * nnTranslate = "translate"
 
static const char * nnVertex = "vertex"
 
static const char * nnVertexBoneAssignment = "vertexboneassignment"
 
static const char * nnVertexBuffer = "vertexbuffer"
 
static const string partBlockEnd = "}"
 
static const string partBlockStart = "{"
 
static const string partComment = "//"
 
const std::string SKELETON_VERSION_1_1 = "[Serializer_v1.10]"
 
const std::string SKELETON_VERSION_1_8 = "[Serializer_v1.80]"
 

Typedef Documentation

◆ AnimationList

typedef std::vector<Animation*> Assimp::Ogre::AnimationList

◆ AssimpVertexBoneWeightList

◆ BoneList

typedef std::vector<Bone*> Assimp::Ogre::BoneList

◆ MemoryStream

◆ MemoryStreamPtr

typedef std::shared_ptr<MemoryStream> Assimp::Ogre::MemoryStreamPtr

◆ MemoryStreamReader

◆ MemoryStreamReaderPtr

◆ MorphKeyFrameList

◆ PoseKeyFrameList

◆ PoseList

typedef std::vector<Pose*> Assimp::Ogre::PoseList

◆ PoseRefList

typedef std::vector<PoseRef> Assimp::Ogre::PoseRefList

◆ SubMeshList

typedef std::vector<SubMesh*> Assimp::Ogre::SubMeshList

◆ SubMeshXmlList

◆ TransformKeyFrameList

◆ VertexAnimationTrackList

◆ VertexBoneAssignmentList

◆ VertexBoneAssignmentsMap

◆ VertexBufferBindings

◆ VertexElementList

◆ XmlReader

◆ XmlReaderPtr

typedef std::shared_ptr<XmlReader> Assimp::Ogre::XmlReaderPtr

Enumeration Type Documentation

◆ MeshChunkId

Enumerator
M_HEADER 
M_MESH 
M_SUBMESH 
M_SUBMESH_OPERATION 
M_SUBMESH_BONE_ASSIGNMENT 
M_SUBMESH_TEXTURE_ALIAS 
M_GEOMETRY 
M_GEOMETRY_VERTEX_DECLARATION 
M_GEOMETRY_VERTEX_ELEMENT 
M_GEOMETRY_VERTEX_BUFFER 
M_GEOMETRY_VERTEX_BUFFER_DATA 
M_MESH_SKELETON_LINK 
M_MESH_BONE_ASSIGNMENT 
M_MESH_LOD 
M_MESH_LOD_USAGE 
M_MESH_LOD_MANUAL 
M_MESH_LOD_GENERATED 
M_MESH_BOUNDS 
M_SUBMESH_NAME_TABLE 
M_SUBMESH_NAME_TABLE_ELEMENT 
M_EDGE_LISTS 
M_EDGE_LIST_LOD 
M_EDGE_GROUP 
M_POSES 
M_POSE 
M_POSE_VERTEX 
M_ANIMATIONS 
M_ANIMATION 
M_ANIMATION_BASEINFO 
M_ANIMATION_TRACK 
M_ANIMATION_MORPH_KEYFRAME 
M_ANIMATION_POSE_KEYFRAME 
M_ANIMATION_POSE_REF 
M_TABLE_EXTREMES 

◆ SkeletonChunkId

Enumerator
SKELETON_HEADER 
SKELETON_BLENDMODE 
SKELETON_BONE 
SKELETON_BONE_PARENT 
SKELETON_ANIMATION 
SKELETON_ANIMATION_BASEINFO 
SKELETON_ANIMATION_TRACK 
SKELETON_ANIMATION_TRACK_KEYFRAME 
SKELETON_ANIMATION_LINK 

Function Documentation

◆ BoneCompare()

static bool Assimp::Ogre::BoneCompare ( Bone a,
Bone b 
)
static

◆ EndsWith()

static AI_FORCE_INLINE bool Assimp::Ogre::EndsWith ( const std::string &  s,
const std::string &  suffix,
bool  caseSensitive = true 
)
static

Returns if s ends with suffix. If caseSensitive is false, both strings will be lower cased before matching.

◆ NextAfterNewLine()

static AI_FORCE_INLINE std::string Assimp::Ogre::NextAfterNewLine ( std::stringstream &  ss,
std::string &  nextElement 
)
static

Skips a line and reads next element from ss to nextElement.

Returns
Skipped line content until newline.

◆ OgreXmlSerializer::ReadAttribute< std::string >()

template<>
std::string Assimp::Ogre::OgreXmlSerializer::ReadAttribute< std::string > ( const char *  name) const

◆ SkipLine()

static AI_FORCE_INLINE std::string Assimp::Ogre::SkipLine ( std::stringstream &  ss)
static

Skips a line from current @ss position until a newline. Returns the skipped part.

◆ ThrowAttibuteError()

AI_WONT_RETURN void Assimp::Ogre::ThrowAttibuteError ( const XmlReader reader,
const std::string &  name,
const std::string &  error = "" 
)

◆ ToLower()

static AI_FORCE_INLINE std::string Assimp::Ogre::ToLower ( std::string  s)
static

Returns a lower cased copy of @s.

◆ Trim()

static AI_FORCE_INLINE std::string& Assimp::Ogre::Trim ( std::string &  s,
bool  newlines = true 
)
static

Trim from both ends.

◆ TrimLeft()

static AI_FORCE_INLINE std::string& Assimp::Ogre::TrimLeft ( std::string &  s,
bool  newlines = true 
)
static

Trim from start.

◆ TrimRight()

static AI_FORCE_INLINE std::string& Assimp::Ogre::TrimRight ( std::string &  s,
bool  newlines = true 
)
static

Trim from end.

Variable Documentation

◆ anX

const char* Assimp::Ogre::anX = "x"
static

◆ anY

const char* Assimp::Ogre::anY = "y"
static

◆ anZ

const char* Assimp::Ogre::anZ = "z"
static

◆ HEADER_CHUNK_ID

const unsigned short Assimp::Ogre::HEADER_CHUNK_ID = 0x1000

◆ MESH_VERSION_1_8

const std::string Assimp::Ogre::MESH_VERSION_1_8 = "[MeshSerializer_v1.8]"

◆ MSTREAM_BONE_SIZE_WITHOUT_SCALE

const long Assimp::Ogre::MSTREAM_BONE_SIZE_WITHOUT_SCALE = MSTREAM_OVERHEAD_SIZE + sizeof(unsigned short) + (sizeof(float) * 7)

◆ MSTREAM_KEYFRAME_SIZE_WITHOUT_SCALE

const long Assimp::Ogre::MSTREAM_KEYFRAME_SIZE_WITHOUT_SCALE = MSTREAM_OVERHEAD_SIZE + (sizeof(float) * 8)

◆ MSTREAM_OVERHEAD_SIZE

const long Assimp::Ogre::MSTREAM_OVERHEAD_SIZE = sizeof(uint16_t) + sizeof(uint32_t)

◆ nnAnimation

const char* Assimp::Ogre::nnAnimation = "animation"
static

◆ nnAnimationLinks

const char* Assimp::Ogre::nnAnimationLinks = "animationlinks"
static

◆ nnAnimations

const char* Assimp::Ogre::nnAnimations = "animations"
static

◆ nnAxis

const char* Assimp::Ogre::nnAxis = "axis"
static

◆ nnBinormal

const char* Assimp::Ogre::nnBinormal = "binormal"
static

◆ nnBone

const char* Assimp::Ogre::nnBone = "bone"
static

◆ nnBoneAssignments

const char* Assimp::Ogre::nnBoneAssignments = "boneassignments"
static

◆ nnBoneHierarchy

const char* Assimp::Ogre::nnBoneHierarchy = "bonehierarchy"
static

◆ nnBoneParent

const char* Assimp::Ogre::nnBoneParent = "boneparent"
static

◆ nnBones

const char* Assimp::Ogre::nnBones = "bones"
static

◆ nnColorDiffuse

const char* Assimp::Ogre::nnColorDiffuse = "colour_diffuse"
static

◆ nnColorSpecular

const char* Assimp::Ogre::nnColorSpecular = "colour_specular"
static

◆ nnExtremes

const char* Assimp::Ogre::nnExtremes = "extremes"
static

◆ nnFace

const char* Assimp::Ogre::nnFace = "face"
static

◆ nnFaces

const char* Assimp::Ogre::nnFaces = "faces"
static

◆ nnGeometry

const char* Assimp::Ogre::nnGeometry = "geometry"
static

◆ nnKeyFrame

const char* Assimp::Ogre::nnKeyFrame = "keyframe"
static

◆ nnKeyFrames

const char* Assimp::Ogre::nnKeyFrames = "keyframes"
static

◆ nnLOD

const char* Assimp::Ogre::nnLOD = "levelofdetail"
static

◆ nnMesh

const char* Assimp::Ogre::nnMesh = "mesh"
static

◆ nnNormal

const char* Assimp::Ogre::nnNormal = "normal"
static

◆ nnPoses

const char* Assimp::Ogre::nnPoses = "poses"
static

◆ nnPosition

const char* Assimp::Ogre::nnPosition = "position"
static

◆ nnRotate

const char* Assimp::Ogre::nnRotate = "rotate"
static

◆ nnRotation

const char* Assimp::Ogre::nnRotation = "rotation"
static

◆ nnScale

const char* Assimp::Ogre::nnScale = "scale"
static

◆ nnSharedGeometry

const char* Assimp::Ogre::nnSharedGeometry = "sharedgeometry"
static

◆ nnSkeleton

const char* Assimp::Ogre::nnSkeleton = "skeleton"
static

◆ nnSkeletonLink

const char* Assimp::Ogre::nnSkeletonLink = "skeletonlink"
static

◆ nnSubMesh

const char* Assimp::Ogre::nnSubMesh = "submesh"
static

◆ nnSubMeshes

const char* Assimp::Ogre::nnSubMeshes = "submeshes"
static

◆ nnSubMeshNames

const char* Assimp::Ogre::nnSubMeshNames = "submeshnames"
static

◆ nnTangent

const char* Assimp::Ogre::nnTangent = "tangent"
static

◆ nnTexCoord

const char* Assimp::Ogre::nnTexCoord = "texcoord"
static

◆ nnTextures

const char* Assimp::Ogre::nnTextures = "textures"
static

◆ nnTrack

const char* Assimp::Ogre::nnTrack = "track"
static

◆ nnTracks

const char* Assimp::Ogre::nnTracks = "tracks"
static

◆ nnTranslate

const char* Assimp::Ogre::nnTranslate = "translate"
static

◆ nnVertex

const char* Assimp::Ogre::nnVertex = "vertex"
static

◆ nnVertexBoneAssignment

const char* Assimp::Ogre::nnVertexBoneAssignment = "vertexboneassignment"
static

◆ nnVertexBuffer

const char* Assimp::Ogre::nnVertexBuffer = "vertexbuffer"
static

◆ partBlockEnd

const string Assimp::Ogre::partBlockEnd = "}"
static

◆ partBlockStart

const string Assimp::Ogre::partBlockStart = "{"
static

◆ partComment

const string Assimp::Ogre::partComment = "//"
static

◆ SKELETON_VERSION_1_1

const std::string Assimp::Ogre::SKELETON_VERSION_1_1 = "[Serializer_v1.10]"

◆ SKELETON_VERSION_1_8

const std::string Assimp::Ogre::SKELETON_VERSION_1_8 = "[Serializer_v1.80]"