一、serializer
位置:ogreserializer.h
主功能:讀寫檔案
從它繼承的類有:meshserializerimpl,skeletonserializer,gpunamedconstantsserializer。同時它又是繼承自serializeralloc(一種記憶體管理模式,materialserializer也繼承自它)。
也就是ogre裡涉及的檔案,包括mesh、gpu program 、骨骼檔案,都是通過它讀的,除了材質檔案(.material)。
說明:
裡面採用了自己的方式,以免讓別人讀出來。
頭,識別是哪種。
virtual
void writefileheader(void);
virtual
void writechunkheader(uint16 id, size_t size);
virtual
void readfileheader(datastreamptr& stream);
virtual
unsigned
short readchunk(datastreamptr& stream);
具體一般格式的讀寫
void writefloats(const
float* const pfloat, size_t count);
void writefloats(const
double* const pfloat, size_t count);
void writeshorts(const
uint16* const pshort, size_t count);
void writeints(const
uint32* const pint, size_t count);
void writebools(const
bool* const plong, size_t count);
void writeobject(const vector3& vec);
void writeobject(const quaternion& q);
void writestring(const string& string);
void writedata(const
void* const buf, size_t size, size_t count);
void readbools(datastreamptr& stream, bool* pdest, size_t count);
void readfloats(datastreamptr& stream, float* pdest, size_t count);
void readfloats(datastreamptr& stream, double* pdest, size_t count);
void readshorts(datastreamptr& stream, uint16* pdest, size_t count);
void readints(datastreamptr& stream, uint32* pdest, size_t count);
void readobject(datastreamptr& stream, vector3& pdest);
void readobject(datastreamptr& stream, quaternion& pdest);
string readstring(datastreamptr& stream);
string readstring(datastreamptr& stream, size_t numchars);
內部特殊處理的函式
virtual
void fliptolittleendian(void* pdata, size_t size, size_t count = 1);
virtual
void flipfromlittleendian(void* pdata, size_t size, size_t count = 1);
追到跟的特殊處理方式:
void serializer::flipendian(void * pdata, size_t size)
}
其實這兒沒必要深究啦,做外掛程式的話會用這個類的函式就行。 css樣式 記錄(不常用)
border 1px solid 3b80fa box sizing border box 一般用於百分比或者其他 必須要新增border等操作問題 語法 box sizing content box border box inherit 值 描述content box 這是由 css2.1 規定的...
不常用到的sql語句記錄
1 查詢觸發器是否存在 oracle select count as count from user triggers where trigger name upper triname sqlserver select count as count from sysobjects where nam...
IP位址中A類 B類 C類(D E不常用)
ip位址的四段號碼,第一段號碼為網路號碼,剩下的三段號碼為本地計算機的號碼。ip位址的二進位制,a類ip位址就由1位元組的網路位址和3位元組主機位址組成,網路位址的最高位必須是 0 a類ip位址中網路的標識長度為8位,主機標識的長度為24位。位址範圍 1.0.0.1 127.255.255.254 ...