NodeType#

Fully qualified name: omni::structuredlog::NodeType

Defined in omni/structuredlog/JsonTree.h

enum class omni::structuredlog::NodeType : uint8_t#

The data type contained within a JsonNode.

Note

For future maintainability, do not use default when switching on this enum; we’ll be able to catch all the places where the new type needs to be handled in that case.

Values:

enumerator eNull#

No type has been set.

enumerator eBool#

bool type.

enumerator eBoolArray#

bool array type.

enumerator eInt32#

int32_t type.

This corresponds to the JSON integer type.

enumerator eInt32Array#

int32_t array type.

This corresponds to the JSON integer type.

enumerator eUint32#

uint32_t type.

This corresponds to the JSON integer type.

enumerator eUint32Array#

uint32_t array type.

This corresponds to the JSON integer type.

enumerator eInt64#

int64_t type.

For interoperability, we cannot store a 64 bit int directly in JSON, so the high and low 32 bits get stores in an array [high, low].

enumerator eInt64Array#

int64_t array type.

For interoperability, we cannot store a 64 bit int directly in JSON, so each element of this array is itself an array [high, low], where high is the top 32 bits and low is the bottom 32 bits.

enumerator eUint64#

uint64_t type.

stored identically to NodeType::eInt64.

enumerator eUint64Array#

uint64_t array type.

stored identically to NodeType::eInt64Array.

enumerator eFloat64#

double type.

This corresponds to the JSON number type.

enumerator eFloat64Array#

double array type.

This corresponds to the JSON number type.

enumerator eFloat32#

float type.

This corresponds to the JSON number type.

enumerator eFloat32Array#

float array type.

This corresponds to the JSON number type.

enumerator eBinary#

array of bytes that will be base64 encoded into JSON.

enumerator eString#

char* type.

enumerator eStringArray#

char ** type.

enumerator eObject#

object type.

enumerator eObjectArray#

array of objects type.