- Cal3D 0.11 API Reference -

Static Public Member Functions | Static Public Attributes | List of all members
CalLoader Class Reference

The loader class. More...

#include <loader.h>

Static Public Member Functions

static CalCoreAnimationPtr loadCoreAnimation (const std::string &strFilename, CalCoreSkeleton *skel=NULL)
 Loads a core animation instance. More...
 
static CalCoreMaterialPtr loadCoreMaterial (const std::string &strFilename)
 Loads a core material instance. More...
 
static CalCoreMeshPtr loadCoreMesh (const std::string &strFilename)
 Loads a core mesh instance. More...
 
static CalCoreSkeletonPtr loadCoreSkeleton (const std::string &strFilename)
 Loads a core skeleton instance. More...
 
static CalCoreAnimatedMorphloadCoreAnimatedMorph (const std::string &strFilename)
 Loads a core animatedMorph instance. More...
 
static CalCoreAnimationPtr loadCoreAnimation (std::istream &inputStream, CalCoreSkeleton *skel=NULL)
 Loads a core animation instance. More...
 
static CalCoreAnimatedMorphloadCoreAnimatedMorph (std::istream &inputStream)
 
static CalCoreMaterialPtr loadCoreMaterial (std::istream &inputStream)
 Loads a core material instance. More...
 
static CalCoreMeshPtr loadCoreMesh (std::istream &inputStream)
 Loads a core mesh instance. More...
 
static CalCoreSkeletonPtr loadCoreSkeleton (std::istream &inputStream)
 Loads a core skeleton instance. More...
 
static CalCoreAnimationPtr loadCoreAnimation (void *inputBuffer, CalCoreSkeleton *skel=NULL)
 Loads a core animation instance. More...
 
static CalCoreAnimatedMorphloadCoreAnimatedMorphFromBuffer (void *inputBuffer, unsigned int len)
 Loads a core animatedMorph instance. More...
 
static CalCoreMaterialPtr loadCoreMaterial (void *inputBuffer)
 Loads a core material instance. More...
 
static CalCoreMeshPtr loadCoreMesh (void *inputBuffer)
 Loads a core mesh instance. More...
 
static CalCoreSkeletonPtr loadCoreSkeleton (void *inputBuffer)
 Loads a core skeleton instance. More...
 
static CalCoreAnimationPtr loadCoreAnimation (CalDataSource &inputSrc, CalCoreSkeleton *skel=NULL)
 Loads a core animation instance. More...
 
static CalCoreAnimatedMorphloadCoreAnimatedMorph (CalDataSource &inputSrc)
 Loads a core animatedMorph instance. More...
 
static CalCoreMaterialPtr loadCoreMaterial (CalDataSource &inputSrc)
 Loads a core material instance. More...
 
static CalCoreMeshPtr loadCoreMesh (CalDataSource &inputSrc)
 Loads a core mesh instance. More...
 
static CalCoreSkeletonPtr loadCoreSkeleton (CalDataSource &inputSrc)
 Loads a core skeleton instance. More...
 
static void setLoadingMode (int flags)
 Sets optional flags which affect how the model is loaded into memory. More...
 
static void setAnimationCollapseSequencesOn (bool p)
 
static void setAnimationLoadingCompressionOn (bool p)
 
static void setAnimationTranslationTolerance (double p)
 
static void setAnimationRotationToleranceDegrees (double p)
 
static bool getAnimationLoadingCompressionOn ()
 
static CalCoreKeyframeloadCoreKeyframe (CalDataSource &dataSrc)
 
static CalCoreKeyframeloadCompressedCoreKeyframe (CalDataSource &dataSrc, const CalVector &trackMinPt, const CalVector &trackScale, float trackDuration)
 Loads a core compressed keyframe instance. More...
 
static double getAnimationTranslationTolerance ()
 
static double getAnimationRotationToleranceDegrees ()
 
static int getAnimationNumEliminatedKeyframes ()
 
static int getAnimationNumKeptKeyframes ()
 
static int getAnimationNumRoundedKeyframes ()
 
static int getAnimationNumCompressedAnimations ()
 
static void addAnimationCompressionStatistic (int totalKeyframes, int eliminatedKeyframes, int numRounded)
 
static void resetCompressionStatistics ()
 
