Workspace 
GUI nodes.
Namespaces 
| Name | 
|---|
| Workspace::Tools | 
Classes 
Types 
| Name | |
|---|---|
| enum | FloatPopupMode { Angle, Value}<br>Values in the popup menu for floats. | 
| enum class | LevelOfDetail { Full, SetValues, Label, LightCycle} | 
| enum class | PinKind { Output, Input}<br>kinds (in/out) of Workspace Pin | 
| enum | WorkspaceDiwneAction { None, CreateAndPlugTypeConstructor, NOTunselectAllNodes} | 
| typedef std::vector< Ptr< CoreNode > >::iterator | coreNodeIter | 
Functions 
| Name | |
|---|---|
| template <typename T > <br>auto | addNodeToNodeEditor(ImVec2 const position =ImVec2(0, 0))<br>This function takes snapshot of current state. | 
| template <typename T > <br>auto | addNodeToNodeEditorNoSave(ImVec2 const position =ImVec2(0, 0)) | 
| bool | connectNodes(Ptr< CoreNode > lhs, Ptr< CoreNode > rhs, int lhsPin, int rhsPin) | 
| bool | connectNodesNoSave(Ptr< CoreNode > lhs, Ptr< CoreNode > rhs, int lhsPinIndex, int rhsPinIndex) | 
| auto | findNode(Core::ID id) | 
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 
| Enumerator | Value | Description | 
|---|---|---|
| Angle | angles in radians (and degs in the brackets) | |
| Value | selected sin and cos values and numbers from 0 to 4 | 
Values in the popup menu for floats.
enum LevelOfDetail 
| Enumerator | Value | Description | 
|---|---|---|
| Full | ||
| SetValues | ||
| Label | ||
| LightCycle | 
enum PinKind 
| Enumerator | Value | Description | 
|---|---|---|
| Output | on the box right hand side | |
| Input | on the box left hand side | 
kinds (in/out) of Workspace Pin
enum WorkspaceDiwneAction 
| Enumerator | Value | Description | 
|---|---|---|
| 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 lhsPinIndex,
    int rhsPinIndex
)bool connectNodesNoSave(
    Ptr< CoreNode > lhs,
    Ptr< CoreNode > rhs,
    int lhsPinIndex,
    int rhsPinIndex
)function findNode 
cpp
static auto findNode(
    Core::ID id
)static auto findNode(
    Core::ID id
)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 2025-09-07 at 16:13:50 +0000