13 #ifndef _FBXSDK_CORE_STREAM_H_
14 #define _FBXSDK_CORE_STREAM_H_
38 virtual EState GetState() = 0;
43 virtual bool Open(
void* pStreamData) = 0;
48 virtual bool Close() = 0;
52 virtual bool Flush() = 0;
58 virtual size_t Write(
const void* ,
FbxUInt64 ) = 0;
64 virtual size_t Read(
void* ,
FbxUInt64 )
const = 0;
75 virtual char* ReadString(
char* pBuffer,
int pMaxSize,
bool pStopAtFirstWhiteSpace=
false);
81 virtual int GetReaderID()
const = 0;
87 virtual int GetWriterID()
const = 0;
96 virtual FbxInt64 GetPosition()
const = 0;
100 virtual void SetPosition(
FbxInt64 pPosition)=0;
105 virtual int GetError()
const = 0;
108 virtual void ClearError() = 0;
113 #ifndef DOXYGEN_SHOULD_SKIP_THIS
117 size_t Write(
const char* pData,
FbxUInt64 pSize){
return Write((
void*)pData, pSize); }
118 size_t Write(
const int* pData,
FbxUInt64 pSize){
return Write((
void*)pData, pSize); }
119 size_t Read(
char* pData,
FbxUInt64 pSize)
const {
return Read((
void*)pData, pSize); }
120 size_t Read(
int* pData,
FbxUInt64 pSize)
const {
return Read((
void*)pData, pSize); }
FBX SDK environment definition.
unsigned long long FbxUInt64
Abstract class for implementing I/O operations through a stream of data.
EState
Current stream state.
signed long long FbxInt64