Skip to content

Workspace

GUI nodes.

Namespaces

Name
Workspace::Tools

Classes

Name
classWorkspace::AngleAxisToQuatOperator
classWorkspace::Camera
classWorkspace::CoreInPin
classWorkspace::CoreInPinMatrixMultiply
classWorkspace::CoreNode
classWorkspace::CoreNodeWithPins
classWorkspace::CoreOutPin
classWorkspace::CoreOutPinMatrixMultiply
classWorkspace::CorePin
classWorkspace::Cycle
classWorkspace::DataOutPin
classWorkspace::DataOutPinFloat
classWorkspace::DataOutPinMatrix
classWorkspace::DataOutPinPulse
classWorkspace::DataOutPinQuat
classWorkspace::DataOutPinScreen
classWorkspace::DataOutPinVector3
classWorkspace::DataOutPinVector4
classWorkspace::DataRenderer
classWorkspace::Model
classWorkspace::ModelProxy
classWorkspace::Node
classWorkspace::Operator
classWorkspace::OperatorBuilder
classWorkspace::Screen
classWorkspace::Sequence
classWorkspace::Transformation
classWorkspace::TransformationBase
classWorkspace::TransformBuilder
classWorkspace::ViewportHighlightResolver <br>Manager class responsible for updating viewport model highlights based on current workspace node selection.
classWorkspace::WorkspaceDiwne

Types

Name
enumFloatPopupMode { Angle, Value}<br>Values in the popup menu for floats.
enum classLevelOfDetail { Full, SetValues, Label, LightCycle}
enum classPinKind { Output, Input}<br>kinds (in/out) of Workspace Pin
enumWorkspaceDiwneAction { None, CreateAndPlugTypeConstructor, NOTunselectAllNodes}
typedef std::vector< Ptr< CoreNode > >::iteratorcoreNodeIter

Functions

Name
template <typename T &gt; <br>autoaddNodeToNodeEditor(ImVec2 const position =ImVec2(0, 0))<br>This function takes snapshot of current state.
template <typename T &gt; <br>autoaddNodeToNodeEditorNoSave(ImVec2 const position =ImVec2(0, 0))
boolconnectNodes(Ptr< CoreNode > lhs, Ptr< CoreNode > rhs, int lhsPin, int rhsPin)
boolconnectNodesNoSave(Ptr< CoreNode > lhs, Ptr< CoreNode > rhs, int lhsPin, int rhsPin)

Attributes

Name
WorkspaceDiwne *g_diwne
std::map< LevelOfDetail, std::string >LevelOfDetailName
std::map< Core::EValueType, EColor >PinColorBackground
std::map< Core::EValueType, EColor >PinColorForeground
std::map< Core::EValueType, DIWNE::IconType >PinShapeBackground
std::map< Core::EValueType, DIWNE::IconType >PinShapeForeground

Types Documentation

enum FloatPopupMode

EnumeratorValueDescription
Angleangles in radians (and degs in the brackets)
Valueselected sin and cos values and numbers from 0 to 4

Values in the popup menu for floats.

enum LevelOfDetail

EnumeratorValueDescription
Full
SetValues
Label
LightCycle

enum PinKind

EnumeratorValueDescription
Outputon the box right hand side
Inputon the box left hand side

kinds (in/out) of Workspace Pin

enum WorkspaceDiwneAction

EnumeratorValueDescription
None
CreateAndPlugTypeConstructor
NOTunselectAllNodes

typedef coreNodeIter

cpp
typedef std::vector<Ptr<CoreNode> >::iterator Workspace::coreNodeIter;
typedef std::vector<Ptr<CoreNode> >::iterator Workspace::coreNodeIter;

Functions Documentation

function addNodeToNodeEditor

cpp
template <typename T >
inline auto addNodeToNodeEditor(
    ImVec2 const position =ImVec2(0, 0)
)
template <typename T >
inline auto addNodeToNodeEditor(
    ImVec2 const position =ImVec2(0, 0)
)

This function takes snapshot of current state.

function addNodeToNodeEditorNoSave

cpp
template <typename T >
inline auto addNodeToNodeEditorNoSave(
    ImVec2 const position =ImVec2(0, 0)
)
template <typename T >
inline auto addNodeToNodeEditorNoSave(
    ImVec2 const position =ImVec2(0, 0)
)

function connectNodes

cpp
bool connectNodes(
    Ptr< CoreNode > lhs,
    Ptr< CoreNode > rhs,
    int lhsPin,
    int rhsPin
)
bool connectNodes(
    Ptr< CoreNode > lhs,
    Ptr< CoreNode > rhs,
    int lhsPin,
    int rhsPin
)

function connectNodesNoSave

cpp
bool connectNodesNoSave(
    Ptr< CoreNode > lhs,
    Ptr< CoreNode > rhs,
    int lhsPin,
    int rhsPin
)
bool connectNodesNoSave(
    Ptr< CoreNode > lhs,
    Ptr< CoreNode > rhs,
    int lhsPin,
    int rhsPin
)

Attributes Documentation

variable g_diwne

cpp
WorkspaceDiwne * g_diwne = nullptr;
WorkspaceDiwne * g_diwne = nullptr;

variable LevelOfDetailName

cpp
std::map< LevelOfDetail, std::string > LevelOfDetailName = {{LevelOfDetail::Full, "Full"},
                                                                     {LevelOfDetail::SetValues, "Set values"},
                                                                     {LevelOfDetail::Label, "Label"},
                                                                     {LevelOfDetail::LightCycle, "Light cycle"}};
