Castor3D 0.16.0
Multiplatform 3D engine
Classes | Namespaces | Enumerations | Functions | Variables
BinaryChunk.hpp File Reference

Classes

class  castor3d::BinaryChunk
 

Namespaces

namespace  castor3d
 

Enumerations

enum class  castor3d::ChunkType : uint64_t {
  castor3d::eUnknown = makeChunkID( ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ' ) , castor3d::eCmshFile = makeChunkID( 'C', 'M', 'S', 'H', 'F', 'I', 'L', 'E' ) , castor3d::eCmshHeader = makeChunkID( 'C', 'M', 'S', 'H', 'H', 'D', 'E', 'R' ) , castor3d::eCmshVersion = makeChunkID( 'C', 'M', 'S', 'H', 'V', 'R', 'S', 'N' ) ,
  castor3d::eName = makeChunkID( 'N', 'A', 'M', 'E', ' ', ' ', ' ', ' ' ) , castor3d::eMesh = makeChunkID( 'M', 'E', 'S', 'H', ' ', ' ', ' ', ' ' ) , castor3d::eSkeleton = makeChunkID( 'S', 'K', 'E', 'L', 'E', 'T', 'O', 'N' ) , castor3d::eSkeletonGlobalInverse = makeChunkID( 'S', 'K', 'E', 'L', 'G', 'I', 'M', 'X' ) ,
  castor3d::eSkeletonBone = makeChunkID( 'S', 'K', 'E', 'L', 'B', 'O', 'N', 'E' ) , castor3d::eSkeletonNode = makeChunkID( 'S', 'K', 'E', 'L', 'N', 'O', 'D', 'E' ) , castor3d::eBoneParentName = makeChunkID( 'B', 'O', 'N', 'E', 'P', 'A', 'R', 'T' ) , castor3d::eBoneOffsetMatrix = makeChunkID( 'B', 'O', 'N', 'E', 'O', 'M', 'T', 'X' ) ,
  castor3d::eSubmesh = makeChunkID( 'S', 'U', 'B', 'M', 'E', 'S', 'H', ' ' ) , castor3d::eSubmeshTopology = makeChunkID( 'S', 'M', 'S', 'H', 'T', 'O', 'P', 'O' ) , castor3d::eSubmeshVertexCount = makeChunkID( 'S', 'M', 'S', 'H', 'V', 'X', 'C', 'T' ) , castor3d::eSubmeshBoneCount = makeChunkID( 'S', 'M', 'S', 'H', 'B', 'N', 'C', 'T' ) ,
  castor3d::eSubmeshBones = makeChunkID( 'S', 'M', 'S', 'H', 'B', 'O', 'N', 'E' ) , castor3d::eSubmeshMatrixCount = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'X', 'C', 'T' ) , castor3d::eSubmeshMatrices = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'R', 'X' ) , castor3d::eAnimable = makeChunkID( 'A', 'N', 'I', 'M', 'A', 'B', 'L', 'E' ) ,
  castor3d::eAnimation = makeChunkID( 'A', 'N', 'M', 'A', 'T', 'I', 'O', 'N' ) , castor3d::eAnimLength = makeChunkID( 'A', 'N', 'M', 'L', 'E', 'N', 'G', 'T' ) , castor3d::eSkeletonAnimation = makeChunkID( 'S', 'K', 'E', 'L', 'A', 'N', 'I', 'M' ) , castor3d::eMeshAnimation = makeChunkID( 'M', 'E', 'S', 'H', 'A', 'N', 'I', 'M' ) ,
  castor3d::eAnimInterpolator = makeChunkID( 'A', 'N', 'M', 'I', 'N', 'T', 'E', 'R' ) , castor3d::eAnimationObject = makeChunkID( 'A', 'N', 'S', 'K', 'O', 'B', 'J', 'T' ) , castor3d::eSkeletonAnimationNode = makeChunkID( 'A', 'N', 'S', 'K', 'N', 'O', 'D', 'E' ) , castor3d::eSkeletonAnimationBone = makeChunkID( 'A', 'N', 'S', 'K', 'B', 'O', 'N', 'E' ) ,
  castor3d::eMovingTransform = makeChunkID( 'M', 'V', 'N', 'G', 'T', 'S', 'F', 'M' ) , castor3d::eBonesComponent = makeChunkID( 'B', 'O', 'N', 'E', 'C', 'O', 'M', 'P' ) , castor3d::eKeyframeCount = makeChunkID( 'K', 'F', 'R', 'M', 'C', 'O', 'N', 'T' ) , castor3d::eKeyframes = makeChunkID( 'K', 'E', 'Y', 'F', 'R', 'M', 'E', 'S' ) ,
  castor3d::eSkeletonAnimationKeyFrame = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'R', 'M' ) , castor3d::eSkeletonAnimationKeyFrameTime = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'T', 'M' ) , castor3d::eSkeletonAnimationKeyFrameObjectType = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'O', 'Y' ) , castor3d::eSkeletonAnimationKeyFrameObjectName = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'O', 'N' ) ,
  castor3d::eSubmeshFaceCount = makeChunkID( 'S', 'M', 'S', 'H', 'F', 'C', 'C', 'T' ) , castor3d::eSubmeshIndexComponentCount = makeChunkID( 'S', 'M', 'F', 'C', 'C', 'P', 'C', 'T' ) , castor3d::eSubmeshIndexCount = makeChunkID( 'S', 'M', 'S', 'H', 'I', 'C', 'C', 'T' ) , castor3d::eSubmeshFaces = makeChunkID( 'S', 'M', 'S', 'H', 'F', 'A', 'C', 'E' ) ,
  castor3d::eSubmeshIndices = makeChunkID( 'S', 'M', 'S', 'H', 'I', 'D', 'C', 'S' ) , castor3d::eSceneNodeAnimation = makeChunkID( 'S', 'C', 'N', 'D', 'A', 'N', 'I', 'M' ) , castor3d::eSceneNodeAnimationKeyFrame = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'R', 'M' ) , castor3d::eSceneNodeAnimationKeyFrameTime = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'T', 'M' ) ,
  castor3d::eSceneNodeAnimationKeyFrameTranslate = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'T', 'R' ) , castor3d::eSceneNodeAnimationKeyFrameRotate = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'R', 'T' ) , castor3d::eSceneNodeAnimationKeyFrameScale = makeChunkID( 'S', 'N', 'A', 'N', 'K', 'F', 'S', 'L' ) , castor3d::eBoneId = makeChunkID( 'B', 'O', 'N', 'E', 'I', 'D', ' ', ' ' ) ,
  castor3d::eSubmeshVertex = makeChunkID( 'S', 'M', 'S', 'H', 'V', 'R', 'T', 'X' ) , castor3d::eSubmeshPositions = makeChunkID( 'S', 'M', 'S', 'H', 'P', 'O', 'S', 'I' ) , castor3d::eSubmeshNormals = makeChunkID( 'S', 'M', 'S', 'H', 'N', 'O', 'R', 'M' ) , castor3d::eSubmeshTangents = makeChunkID( 'S', 'M', 'S', 'H', 'T', 'A', 'N', 'G' ) ,
  castor3d::eSubmeshTexcoords0 = makeChunkID( 'S', 'M', 'S', 'H', 'T', 'E', 'X', 'C' ) , castor3d::eSubmeshTexcoords1 = makeChunkID( 'S', 'M', 'S', 'H', 'T', 'E', 'X', '1' ) , castor3d::eSubmeshTexcoords2 = makeChunkID( 'S', 'M', 'S', 'H', 'T', 'E', 'X', '2' ) , castor3d::eSubmeshTexcoords3 = makeChunkID( 'S', 'M', 'S', 'H', 'T', 'E', 'X', '3' ) ,
  castor3d::eSubmeshColours = makeChunkID( 'S', 'M', 'S', 'H', 'C', 'O', 'L', 'R' ) , castor3d::eMeshAnimationKeyFrame = makeChunkID( 'M', 'S', 'A', 'N', 'K', 'F', 'R', 'M' ) , castor3d::eMeshAnimationKeyFrameTime = makeChunkID( 'M', 'S', 'A', 'N', 'K', 'F', 'T', 'M' ) , castor3d::eMeshAnimationKeyFrameBufferData = makeChunkID( 'M', 'H', 'A', 'N', 'K', 'F', 'D', 'T' ) ,
  castor3d::eMeshAnimationKeyFrameSubmeshID = makeChunkID( 'M', 'S', 'A', 'N', 'K', 'F', 'I', 'D' ) , castor3d::eMeshAnimationKeyFrameBufferSize = makeChunkID( 'M', 'H', 'A', 'N', 'K', 'F', 'S', 'Z' ) , castor3d::eMorphComponent = makeChunkID( 'M', 'O', 'R', 'P', 'C', 'O', 'M', 'P' ) , castor3d::eMorphTargetBufferSize = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'S', 'Z' ) ,
  castor3d::eMorphTargetPositions = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'P', 'O' ) , castor3d::eMorphTargetNormals = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'N', 'M' ) , castor3d::eMorphTargetTangents = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'T', 'A' ) , castor3d::eMorphTargetTexcoords0 = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'T', 'X' ) ,
  castor3d::eMorphTargetTexcoords1 = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'T', '1' ) , castor3d::eMorphTargetTexcoords2 = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'T', '2' ) , castor3d::eMorphTargetTexcoords3 = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'T', '3' ) , castor3d::eMorphTargetColours = makeChunkID( 'S', 'M', 'S', 'H', 'K', 'F', 'C', 'L' ) ,
  castor3d::eMeshMorphTarget = makeChunkID( 'M', 'H', 'A', 'N', 'M', 'P', 'T', 'G' ) , castor3d::eMeshMorphTargetTime = makeChunkID( 'S', 'M', 'S', 'H', 'M', 'T', 'T', 'M' ) , castor3d::eMeshMorphTargetSubmeshID = makeChunkID( 'M', 'H', 'A', 'N', 'M', 'T', 'I', 'D' ) , castor3d::eMeshMorphTargetWeights = makeChunkID( 'M', 'H', 'A', 'N', 'M', 'T', 'W', 'T' ) ,
  castor3d::eSkeletonAnimationKeyFrameObjectTransform = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'O', 'T' ) , castor3d::eSkeletonAnimationKeyFrameObjectTranslate = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'O', 'R' ) , castor3d::eSkeletonAnimationKeyFrameObjectRotate = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'O', 'O' ) , castor3d::eSkeletonAnimationKeyFrameObjectScale = makeChunkID( 'S', 'K', 'A', 'N', 'K', 'F', 'O', 'S' ) ,
  castor3d::eSubmeshTangentsMikkt = makeChunkID( 'S', 'M', 'S', 'M', 'K', 'T', 'A', 'N' ) , castor3d::eMorphTargetTangentsMikkt = makeChunkID( 'S', 'M', 'S', 'M', 'K', 'M', 'T', 'A' ) , castor3d::eSubmeshBitangents = makeChunkID( 'S', 'M', 'S', 'M', 'K', 'B', 'I', 'T' ) , castor3d::eMorphTargetBitangents = makeChunkID( 'S', 'M', 'S', 'M', 'K', 'M', 'B', 'I' )
}
 Binary data chunk types enumeration. More...
 

Functions

constexpr uint32_t castor3d::makeCmshVersion (uint32_t maj, uint32_t min, uint32_t rev)
 Creates a cmsh version number.
 
constexpr uint32_t castor3d::getCmshMajor (uint32_t version)
 
constexpr uint32_t castor3d::getCmshMinor (uint32_t version)
 
constexpr uint32_t castor3d::getCmshRevision (uint32_t version)
 
uint64_t constexpr castor3d::makeChunkID (char a, char b, char c, char d, char e, char f, char g, char h)
 Creates a chunk ID.
 
static void castor3d::prepareChunkData (ChunkType &value)
 Sets given value to big endian.
 

Variables

uint32_t constexpr castor3d::CurrentCmshVersion = makeCmshVersion( 0x01u, 0x07u, 0x0000u )