Skip to content

Core::Data

Representation of the interconnection wire value (Shared piece of memory - union of all data types passed along the wire) and of the value stored in the defaultValues map (such as fovy for Perspective) More...

#include "Core/Nodes/NodeData.h"

Public Types

Name
using std::variant< bool, glm::mat4, std::pair< glm::mat4, glm::mat4 >, glm::vec3, glm::vec4, glm::quat, float, void * >Storage

Public Functions

Name
Data(const bool val)<br>Explicit constructors from given data values.
Data(float val)
Data(const glm::vec3 & val)
Data(const glm::vec4 & val)
Data(const glm::mat4 & val)
Data(const glm::quat val)
Data(const std::pair< glm::mat4, glm::mat4 > val)
Data()<br>Default constructor constructs a signal of type valueType::MATRIX and with an undefined value (a unit matrix)
Data(EValueType valueType)<br>Constructor of given signal type with an undefined value (identity)
Data(Storage val, EValueType valueType)
Storagedata()
floatgetFloat() const
const glm::mat4 &getMat4() const
glm::mat4 &getMat4Ref()
const glm::quat &getQuat() const
std::optional< Storage >getSavedValue() const
const std::pair< glm::mat4, glm::mat4 > &getScreen() const
template <typename T &gt; <br>std::optional< std::remove_reference_t< T > >getValue() const
const glm::vec3 &getVec3() const
const glm::vec4 &getVec4() const
boolhasSavedValue() const
std::size_tindex() const
boolisPulseTriggered() const
voidreloadValue()<br>Reset the value to the last saved value.
voidsaveValue()
template <typename T &gt; <br>voidsetSavedValue(T && val)
voidsetValue(const Data & other)
template <typename T &gt; <br>voidsetValue(T && val)

Public Attributes

Name
EValueTypevalueType <br>wire type, such as Float or 4x4 Matrix

Detailed Description

cpp
class Core::Data;
class Core::Data;

Representation of the interconnection wire value (Shared piece of memory - union of all data types passed along the wire) and of the value stored in the defaultValues map (such as fovy for Perspective)

Old name was Transmitter in I3T v1.

Public Types Documentation

using Storage

cpp
using Core::Data::Storage =  std::variant<bool, glm::mat4, std::pair<glm::mat4, glm::mat4>, glm::vec3, glm::vec4, glm::quat, float, void*>;
using Core::Data::Storage =  std::variant<bool, glm::mat4, std::pair<glm::mat4, glm::mat4>, glm::vec3, glm::vec4, glm::quat, float, void*>;

Public Functions Documentation

function Data

cpp
inline explicit Data(
    const bool val
)
inline explicit Data(
    const bool val
)

Explicit constructors from given data values.

function Data

cpp
inline explicit Data(
    float val
)
inline explicit Data(
    float val
)

function Data

cpp
inline explicit Data(
    const glm::vec3 & val
)
inline explicit Data(
    const glm::vec3 & val
)

function Data

cpp
inline explicit Data(
    const glm::vec4 & val
)
inline explicit Data(
    const glm::vec4 & val
)

function Data

cpp
inline explicit Data(
    const glm::mat4 & val
)
inline explicit Data(
    const glm::mat4 & val
)

function Data

cpp
inline explicit Data(
    const glm::quat val
)
inline explicit Data(
    const glm::quat val
)

function Data

cpp
inline explicit Data(
    const std::pair< glm::mat4, glm::mat4 > val
)
inline explicit Data(
    const std::pair< glm::mat4, glm::mat4 > val
)

function Data

cpp
inline Data()
inline Data()

Default constructor constructs a signal of type valueType::MATRIX and with an undefined value (a unit matrix)

function Data

cpp
explicit Data(
    EValueType valueType
)
explicit Data(
    EValueType valueType
)

Constructor of given signal type with an undefined value (identity)

function Data

cpp
inline explicit Data(
    Storage val,
    EValueType valueType
)
inline explicit Data(
    Storage val,
    EValueType valueType
)

function data

cpp
inline Storage data()
inline Storage data()

function getFloat

cpp
inline float getFloat() const
inline float getFloat() const

function getMat4

cpp
inline const glm::mat4 & getMat4() const
inline const glm::mat4 & getMat4() const

function getMat4Ref

cpp
inline glm::mat4 & getMat4Ref()
inline glm::mat4 & getMat4Ref()

function getQuat

cpp
inline const glm::quat & getQuat() const
inline const glm::quat & getQuat() const

function getSavedValue

cpp
inline std::optional< Storage > getSavedValue() const
inline std::optional< Storage > getSavedValue() const

function getScreen

cpp
inline const std::pair< glm::mat4, glm::mat4 > & getScreen() const
inline const std::pair< glm::mat4, glm::mat4 > & getScreen() const

function getValue

cpp
template <typename T >
std::optional< std::remove_reference_t< T > > getValue() const
template <typename T >
std::optional< std::remove_reference_t< T > > getValue() const

Todo: MH Refactor

function getVec3

cpp
inline const glm::vec3 & getVec3() const
inline const glm::vec3 & getVec3() const

function getVec4

cpp
inline const glm::vec4 & getVec4() const
inline const glm::vec4 & getVec4() const

function hasSavedValue

cpp
inline bool hasSavedValue() const
inline bool hasSavedValue() const

function index

cpp
inline std::size_t index() const
inline std::size_t index() const

function isPulseTriggered

cpp
inline bool isPulseTriggered() const
inline bool isPulseTriggered() const

function reloadValue

cpp
inline void reloadValue()
inline void reloadValue()

Reset the value to the last saved value.

function saveValue

cpp
inline void saveValue()
inline void saveValue()

function setSavedValue

cpp
template <typename T >
inline void setSavedValue(
    T && val
)
template <typename T >
inline void setSavedValue(
    T && val
)

function setValue

cpp
inline void setValue(
    const Data & other
)
inline void setValue(
    const Data & other
)

function setValue

cpp
template <typename T >
inline void setValue(
    T && val
)
template <typename T >
inline void setValue(
    T && val
)

Public Attributes Documentation

variable valueType

cpp
EValueType valueType;
EValueType valueType;

wire type, such as Float or 4x4 Matrix


Updated on 2024-11-06 at 20:16:54 +0000