4#include <nw/g3d/g3d_config.h>
5#include <nw/g3d/ut/g3d_Inlines.h>
7namespace nw {
namespace g3d {
22 bool IsValid()
const {
return pChunk != NULL; }
30 return pChunk[type].size ? AddOffset<T>(ptr, pChunk[type].offset) : NULL;
36 return pChunk[type].size ? AddOffset(ptr,
static_cast<size_t>(pChunk[type].offset)) : NULL;
43 chunk[idx].offset = 0;
44 for (; idx < count - 1; ++idx)
47 chunk[idx + 1].offset = chunk[idx].offset +
static_cast<ptrdiff_t>(chunk[idx].size);
49 totalSize =
static_cast<size_t>(chunk[idx].offset) + chunk[idx].size;
Definition g3d_Sizer.h:10
Sizer()
Definition g3d_Sizer.h:18
void CalcOffset(Chunk *chunk, int count)
Definition g3d_Sizer.h:40
bool IsValid() const
Definition g3d_Sizer.h:22
size_t GetTotalSize() const
Definition g3d_Sizer.h:20
void Invalidate()
Definition g3d_Sizer.h:24
NW_G3D_FORCE_INLINE T * GetPtr(void *ptr, int type) const
Definition g3d_Sizer.h:27
NW_G3D_FORCE_INLINE void * GetPtr(void *ptr, int type) const
Definition g3d_Sizer.h:33
Chunk * pChunk
Definition g3d_Sizer.h:54
size_t totalSize
Definition g3d_Sizer.h:55
#define NW_G3D_ASSERT_NOT_NULL(exp)
Definition g3d_assert.h:20
#define NW_G3D_ASSERT(exp)
Definition g3d_assert.h:17
#define NW_G3D_FORCE_INLINE
Definition g3d_defs.h:66
Definition g3d_GfxManage.cpp:10
Definition g3d_Sizer.h:13
ptrdiff_t offset
Definition g3d_Sizer.h:15
size_t size
Definition g3d_Sizer.h:14