PeriDyno 1.2.1
Loading...
Searching...
No Matches
QtNodeData.h
Go to the documentation of this file.
1#pragma once
2
3#include "nodes/QNodeDataModel"
4
5#include "NodePort.h"
6#include "ModulePort.h"
7
10using dyno::Node;
11using dyno::Module;
12
13namespace Qt
14{
17 class QtImportNode : public QtNodeData
18 {
19 public:
20
22 {}
23
25 : node_port(n)
26 {}
27
28 NodeDataType type() const override
29 {
30 return NodeDataType{ "nodeport",
31 "NodePort",
33 }
34
36
37 bool isEmpty() { return node_port == nullptr; }
38
39 bool sameType(QtNodeData& nodeData) const override;
40
41 private:
42
43 NodePort* node_port = nullptr;
44 };
45
46
47 class QtExportNode : public QtNodeData
48 {
49 public:
50
52 {}
53
54 QtExportNode(std::shared_ptr<Node> n)
55 : export_node(n)
56 {}
57
58 NodeDataType type() const override
59 {
60 return NodeDataType{ "nodeexport",
61 "NodeExport",
63 }
64
65 inline std::shared_ptr<Node> getNode() { return export_node; }
66
67 bool isEmpty() { return export_node == nullptr; }
68
69 bool sameType(QtNodeData& nodeData) const override;
70
71 private:
72 std::shared_ptr<Node> export_node = nullptr;
73 };
74
75 class QtImportModule : public QtNodeData
76 {
77 public:
78
81
85
86 NodeDataType type() const override
87 {
88 return NodeDataType{ "moduleport",
89 "ModulePort",
91 }
92
94
95 bool isEmpty() { return module_port == nullptr; }
96
97 bool sameType(QtNodeData& nodeData) const override;
98
99 private:
100
102 };
103
104 class QtExportModule : public QtNodeData
105 {
106 public:
107
110
111 QtExportModule(std::shared_ptr<Module> n)
112 : export_module(n)
113 {}
114
115 NodeDataType type() const override
116 {
117 return NodeDataType{ "moduleexport",
118 "ModuleExport",
120 }
121
122 inline std::shared_ptr<Module> getModule() { return export_module; }
123
124 bool isEmpty() { return export_module == nullptr; }
125
126 bool sameType(QtNodeData& nodeData) const override;
127
128 private:
129 std::shared_ptr<Module> export_module = nullptr;
130 };
131}
132
std::shared_ptr< Module > getModule()
Definition QtNodeData.h:122
std::shared_ptr< Module > export_module
Definition QtNodeData.h:129
QtExportModule(std::shared_ptr< Module > n)
Definition QtNodeData.h:111
bool sameType(QtNodeData &nodeData) const override
NodeDataType type() const override
Definition QtNodeData.h:115
std::shared_ptr< Node > export_node
Definition QtNodeData.h:72
std::shared_ptr< Node > getNode()
Definition QtNodeData.h:65
QtExportNode(std::shared_ptr< Node > n)
Definition QtNodeData.h:54
NodeDataType type() const override
Definition QtNodeData.h:58
bool sameType(QtNodeData &nodeData) const override
ModulePort * getModulePort()
Definition QtNodeData.h:93
bool sameType(QtNodeData &nodeData) const override
QtImportModule(ModulePort *n)
Definition QtNodeData.h:82
NodeDataType type() const override
Definition QtNodeData.h:86
ModulePort * module_port
Definition QtNodeData.h:101
bool sameType(QtNodeData &nodeData) const override
Definition QtNodeData.cpp:5
QtImportNode(NodePort *n)
Definition QtNodeData.h:24
NodePort * getNodePort()
Definition QtNodeData.h:35
NodePort * node_port
Definition QtNodeData.h:43
NodeDataType type() const override
Definition QtNodeData.h:28
Input ports for Module.
Definition ModulePort.h:38
Input ports for Node.
Definition NodePort.h:38