static bool usesAnimationCompression (int version)
 
static unsigned int compressedKeyframeRequiredBytes (CalCoreKeyframe *lastCoreKeyframe, bool translationRequired, bool highRangeRequired, bool translationIsDynamic)
 
static unsigned int readCompressedKeyframe (unsigned char *buf, unsigned int bytes, CalCoreBone *coreboneOrNull, CalVector *vecResult, CalQuaternion *quatResult, float *timeResult, CalCoreKeyframe *lastCoreKeyframe, bool translationRequired, bool highRangeRequired, bool translationIsDynamic, bool useAnimationCompression)
 
static unsigned int writeCompressedKeyframe (unsigned char *buf, unsigned int bufLen, const std::string &strFilename, CalVector const &translation, CalQuaternion const &rotation, float caltime, int version, bool needTranslation, bool highRangeRequired)
 
static void compressCoreAnimation (CalCoreAnimation *anim, CalCoreSkeleton *skel)
 
static CalCoreAnimationPtr loadXmlCoreAnimation (const std::string &strFilename, CalCoreSkeleton *skel=NULL)
 Loads a core animation instance from a XML file. More...
 
static CalCoreAnimationPtr loadXmlCoreAnimation (const char *, CalCoreSkeleton *skel)
 Loads a core animation instance from a XML file. More...
 
static CalCoreAnimationPtr loadXmlCoreAnimation (cal3d::TiXmlDocument &doc, CalCoreSkeleton *skel)
 Loads a core animation instance from a XML file. More...
 
static CalCoreSkeletonPtr loadXmlCoreSkeleton (const std::string &strFilename)
 Loads a core skeleton instance from a XML file. More...
 
static CalCoreMeshPtr loadXmlCoreMesh (const std::string &strFilename)
 Loads a core mesh instance from a Xml file. More...
 
static CalCoreMaterialPtr loadXmlCoreMaterial (const std::string &strFilename)
 Loads a core material instance from a XML file. More...
 
static CalCoreAnimatedMorphloadXmlCoreAnimatedMorph (const std::string &strFilename)
 Loads a core animatedMorph instance from a XML file. More...
 
static CalCoreAnimatedMorphloadXmlCoreAnimatedMorph (const void *)
 Loads a core animatedMorph instance from a XML file. More...
 
static CalCoreAnimatedMorphloadXmlCoreAnimatedMorph (cal3d::TiXmlDocument &doc)
 Loads a core animatedMorph instance from a XML file. More...
 
static CalCoreSkeletonPtr loadXmlCoreSkeletonFromFile (const std::string &strFilename)
 Loads a core skeleton instance from a XML file. More...
 
static CalCoreSkeletonPtr loadXmlCoreSkeleton (const void *)
 Loads a core skeleton instance from a XML file. More...
 
static CalCoreMeshPtr loadXmlCoreMesh (const void *)
 Loads a core Mesh instance from a XML file. More...
 
static CalCoreMaterialPtr loadXmlCoreMaterial (const void *)
 Loads a core Material instance from a XML file. More...
 

Static Public Attributes

static unsigned int const keyframeBitsPerOriComponent = 11
 
static unsigned int const keyframeBitsPerTime = 10
 
static unsigned int const keyframeBitsPerUnsignedPosComponent = 25
 
static unsigned int const keyframeBitsPerPosPadding = 2
 
static float const keyframePosRange = ( 1 << ( CalLoader::keyframeBitsPerUnsignedPosComponent - 2 ) )
 
static unsigned int const keyframePosBytes = 10
 
static unsigned int const keyframeBitsPerUnsignedPosComponentSmall = 9
 
static unsigned int const keyframeBitsPerPosPaddingSmall = 2
 
static float const keyframePosRangeSmall = ( 1 << ( CalLoader::keyframeBitsPerUnsignedPosComponentSmall - 2 ) )
 
static unsigned int const keyframePosBytesSmall = 4
 

Detailed Description

The loader class.

Member Function Documentation

CalCoreKeyframe * CalLoader::loadCompressedCoreKeyframe ( CalDataSource dataSrc,
const CalVector trackMinPt,
const CalVector trackScale,
float  trackDuration 
)
static

Loads a core compressed keyframe instance.

This function loads a core compressed keyframe instance from a data source.

