gwnavruntime/navdata/databasedescriptor.h Source File
Go to the documentation of this file.
26 BlobFieldArray m_fields;
30 SwapEndianness(e,
self.m_fields);
41 KyResult ReadFromAggregate(
const BlobAggregate& aggregate)
43 BlobAggregate::Collection<DatabaseDescriptorBlob> databaseDescriptor = aggregate.GetCollection<
DatabaseDescriptorBlob>();
44 if (databaseDescriptor.GetCount() != 1)
46 return ReadFromBlob(*databaseDescriptor.GetHandler(0)->Blob());
49 void AddMapping(BlobFieldsMapping& mapping)
56 BlobFieldsMapping mapping;
58 return mapping.ReadFromBlobFieldArray(blob.m_fields);
67 class DatabaseDescriptorBlobBuilder :
public BaseBlobBuilder<DatabaseDescriptorBlob>
71 : m_descriptor(descriptor) {}
74 virtual void DoBuild()
76 BlobFieldsMapping mapping;
79 DatabaseDescriptor* notConstDescriptor = (DatabaseDescriptor*)m_descriptor;
80 notConstDescriptor->AddMapping(mapping);
81 BlobFieldArrayBuilder blobFieldArrayBuilder(
"DatabaseDescriptor", mapping);
82 BLOB_BUILD(m_blob->m_fields, blobFieldArrayBuilder);
84 const DatabaseDescriptor* m_descriptor;
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
#define BLOB_BUILD(blob, builder)
Use this macro only in implementations of BaseBlobBuilder::DoBuild().
Definition: baseblobbuilder.h:175
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:196
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:132
Target
Enumerates the possible endianness types relative to the current platform.
Definition: endianness.h:27
The NavData class is the object containing navigation data that will be added to one Database...
Definition: navdata.h:39
Easy to write/read version of DatabaseDescriptorBlob.
Definition: databasedescriptor.h:34
Navigation return code class.
Definition: types.h:108
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
#define KY_ERROR
use result == KY_ERROR to test for error
Definition: types.h:132
BaseBlobBuilder is an abstract base class that builds a blob within a contiguous block of memory...
Definition: baseblobbuilder.h:27
Set of Key-Values embedded within genIO BlobAggregate (serialized form).
Definition: databasedescriptor.h:18
KyUInt32 m_databaseIndex
Indicative index of the database.
Definition: databasedescriptor.h:64