Skip to main content

SceneWriter

SceneWriter.

#include <scene/TellusimSceneWriter.h>

Constructors

SceneWriter()
explicit SceneWriter(Xml &xml, Flags flags = FlagNone)
explicit SceneWriter(Json &json, Flags flags = FlagNone)
explicit SceneWriter(Stream &stream, Flags flags = FlagNone)
SceneWriter(const char *name, const char *type, uint32_t format = 0)
SceneWriter(Stream &stream, const char *type, uint32_t format = 0)

Methods

Writer flags.

void setFlags(Flags flags)
Flags getFlags() const
bool hasFlag(Flags flags) const
bool hasFlags(Flags flags) const

Identifier.

uint32_t getID(uint32_t id)

Reference.

bool setReference(uint32_t id)

Named scope.

bool push(const char *scope, uint32_t id)
bool push(const char *scope)
bool pop(const char *scope)

Strings.

void writeString(const char *name, const char *value, const char *default_value = nullptr)
void writeString(const char *name, const String &value, const String &default_value = String::null)

Boolean value.

void writeBool(const char *name, bool value, bool default_value = false)

Integer numbers.

void writei32(const char *name, int32_t value, int32_t default_value = 0)
void writeu32(const char *name, uint32_t value, uint32_t default_value = 0)
void writeu64(const char *name, uint64_t value, uint64_t default_value = 0)

Floating-point numbers.

void writef32(const char *name, float32_t value, float32_t default_value = 0.0f)
void writef64(const char *name, float64_t value, float64_t default_value = 0.0)

Integer array.

void writeArray(const char *name, const int32_t *src, uint32_t size)
void writeArray(const char *name, const uint32_t *src, uint32_t size)

Floating-point arrays.

void writeArray(const char *name, const float32_t *src, uint32_t size)
void writeArray(const char *name, const float64_t *src, uint32_t size)

Raw data.

void writeData(const char *name, const void *src, size_t size)

Two-component vectors.

void writeVector2i(const char *name, Vector2i vector, Vector2i default_value = Vector2i::zero)
void writeVector2u(const char *name, Vector2u vector, Vector2u default_value = Vector2u::zero)
void writeVector2f(const char *name, Vector2f vector, Vector2f default_value = Vector2f::zero)
void writeVector2d(const char *name, Vector2d vector, Vector2d default_value = Vector2d::zero)

Three-component vectors.

void writeVector3i(const char *name, Vector3i vector, Vector3i default_value = Vector3i::zero)
void writeVector3u(const char *name, Vector3u vector, Vector3u default_value = Vector3u::zero)
void writeVector3f(const char *name, Vector3f vector, Vector3f default_value = Vector3f::zero)
void writeVector3d(const char *name, Vector3d vector, Vector3d default_value = Vector3d::zero)

Four-component vectors.

void writeVector4i(const char *name, Vector4i vector, Vector4i default_value = Vector4i::zero)
void writeVector4u(const char *name, Vector4u vector, Vector4u default_value = Vector4u::zero)
void writeVector4f(const char *name, Vector4f vector, Vector4f default_value = Vector4f::zero)
void writeVector4d(const char *name, Vector4d vector, Vector4d default_value = Vector4d::zero)

Two-by-three matrices.

void writeMatrix3x2f(const char *name, Matrix3x2f matrix)
void writeMatrix3x2d(const char *name, Matrix3x2d matrix)

Three-by-four matrices.

void writeMatrix4x3f(const char *name, Matrix4x3f matrix)
void writeMatrix4x3d(const char *name, Matrix4x3d matrix)

Four-by-four matrices.

void writeMatrix4x4f(const char *name, Matrix4x4f matrix)
void writeMatrix4x4d(const char *name, Matrix4x4d matrix)

Quaternion.

void writeQuaternionf(const char *name, Quaternionf quaternion)
void writeQuaterniond(const char *name, Quaterniond quaternion)

Bound box.

void writeBoundBoxf(const char *name, BoundBoxf bound_box)
void writeBoundBoxd(const char *name, BoundBoxd bound_box)

Color.

void writeColor(const char *name, Color color, Color default_color = Color::white)

Enums

Flags

Writer flags.

NameValueDescription
FlagNone0
FlagRemap(1 << 0)Remap identifiers.
FlagEmbed(1 << 1)Embed data resources.
FlagForce(1 << 2)Keep default values.
FlagComment(1 << 3)Comment default values.
NumFlags4