std::map< LevelOfDetail, std::string > LevelOfDetailName = {{LevelOfDetail::Full, "Full"},
                                                                     {LevelOfDetail::SetValues, "Set values"},
                                                                     {LevelOfDetail::Label, "Label"},
                                                                     {LevelOfDetail::LightCycle, "Light cycle"}};

variable PinColorBackground

cpp
std::map< Core::EValueType, EColor > PinColorBackground = {
    {Core::EValueType::Float, EColor::FloatPin},         {Core::EValueType::Matrix, EColor::MatrixPin},
    {Core::EValueType::MatrixMul, EColor::MatrixMulPin}, {Core::EValueType::Pulse, EColor::PulsePin},
    {Core::EValueType::Quat, EColor::QuatPin},           {Core::EValueType::Screen, EColor::ScreenPin},
    {Core::EValueType::Vec3, EColor::Vec3Pin},           {Core::EValueType::Vec4, EColor::Vec4Pin}};
std::map< Core::EValueType, EColor > PinColorBackground = {
    {Core::EValueType::Float, EColor::FloatPin},         {Core::EValueType::Matrix, EColor::MatrixPin},
    {Core::EValueType::MatrixMul, EColor::MatrixMulPin}, {Core::EValueType::Pulse, EColor::PulsePin},
    {Core::EValueType::Quat, EColor::QuatPin},           {Core::EValueType::Screen, EColor::ScreenPin},
    {Core::EValueType::Vec3, EColor::Vec3Pin},           {Core::EValueType::Vec4, EColor::Vec4Pin}};

Todo: Remove these.

variable PinColorForeground

cpp
std::map< Core::EValueType, EColor > PinColorForeground = {
    {Core::EValueType::Float, EColor::InnerFloatPin},         {Core::EValueType::Matrix, EColor::InnerMatrixPin},
    {Core::EValueType::MatrixMul, EColor::InnerMatrixMulPin}, {Core::EValueType::Pulse, EColor::InnerPulsePin},
    {Core::EValueType::Quat, EColor::InnerQuatPin},           {Core::EValueType::Screen, EColor::InnerScreenPin},
    {Core::EValueType::Vec3, EColor::InnerVec3Pin},           {Core::EValueType::Vec4, EColor::InnerVec4Pin}};
std::map< Core::EValueType, EColor > PinColorForeground = {
    {Core::EValueType::Float, EColor::InnerFloatPin},         {Core::EValueType::Matrix, EColor::InnerMatrixPin},
    {Core::EValueType::MatrixMul, EColor::InnerMatrixMulPin}, {Core::EValueType::Pulse, EColor::InnerPulsePin},
    {Core::EValueType::Quat, EColor::InnerQuatPin},           {Core::EValueType::Screen, EColor::InnerScreenPin},
    {Core::EValueType::Vec3, EColor::InnerVec3Pin},           {Core::EValueType::Vec4, EColor::InnerVec4Pin}};

variable PinShapeBackground

cpp
std::map< Core::EValueType, DIWNE::IconType > PinShapeBackground = {
    {Core::EValueType::Float, DIWNE::IconType::Rectangle},     {Core::EValueType::Matrix, DIWNE::IconType::Rectangle},
    {Core::EValueType::MatrixMul, DIWNE::IconType::Rectangle}, {Core::EValueType::Pulse, DIWNE::IconType::Rectangle},
    {Core::EValueType::Quat, DIWNE::IconType::Rectangle},      {Core::EValueType::Screen, DIWNE::IconType::Rectangle},
    {Core::EValueType::Vec3, DIWNE::IconType::Rectangle},      {Core::EValueType::Vec4, DIWNE::IconType::Rectangle}};
std::map< Core::EValueType, DIWNE::IconType > PinShapeBackground = {
    {Core::EValueType::Float, DIWNE::IconType::Rectangle},     {Core::EValueType::Matrix, DIWNE::IconType::Rectangle},
    {Core::EValueType::MatrixMul, DIWNE::IconType::Rectangle}, {Core::EValueType::Pulse, DIWNE::IconType::Rectangle},
    {Core::EValueType::Quat, DIWNE::IconType::Rectangle},      {Core::EValueType::Screen, DIWNE::IconType::Rectangle},
    {Core::EValueType::Vec3, DIWNE::IconType::Rectangle},      {Core::EValueType::Vec4, DIWNE::IconType::Rectangle}};

variable PinShapeForeground

cpp
std::map< Core::EValueType, DIWNE::IconType > PinShapeForeground = {
    {Core::EValueType::Float, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Matrix, DIWNE::IconType::TriangleRight},
    {Core::EValueType::MatrixMul, DIWNE::IconType::Cross},
    {Core::EValueType::Pulse, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Quat, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Screen, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Vec3, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Vec4, DIWNE::IconType::TriangleRight}};
std::map< Core::EValueType, DIWNE::IconType > PinShapeForeground = {
    {Core::EValueType::Float, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Matrix, DIWNE::IconType::TriangleRight},
    {Core::EValueType::MatrixMul, DIWNE::IconType::Cross},
    {Core::EValueType::Pulse, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Quat, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Screen, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Vec3, DIWNE::IconType::TriangleRight},
    {Core::EValueType::Vec4, DIWNE::IconType::TriangleRight}};

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