9#define BOX2D_CPP extern "C"
14#if defined(_WIN32) && defined(BOX2D_BUILD_DLL)
16#define BOX2D_API BOX2D_CPP __declspec(dllexport)
17#elif defined(_WIN32) && defined(BOX2D_DLL)
19#define BOX2D_API BOX2D_CPP __declspec(dllimport)
20#elif defined(__GNUC__) && defined(BOX2D_BUILD_DLL)
22#define BOX2D_API BOX2D_CPP __attribute__((visibility("default")))
24#define BOX2D_API BOX2D_CPP
30typedef void* b2AllocFcn(uint32_t size, int32_t alignment);
34typedef void b2FreeFcn(
void* mem);
38BOX2D_API
void b2SetAllocator(b2AllocFcn* allocFcn, b2FreeFcn* freeFcn);
41BOX2D_API uint32_t b2GetByteCount(
void);
44typedef int b2AssertFcn(
const char* condition,
const char* fileName,
int lineNumber);
48BOX2D_API
void b2SetAssertFcn(b2AssertFcn* assertFcn);