Parameters
dataSrcThe data source to load the core compressed keyframe instance from.
Returns
One of the following values:
  • a pointer to the core keyframe
  • 0 if an error happened
CalCoreAnimatedMorph * CalLoader::loadCoreAnimatedMorph ( const std::string &  strFilename)
static

Loads a core animatedMorph instance.

This function loads a core animatedMorph instance from a file.

Parameters
strFilenameThe file to load the core animatedMorph instance from.
Returns
One of the following values:
  • a pointer to the core animatedMorph
  • 0 if an error happened
CalCoreAnimatedMorph * CalLoader::loadCoreAnimatedMorph ( CalDataSource dataSrc)
static

Loads a core animatedMorph instance.

This function loads a core animatedMorph instance from a data source.

Parameters
dataSrcThe data source to load the core animatedMorph instance from.
Returns
One of the following values:
  • a pointer to the core animatedMorph
  • 0 if an error happened
CalCoreAnimatedMorph * CalLoader::loadCoreAnimatedMorphFromBuffer ( void *  inputBuffer,
unsigned int  len 
)
static

Loads a core animatedMorph instance.

This function loads a core animatedMorph instance from a memory buffer.

Parameters
inputBufferThe memory buffer to load the core animatedMorph instance from. This buffer should be initialized and ready to be read from.
Returns
One of the following values:
  • a pointer to the core animatedMorph
  • 0 if an error happened
CalCoreAnimationPtr CalLoader::loadCoreAnimation ( const std::string &  strFilename,
CalCoreSkeleton skel = NULL 
)
static

Loads a core animation instance.

This function loads a core animation instance from a file.

Parameters
strFilenameThe file to load the core animation instance from.
Returns
One of the following values:
  • a pointer to the core animation
  • 0 if an error happened
CalCoreAnimationPtr CalLoader::loadCoreAnimation ( std::istream &  inputStream,
CalCoreSkeleton skel = NULL 
)
static

Loads a core animation instance.

This function loads a core animation instance from an input stream.

Parameters
inputStreamThe stream to load the core animation instance from. This stream should be initialized and ready to be read from.
Returns
One of the following values:
  • a pointer to the core animation
  • 0 if an error happened
CalCoreAnimationPtr CalLoader::loadCoreAnimation ( void *  inputBuffer,
CalCoreSkeleton skel = NULL 
)
static

Loads a core animation instance.

This function loads a core animation instance from a memory buffer.

Parameters
inputBufferThe memory buffer to load the core animation instance from. This buffer should be initialized and ready to be read from.
Returns
One of the following values:
  • a pointer to the core animation
  • 0 if an error happened
CalCoreAnimationPtr CalLoader::loadCoreAnimation ( CalDataSource dataSrc,
CalCoreSkeleton skel = NULL 
)
static

Loads a core animation instance.

This function loads a core animation instance from a data source.

Parameters
dataSrcThe data source to load the core animation instance from.
Returns
One of the following values:
  • a pointer to the core animation
  • 0 if an error happened
CalCoreMaterialPtr CalLoader::loadCoreMaterial ( const std::string &  strFilename)
static

Loads a core material instance.

This function loads a core material instance from a file.

Parameters
strFilenameThe file to load the core material instance from.
Returns
One of the following values:
  • a pointer to the core material
  • 0 if an error happened
CalCoreMaterialPtr CalLoader::loadCoreMaterial ( std::istream &  inputStream)
static

Loads a core material instance.

This function loads a core material instance from an input stream.

Parameters
inputStreamThe stream to load the core material instance from. This stream should be initialized and ready to be read from.
Returns
One of the following values:
  • a pointer to the core material
  • 0 if an error happened
CalCoreMaterialPtr CalLoader::loadCoreMaterial ( void *  inputBuffer)
static

Loads a core material instance.

This function loads a core material instance from a memory buffer.

Parameters
inputBufferThe memory buffer to load the core material instance from. This buffer should be initialized and ready to be read from.
Returns
One of the following values:
  • a pointer to the core material
  • 0 if an error happened
CalCoreMaterialPtr CalLoader::loadCoreMaterial ( CalDataSource dataSrc)
static

Loads a core material instance.

This function loads a core material instance from a data source.

