gwnavruntime/blob/blobhandler.h Source File
Go to the documentation of this file.
9 #ifndef Navigation_BlobHandler_H
10 #define Navigation_BlobHandler_H
21 class BlobTypeDescriptor :
public IBlobTypeDescriptor
24 virtual KyUInt32 GetBlobTypeId()
const {
return T::GetBlobTypeId(); }
25 virtual const char* GetBlobTypeName()
const {
return T::GetBlobTypeName(); }
26 virtual KyUInt32 GetBlobTypeVersion()
const {
return T::GetBlobTypeVersion(); }
27 virtual void DoSwapEndianness(
Endianness::Target e,
void* blob)
const { SwapEndianness(e, *((T*)blob)); }
28 virtual IBlobTypeDescriptor* CreateBlobTypeDescriptor(
int memStat = Stat_Default_Mem)
const {
return KY_NEW_ID(memStat) BlobTypeDescriptor<T>; }
29 virtual BaseBlobHandler* CreateBlobHandler(
int memStat = Stat_Default_Mem) const;
42 class BlobHandler : public BaseBlobHandler
49 virtual KyUInt32 GetBlobTypeId()
const {
return T::GetBlobTypeId(); }
50 virtual const char* GetBlobTypeName()
const {
return T::GetBlobTypeName(); }
51 virtual KyUInt32 GetBlobTypeVersion()
const {
return T::GetBlobTypeVersion(); }
52 virtual void DoSwapEndianness(
Endianness::Target e,
void* blob)
const { SwapEndianness(e, *((T*)blob)); }
53 virtual IBlobTypeDescriptor* CreateBlobTypeDescriptor(
int memStat = Stat_Default_Mem)
const {
return KY_NEW_ID(memStat) BlobTypeDescriptor<T>; }
54 virtual BaseBlobHandler* CreateBlobHandler(
int memStat = Stat_Default_Mem)
const {
return KY_NEW_ID(memStat) BlobHandler<T>; }
56 const T* Blob()
const {
return (
const T*)m_blob; }
57 T* Blob() {
return (T*)m_blob; }
62 BaseBlobHandler* BlobTypeDescriptor<T>::CreateBlobHandler(
int memStat)
const {
return KY_NEW_ID(memStat) BlobHandler<T>; }
The BlobHandler class is a top-level mechanism for serializing blobs between objects in memory and fi...
Definition: blobhandler.h:45
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:387
Target
Enumerates the possible endianness types relative to the current platform.
Definition: endianness.h:35
Definition: gamekitcrowddispersion.h:20
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36