| Bullet Collision Detection & Physics Library
    | 
 
 
 
Go to the documentation of this file.
   20 #if !defined(__CELLOS_LV2__) && !defined(__MWERKS__) 
   26 #ifdef BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
   34 #else   //BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
   41 #endif  //BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
   46         : 
bFile(
"", 
"BULLET ")
 
   52 #ifdef BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
   62 #else   //BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
   75 #endif  //BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
   79         : 
bFile(fileName, 
"BULLET ")
 
   85         : 
bFile(memoryBuffer, len, 
"BULLET ")
 
  135         char* dataPtrHead = 0;
 
  147                         if (dataChunk.
dna_nr >= 0)
 
  149                                 char* 
id = 
readStruct(dataPtrHead, dataChunk);
 
  232                         printf(
"skipping BT_QUANTIZED_BVH_CODE due to broken DNA\n");
 
  260 #ifdef BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
  266                 fwrite(&dataChunk, 
sizeof(
bChunkInd), 1, fp);
 
  277                 fwrite(&dataChunk, 
sizeof(
bChunkInd), 1, fp);
 
  283 #else   //BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
  288                 fwrite(&dataChunk, 
sizeof(
bChunkInd), 1, fp);
 
  295                 fwrite(&dataChunk, 
sizeof(
bChunkInd), 1, fp);
 
  298 #endif  //BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
  303 #ifdef BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
  330 #else   //BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
  347 #endif  //BT_INTERNAL_UPDATE_SERIALIZATION_STRUCTURES 
  352         int littleEndian = 1;
 
  353         littleEndian = ((
char*)&littleEndian)[0];
 
  361         FILE* fp = fopen(fileName, 
"wb");
 
  367                 endian = ((
char*)&endian)[0];
 
  400                 printf(
"Error: cannot open file %s for writing\n", fileName);
 
  409         dataChunk.
code = code;
 
  413         dataChunk.
oldPtr = oldPtr;
 
  420         assert(len == elemBytes);
 
  
#define BT_CONTACTMANIFOLD_CODE
#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
#define BT_MB_LINKCOLLIDER_CODE
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
btAlignedObjectArray< bStructHandle * > m_contactManifolds
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
btAlignedObjectArray< bStructHandle * > m_multiBodyLinkColliders
int size() const
return the number of elements in the array