#include <kfbxcache.h>
Inherits KFbxObject.
Inheritance diagram for KFbxCache:
The FBX SDK supports two point cache file formats:
Definition at line 64 of file kfbxcache.h.
Format Independant Functions. | |
enum | EFileFormat |
Supported cache file formats. More... | |
void | SetCacheFileFormat (EFileFormat pFileFormat) |
Set the cache file format. | |
EFileFormat | GetCacheFileFormat () |
Get the cache file format. | |
void | SetCacheFileName (const char *pRelativeFileName, const char *pAbsoluteFileName) |
Set the cache file name. | |
void | GetCacheFileName (KString &pRelativeFileName, KString &pAbsoluteFileName) |
Get the cache file name. | |
bool | OpenFileForRead () |
Open the cache file for reading. | |
bool | IsOpen () |
Get the open state of the cache file. | |
bool | CloseFile () |
Close the cache file. | |
eMC Format Specific Functions. | |
enum | EMCFileCount |
Number of files used to store the animation
| |
bool | OpenFileForWrite (EMCFileCount pFileCount, double pSamplingFrameRate, const char *pChannelName) |
Open a cache file for writing. | |
int | GetChannelCount () |
Get the number of channels in the cache file. | |
bool | GetChannelName (int pChannelIndex, KString &pChannelName) |
Get the channel name for a specific channel index. | |
int | GetChannelIndex (const char *pChannelName) |
Get the index of the specified channel. | |
bool | Read (int pChannelIndex, KTime &pTime, double *pBuffer, unsigned int pPointCount) |
Read a sample at a given time. | |
bool | Write (int pChannelIndex, KTime &pTime, double *pBuffer, unsigned int pPointCount) |
Write a sample at a given time. | |
Error Management | |
enum | EError |
Error identifiers. More... | |
KError & | GetError () |
Retrieve error object. | |
EError | GetLastErrorID () |
Get last error code. | |
char * | GetLastErrorString () |
Get last error string. | |
ePC2 Format Specific Functions. | |
bool | OpenFileForWrite (double pFrameStartOffset, double pSamplingFrameRate, unsigned int pSampleCount, unsigned int pPointCount) |
Open a cache file for writing. | |
unsigned int | GetSampleCount () |
Get the number of frames of animation found in the point cache file. | |
unsigned int | GetPointCount () |
Get the number of points animated in the cache file. | |
double | GetFrameStartOffset () |
Get the start time of the animation. | |
double | GetSamplingFrameRate () |
Get the sampling frame rate of the cache file. | |
bool | Read (unsigned int pFrameIndex, double *pBuffer, unsigned int pPointCount) |
Read a sample at a given frame index. | |
bool | Write (unsigned int pFrameIndex, double *pBuffer) |
Write a sample at a given frame index. | |
File conversion Functions. | |
bool | ConvertFromPC2ToMC (EMCFileCount pFileCount, double pSamplingFrameRate) |
Create an eMC cache file from an ePC2 cache file. | |
bool | ConvertFromMCToPC2 (double pSamplingFrameRate, unsigned int pChannelIndex) |
Create an ePC2 cache file from an eMC cache file. | |
Public Member Functions | |
KFbxCache & | operator= (const KFbxCache &pOther) |
Assignment operator. | |
virtual KFbxObject::ENameSpace | GetNameSpace () const |
Return the type ID of this class. |
enum EFileFormat |
Supported cache file formats.
Definition at line 79 of file kfbxcache.h.
enum EMCFileCount |
Number of files used to store the animation
Definition at line 135 of file kfbxcache.h.
enum EError |
Error identifiers.
Definition at line 300 of file kfbxcache.h.
void SetCacheFileFormat | ( | EFileFormat | pFileFormat | ) |
Set the cache file format.
pFileFormat | Valid values are ePC2 or eMC. |
EFileFormat GetCacheFileFormat | ( | ) |
Get the cache file format.
void SetCacheFileName | ( | const char * | pRelativeFileName, | |
const char * | pAbsoluteFileName | |||
) |
Set the cache file name.
pRelativeFileName | The point cache file, relative to the FBX file name. | |
pAbsoluteFileName | The point cache file absolute path. |
Get the cache file name.
pRelativeFileName | Return the point cache file name, relative to the FBX File name. | |
pAbsoluteFileName | Return the point cache file absolute path. |
bool OpenFileForRead | ( | ) |
Open the cache file for reading.
true
if the file is successfully opened, false
otherwise. See the error management functions for error details. bool IsOpen | ( | ) |
Get the open state of the cache file.
true
if the cache file is currently open, false
otherwise. bool CloseFile | ( | ) |
Close the cache file.
true
if the cache file is closed successfully, false
otherwise. bool OpenFileForWrite | ( | EMCFileCount | pFileCount, | |
double | pSamplingFrameRate, | |||
const char * | pChannelName | |||
) |
Open a cache file for writing.
pFileCount | Create one file for each frame of animation, or one file for all the frames. | |
pSamplingFrameRate | Number of frames per second. | |
pChannelName | The name of the channel of animation to create. |
int GetChannelCount | ( | ) |
Get the number of channels in the cache file.
bool GetChannelName | ( | int | pChannelIndex, | |
KString & | pChannelName | |||
) |
Get the channel name for a specific channel index.
pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). | |
pChannelName | Returns the name of the requested channel. |
true
if successful, false
otherwise. See the error management functions for error details. int GetChannelIndex | ( | const char * | pChannelName | ) |
Get the index of the specified channel.
pChannelName | The name of the channel. |
bool Read | ( | int | pChannelIndex, | |
KTime & | pTime, | |||
double * | pBuffer, | |||
unsigned int | pPointCount | |||
) |
Read a sample at a given time.
pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). | |
pTime | Time at which the point animation must be evaluated. | |
pBuffer | The place where the point value will be copied. This buffer must be of size 3*pPointCount. | |
pPointCount | The number of points to read from the point cache file. |
true
if successful, false
otherwise. See the error management functions for error details. bool Write | ( | int | pChannelIndex, | |
KTime & | pTime, | |||
double * | pBuffer, | |||
unsigned int | pPointCount | |||
) |
Write a sample at a given time.
pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). | |
pTime | Time at which the point animation must be inserted. | |
pBuffer | Point to the values to be copied. This buffer must be of size 3*pPointCount. | |
pPointCount | The number of points to write in the point cache file. |
true
if successful, false
otherwise. See the error management functions for error details. bool OpenFileForWrite | ( | double | pFrameStartOffset, | |
double | pSamplingFrameRate, | |||
unsigned int | pSampleCount, | |||
unsigned int | pPointCount | |||
) |
Open a cache file for writing.
pFrameStartOffset | Start time of the animation, in frames. | |
pSamplingFrameRate | Number of frames per second. | |
pSampleCount | The number of samples to write to the file. | |
pPointCount | The number of points to write in the point cache file. |
true
if successful, false
otherwise. See the error management functions for error details. unsigned int GetSampleCount | ( | ) |
Get the number of frames of animation found in the point cache file.
unsigned int GetPointCount | ( | ) |
Get the number of points animated in the cache file.
double GetFrameStartOffset | ( | ) |
Get the start time of the animation.
double GetSamplingFrameRate | ( | ) |
Get the sampling frame rate of the cache file.
bool Read | ( | unsigned int | pFrameIndex, | |
double * | pBuffer, | |||
unsigned int | pPointCount | |||
) |
Read a sample at a given frame index.
pFrameIndex | The index of the animation frame, between 0 and GetSampleCount(). | |
pBuffer | The place where the point value will be copied. This buffer must be of size 3*pPointCount. | |
pPointCount | The number of points to read from the point cache file. |
true
if successful, false
otherwise. See the error management functions for error details. bool Write | ( | unsigned int | pFrameIndex, | |
double * | pBuffer | |||
) |
Write a sample at a given frame index.
pFrameIndex | The index of the animation frame. | |
pBuffer | Point to the values to be copied. This buffer must be of size 3*pPointCount, as passed to the function OpenFileForWrite(). |
true
if successful, false
otherwise. See the error management functions for error details. bool ConvertFromPC2ToMC | ( | EMCFileCount | pFileCount, | |
double | pSamplingFrameRate | |||
) |
Create an eMC cache file from an ePC2 cache file.
pFileCount | Create one file for each frame of animation, or one file for all the frames. | |
pSamplingFrameRate | Number of frames per second used to resample the point animation. |
true
if successful, false
otherwise. See the error management functions for error details. bool ConvertFromMCToPC2 | ( | double | pSamplingFrameRate, | |
unsigned int | pChannelIndex | |||
) |
Create an ePC2 cache file from an eMC cache file.
pSamplingFrameRate | Number of frames per second to resample the point animation. | |
pChannelIndex | Index of the channel of animation to read from. |
true
if successful, false
otherwise. See the error management functions for error details. KError& GetError | ( | ) |
Retrieve error object.
EError GetLastErrorID | ( | ) |
Get last error code.
char* GetLastErrorString | ( | ) |
Get last error string.
virtual KFbxObject::ENameSpace GetNameSpace | ( | ) | const [virtual] |
Return the type ID of this class.