|
Bullet Collision Detection & Physics Library
|
Go to the documentation of this file.
20 #if !defined( __CELLOS_LV2__) && !defined(__MWERKS__)
27 #ifdef BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
35 #else//BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
42 #endif //BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
54 #ifdef BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
64 #else//BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
77 #endif//BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
83 :
bFile(fileName,
"BULLET ")
91 :
bFile(memoryBuffer,len,
"BULLET ")
149 char *dataPtrHead = 0;
164 char *
id =
readStruct(dataPtrHead, dataChunk);
236 printf(
"skipping BT_QUANTIZED_BVH_CODE due to broken DNA\n");
271 #ifdef BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
277 fwrite(&dataChunk,
sizeof(
bChunkInd),1,fp);
288 fwrite(&dataChunk,
sizeof(
bChunkInd),1,fp);
294 #else//BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
299 fwrite(&dataChunk,
sizeof(
bChunkInd),1,fp);
306 fwrite(&dataChunk,
sizeof(
bChunkInd),1,fp);
309 #endif//BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
315 #ifdef BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
342 #else//BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
359 #endif//BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES
365 littleEndian= ((
char*)&littleEndian)[0];
374 FILE *fp = fopen(fileName,
"wb");
380 endian= ((
char*)&endian)[0];
411 printf(
"Error: cannot open file %s for writing\n",fileName);
423 dataChunk.
code = code;
427 dataChunk.
oldPtr = oldPtr;
434 assert(len==elemBytes);
#define btAlignedFree(ptr)
#define BT_TRIANLGE_INFO_MAP
static int getOffset(int flags)
btAlignedObjectArray< bStructHandle * > m_bvhs
int getReverseType(short type)
btAlignedObjectArray< bStructHandle * > m_multiBodies
#define BT_DYNAMICSWORLD_CODE
void swapLen(char *dataPtr)
#define btAlignedAlloc(size, alignment)
char * readStruct(char *head, class bChunkInd &chunk)
#define BT_MULTIBODY_CODE
btAlignedObjectArray< bStructHandle * > m_rigidBodies
btAlignedObjectArray< bStructHandle * > m_dynamicsWorldInfo
#define BT_COLLISIONOBJECT_CODE
virtual int write(const char *fileName, bool fixupPointers=false)
btAlignedObjectArray< bStructHandle * > m_collisionShapes
virtual void addDataBlock(char *dataBlock)
#define SIZEOFBLENDERHEADER
int getNextBlock(bChunkInd *dataChunk, const char *dataPtr, const int flags)
btAlignedObjectArray< bChunkInd > m_chunks
btAlignedObjectArray< bStructHandle * > m_triangleInfoMaps
virtual void parseInternal(int verboseMode, char *memDna, int memDnaLength)
#define BT_CONSTRAINT_CODE
#define BT_QUANTIZED_BVH_CODE
btAlignedObjectArray< char * > m_dataBlocks
void insert(const Key &key, const Value &value)
virtual void writeDNA(FILE *fp)
btAlignedObjectArray< bStructHandle * > m_constraints
virtual void parse(int verboseMode)
void init(char *data, int len, bool swap=false)
short * getStruct(int ind)
btHashMap< btHashPtr, bChunkInd > m_chunkPtrPtrMap
void addStruct(const char *structType, void *data, int len, void *oldPtr, int code)
btAlignedObjectArray< bStructHandle * > m_collisionObjects
#define BT_RIGIDBODY_CODE
void push_back(const T &_Val)
virtual void writeChunks(FILE *fp, bool fixupPointers)
btAlignedObjectArray< bStructHandle * > m_softBodies
int size() const
return the number of elements in the array