Parameters
dataSrcThe data source to load the core material instance from.
Returns
One of the following values:
  • a pointer to the core material
  • 0 if an error happened
CalCoreMeshPtr CalLoader::loadCoreMesh ( const std::string &  strFilename)
static

Loads a core mesh instance.

This function loads a core mesh instance from a file.

Parameters
strFilenameThe file to load the core mesh instance from.
Returns
One of the following values:
  • a pointer to the core mesh
  • 0 if an error happened
CalCoreMeshPtr CalLoader::loadCoreMesh ( std::istream &  inputStream)
static

Loads a core mesh instance.

This function loads a core mesh instance from an input stream.

Parameters
inputStreamThe stream to load the core mesh instance from. This stream should be initialized and ready to be read from.
Returns
One of the following values:
  • a pointer to the core mesh
  • 0 if an error happened
CalCoreMeshPtr CalLoader::loadCoreMesh ( void *  inputBuffer)
static

Loads a core mesh instance.

This function loads a core mesh instance from a memory buffer.

Parameters
inputBufferThe memory buffer to load the core mesh instance from. This buffer should be initialized and ready to be read from.
Returns
One of the following values:
  • a pointer to the core mesh
  • 0 if an error happened
CalCoreMeshPtr CalLoader::loadCoreMesh ( CalDataSource dataSrc)
static

Loads a core mesh instance.

This function loads a core mesh instance from a data source.

Parameters
dataSrcThe data source to load the core mesh instance from.
Returns
One of the following values:
  • a pointer to the core mesh
  • 0 if an error happened
CalCoreSkeletonPtr CalLoader::loadCoreSkeleton ( const std::string &  strFilename)
static

Loads a core skeleton instance.

This function loads a core skeleton instance from a file.

Parameters
strFilenameThe file to load the core skeleton instance from.
Returns
One of the following values:
  • a pointer to the core skeleton
  • 0 if an error happened
CalCoreSkeletonPtr CalLoader::loadCoreSkeleton ( std::istream &  inputStream)
static

Loads a core skeleton instance.

This function loads a core skeleton instance from an input stream.

Parameters
inputStreamThe stream to load the core skeleton instance from. This stream should be initialized and ready to be read from.
Returns
One of the following values:
  • a pointer to the core skeleton
  • 0 if an error happened
CalCoreSkeletonPtr CalLoader::loadCoreSkeleton ( void *  inputBuffer)
static

Loads a core skeleton instance.

This function loads a core skeleton instance from a memory buffer.

Parameters
inputBufferThe memory buffer to load the core skeleton instance from. This buffer should be initialized and ready to be read from.
Returns
One of the following values:
  • a pointer to the core skeleton
  • 0 if an error happened
CalCoreSkeletonPtr CalLoader::loadCoreSkeleton ( CalDataSource dataSrc)
static

Loads a core skeleton instance.

This function loads a core skeleton instance from a data source.

Parameters
dataSrcThe data source to load the core skeleton instance from.
Returns
One of the following values:
  • a pointer to the core skeleton
  • 0 if an error happened
CalCoreAnimatedMorph * CalLoader::loadXmlCoreAnimatedMorph ( const std::string &  strFilename)
static

Loads a core animatedMorph instance from a XML file.

This function loads a core animatedMorph instance from a XML file.

Parameters
strFilenameThe name of the file to load the core animatedMorph instance from.
Returns
One of the following values:
  • a pointer to the core animatedMorph
  • 0 if an error happened
CalCoreAnimatedMorph * CalLoader::loadXmlCoreAnimatedMorph ( const void *  dataSrc)
static

Loads a core animatedMorph instance from a XML file.

This function loads a core animatedMorph instance from a XML file.

Parameters
strFilenameThe name of the file to load the core animatedMorph instance from.
Returns
One of the following values:
  • a pointer to the core animatedMorph
  • 0 if an error happened
CalCoreAnimatedMorph * CalLoader::loadXmlCoreAnimatedMorph ( cal3d::TiXmlDocument doc)
static

Loads a core animatedMorph instance from a XML file.

This function loads a core animatedMorph instance from a XML file.

Parameters
strFilenameThe name of the file to load the core animatedMorph instance from.
Returns
One of the following values:
  • a pointer to the core animatedMorph
  • 0 if an error happened
