vsg: vsg::Output Class Reference

vsg 1.1.13 VulkanSceneGraph library

Loading...
Searching...
No Matches
vsg::Output Class Referenceabstract

`#include <Output.h>`

Inheritance diagram for vsg::Output:
[legend]
Collaboration diagram for vsg::Output:
[legend]

## Public Types
using | ObjectID = uint32_t
using | ObjectIDMap = std::unordered_map<const vsg::Object*, ObjectID>

## Public Member Functions
| Output (ref_ptr< const Options > in_options)
| Output (const Output &output)=delete
Output & | operator= (const Output &rhs)=delete
virtual void | writePropertyName (const char *propertyName)=0
| write property name if appropriate for format
virtual void | writeEndOfLine ()=0
| write end of line character if required.
virtual void | write (size_t num, const int8_t *value)=0
| write contiguous array of value(s)
virtual void | write (size_t num, const uint8_t *value)=0
virtual void | write (size_t num, const int16_t *value)=0
virtual void | write (size_t num, const uint16_t *value)=0
virtual void | write (size_t num, const int32_t *value)=0
virtual void | write (size_t num, const uint32_t *value)=0
virtual void | write (size_t num, const int64_t *value)=0
virtual void | write (size_t num, const uint64_t *value)=0
virtual void | write (size_t num, const float *value)=0
virtual void | write (size_t num, const double *value)=0
virtual void | write (size_t num, const long double *value)=0
virtual void | write (size_t num, const std::string *value)=0
virtual void | write (size_t num, const std::wstring *value)=0
virtual void | write (size_t num, const Path *value)=0
virtual void | write (const Object *object)=0
| write object
void | write (size_t num, const char *value)
| map char to int8_t
void | write (size_t num, const bool *value)
void | write (size_t num, const vec2 *value)
void | write (size_t num, const vec3 *value)
void | write (size_t num, const vec4 *value)
void | write (size_t num, const dvec2 *value)
void | write (size_t num, const dvec3 *value)
void | write (size_t num, const dvec4 *value)
void | write (size_t num, const ldvec2 *value)
void | write (size_t num, const ldvec3 *value)
void | write (size_t num, const ldvec4 *value)
void | write (size_t num, const bvec2 *value)
void | write (size_t num, const bvec3 *value)
void | write (size_t num, const bvec4 *value)
void | write (size_t num, const ubvec2 *value)
void | write (size_t num, const ubvec3 *value)
void | write (size_t num, const ubvec4 *value)
void | write (size_t num, const svec2 *value)
void | write (size_t num, const svec3 *value)
void | write (size_t num, const svec4 *value)
void | write (size_t num, const usvec2 *value)
void | write (size_t num, const usvec3 *value)
void | write (size_t num, const usvec4 *value)
void | write (size_t num, const ivec2 *value)
void | write (size_t num, const ivec3 *value)
void | write (size_t num, const ivec4 *value)
void | write (size_t num, const uivec2 *value)
void | write (size_t num, const uivec3 *value)
void | write (size_t num, const uivec4 *value)
void | write (size_t num, const quat *value)
void | write (size_t num, const dquat *value)
void | write (size_t num, const mat3 *value)
void | write (size_t num, const dmat3 *value)
void | write (size_t num, const mat4 *value)
void | write (size_t num, const dmat4 *value)
void | write (size_t num, const sphere *value)
void | write (size_t num, const dsphere *value)
void | write (size_t num, const box *value)
void | write (size_t num, const dbox *value)
void | write (size_t num, const plane *value)
void | write (size_t num, const dplane *value)
template<typename T>
void | write (size_t num, const T *value)
template<typename T>
void | write (const char *propertyName, const ref_ptr< T > &object)
template<typename T>
void | writeObjects (const char *propertyName, const T &values)
template<typename T>
void | writeValues (const char *propertyName, const std::vector< T > &values)
template<typename T>
void | writeValues (const char *propertyName, const std::set< T > &values)
template<typename... Args>
void | write (const char *propertyName, Args &... args)
| match propertyname and write value(s)
void | writeObject (const char *propertyName, const Object *object)
template<typename W, typename T>
void | writeValue (const char *propertyName, T value)
| write a value casting it to specified type i.e. output.write<uint32_t>("Value", value);
virtual bool | version_less (uint32_t major, uint32_t minor, uint32_t patch, uint32_t soversion=0) const
virtual bool | version_greater_equal (uint32_t major, uint32_t minor, uint32_t patch, uint32_t soversion=0) const

## Public Attributes
ObjectID | objectID = 1
ObjectIDMap | objectIDMap
ref_ptr< const Options > | options
VsgVersion | version

## Detailed Description

Base class that provides a means of writing out a range of data types to an output stream. Used by vsg::Object::write(Output&) implementations across the VSG to provide native serialization to binary/ascii files

## Member Function Documentation

## ◆ write() [1/2]

virtual void vsg::Output::write | ( | const Object * | object | ) |
| pure virtual

write object

Implemented in vsg::AsciiOutput, and vsg::BinaryOutput.

## ◆ write() [2/2]

virtual void vsg::Output::write | ( | size_t | num,
|  | const int8_t * | value )
| pure virtual

write contiguous array of value(s)

Implemented in vsg::AsciiOutput, and vsg::BinaryOutput.

## ◆ writeEndOfLine()

virtual void vsg::Output::writeEndOfLine | ( |  | ) |
| pure virtual

write end of line character if required.

Implemented in vsg::AsciiOutput, and vsg::BinaryOutput.

## ◆ writePropertyName()

virtual void vsg::Output::writePropertyName | ( | const char * | propertyName | ) |
| pure virtual

write property name if appropriate for format

Implemented in vsg::AsciiOutput, and vsg::BinaryOutput.

The documentation for this class was generated from the following file:

- include/vsg/io/Output.h