CalCoreAnimationPtr CalLoader::loadXmlCoreAnimation ( const std::string &  strFilename,
CalCoreSkeleton skel = NULL 
)
static

Loads a core animation instance from a XML file.

This function loads a core animation instance from a XML file.

Parameters
strFilenameThe name of the file to load the core animation instance from.
Returns
One of the following values:
  • a pointer to the core animation
  • 0 if an error happened
CalCoreAnimationPtr CalLoader::loadXmlCoreAnimation ( const char *  dataSrc,
CalCoreSkeleton skel 
)
static

Loads a core animation instance from a XML file.

This function loads a core animation instance from a XML file.

Parameters
strFilenameThe name of the file to load the core animation instance from.
Returns
One of the following values:
  • a pointer to the core animation
  • 0 if an error happened
CalCoreAnimationPtr CalLoader::loadXmlCoreAnimation ( cal3d::TiXmlDocument doc,
CalCoreSkeleton skel 
)
static

Loads a core animation instance from a XML file.

This function loads a core animation instance from a XML file.

Parameters
strFilenameThe name of the file to load the core animation instance from.
Returns
One of the following values:
  • a pointer to the core animation
  • 0 if an error happened
CalCoreMaterialPtr CalLoader::loadXmlCoreMaterial ( const std::string &  strFilename)
static

Loads a core material instance from a XML file.

This function loads a core material instance from a XML file.

Parameters
strFilenameThe name of the file to load the core material instance from.
Returns
One of the following values:
  • a pointer to the core material
  • 0 if an error happened
CalCoreMaterialPtr CalLoader::loadXmlCoreMaterial ( const void *  dataSrc)
static

Loads a core Material instance from a XML file.

This function loads a core Material instance from a XML file.

Parameters
strFilenameThe name of the file to load the core Material instance from.
Returns
One of the following values:
  • a pointer to the core Material
  • 0 if an error happened
CalCoreMeshPtr CalLoader::loadXmlCoreMesh ( const std::string &  strFilename)
static

Loads a core mesh instance from a Xml file.

This function loads a core mesh instance from a Xml file.

Parameters
strFilenameThe name of the file to load the core mesh instance from.
Returns
One of the following values:
  • a pointer to the core mesh
  • 0 if an error happened
CalCoreMeshPtr CalLoader::loadXmlCoreMesh ( const void *  dataSrc)
static

Loads a core Mesh instance from a XML file.

This function loads a core Mesh instance from a XML file.

Parameters
strFilenameThe name of the file to load the core Mesh instance from.
Returns
One of the following values:
  • a pointer to the core Mesh
  • 0 if an error happened
CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton ( const std::string &  strFilename)
static

Loads a core skeleton instance from a XML file.

This function loads a core skeleton instance from a XML file.

Parameters
strFilenameThe name of the file to load the core skeleton instance from.
Returns
One of the following values:
  • a pointer to the core skeleton
  • 0 if an error happened
CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeleton ( const void *  dataSrc)
static

Loads a core skeleton instance from a XML file.

This function loads a core skeleton instance from a XML file.

Parameters
strFilenameThe name of the file to load the core skeleton instance from.
Returns
One of the following values:
  • a pointer to the core skeleton
  • 0 if an error happened
CalCoreSkeletonPtr CalLoader::loadXmlCoreSkeletonFromFile ( const std::string &  strFilename)
static

Loads a core skeleton instance from a XML file.

This function loads a core skeleton instance from a XML file.

Parameters
strFilenameThe name of the file to load the core skeleton instance from.
Returns
One of the following values:
  • a pointer to the core skeleton
  • 0 if an error happened
void CalLoader::setLoadingMode ( int  flags)
static

Sets optional flags which affect how the model is loaded into memory.

This function sets the loading mode for all future loader calls.

Parameters
flagsA boolean OR of any of the following flags
  • LOADER_ROTATE_X_AXIS will rotate the mesh 90 degrees about the X axis, which has the effect of swapping Y/Z coordinates.
  • LOADER_INVERT_V_COORD will substitute (1-v) for any v texture coordinate to eliminate the need for texture inversion after export.

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

Generated at Sun Mar 22 2020 14:44:18 by The Cal3D Team with Doxygen 1.8.8