34 QString
getid()
const override;
41 QString
getname()
const override;
69 Types::CallType
gettype()
const override;
83 QVector<std::shared_ptr<IParameter>>
getarguments()
const override;
90 QVector<std::shared_ptr<INode>>
getnodes()
const override;
96 QVector<std::shared_ptr<ITransition>>
gettransitions()
const override;
103 QVector<std::shared_ptr<ITransition>>
gettransitions(
const QString&
id)
const override;
105 void addTransition(std::shared_ptr<ITransition> transition);
107 void removeTransition(std::shared_ptr<ITransition> transition);
114 void setId(
const QString& arg);
121 void setName(
const QString& arg);
149 void setType(Types::CallType arg);
171 void setArgument(uint32_t index, std::shared_ptr<IParameter> arg);
179 std::shared_ptr<IParameter>
getArgument(uint32_t index);
193 void addNode(std::shared_ptr<INode> arg);
207 QJsonObject
toJson()
const;
256QDataStream& operator<<(QDataStream& out,
const QVector<std::shared_ptr<FlowSaveInfo>>& nodes);
265QDataStream& operator>>(QDataStream& in, QVector<std::shared_ptr<FlowSaveInfo>>& nodes);
274QDataStream& operator<<(QDataStream& out,
const QVector<std::shared_ptr<IFlow>>& nodes);
283QDataStream& operator>>(QDataStream& in, QVector<std::shared_ptr<IFlow>>& nodes);
Configuration for a flow or process.
Definition config.h:70
void addNode(std::shared_ptr< INode > arg)
Adds a node to the flow.
Definition flow_info.cpp:165
void removeArgument(std::shared_ptr< IParameter > arg)
Removes an argument from the flow.
Definition flow_info.cpp:160
void removeNode(std::shared_ptr< INode > arg)
Removes a node from the flow.
Definition flow_info.cpp:178
QString getowner() const override
Gets the owner of the flow.
Definition flow_info.cpp:50
void setArgument(uint32_t index, std::shared_ptr< IParameter > arg)
Sets an argument at a specific index in the flow.
Definition flow_info.cpp:145
bool mModifiable
The owner of the flow.
Definition flow_info.h:239
QString mName
The ID of the flow.
Definition flow_info.h:237
QVector< std::shared_ptr< IParameter > > mArguments
A vector of shared pointers to INode objects representing the nodes.
Definition flow_info.h:245
friend QDataStream & operator>>(QDataStream &in, FlowSaveInfo &info)
Overloads the >> operator to deserialize a FlowSaveInfo object from a QDataStream.
Definition flow_info.cpp:317
FlowSaveInfo()
Constructs an empty FlowSaveInfo object.
Definition flow_info.cpp:15
QString getname() const override
Gets the name of the flow.
Definition flow_info.cpp:45
QVector< std::shared_ptr< IParameter > > getarguments() const override
Gets the arguments of the flow.
Definition flow_info.cpp:75
void setOwner(const QString &arg)
Sets the owner of the flow.
Definition flow_info.cpp:120
void setReturnType(const koda::types::TypeReference &arg)
Sets the return type of the property.
Definition flow_info.cpp:140
int mLinksTo
Whether the flow is modifiable.
Definition flow_info.h:240
void setId(const QString &arg)
Sets the ID of the flow.
Definition flow_info.cpp:110
int getlinksTo() const override
Gets the number of links to the flow.
Definition flow_info.cpp:65
QString mOwner
The name of the flow.
Definition flow_info.h:238
bool getmodifiable() const override
Checks if the flow is modifiable.
Definition flow_info.cpp:55
friend QDataStream & operator<<(QDataStream &out, const FlowSaveInfo &info)
Overloads the << operator to serialize a FlowSaveInfo object to a QDataStream.
Definition flow_info.cpp:300
QVector< std::shared_ptr< ITransition > > gettransitions() const override
Gets the transitions of the flow.
Definition flow_info.cpp:85
void setName(const QString &arg)
Sets the name of the flow.
Definition flow_info.cpp:115
QVector< std::shared_ptr< INode > > getnodes() const override
Gets the nodes of the flow.
Definition flow_info.cpp:80
koda::types::TypeReference mReturnType
The type of the call.
Definition flow_info.h:243
QVector< std::shared_ptr< INode > > mNodes
The return type of the property.
Definition flow_info.h:244
koda::types::TypeReference getreturnType() const override
Gets the return type of the property.
Definition flow_info.cpp:70
void addArgument(std::shared_ptr< IParameter > arg)
Adds an argument to the flow.
Definition flow_info.cpp:155
void setLinksTo(int arg)
Sets the number of links to the flow.
Definition flow_info.cpp:130
static FlowSaveInfo fromJson(const QJsonObject &data)
Creates a FlowSaveInfo object from a JSON object.
Definition flow_info.cpp:218
QVector< std::shared_ptr< ITransition > > mTransitions
A vector of shared pointers to IParameter objects representing the arguments.
Definition flow_info.h:246
Types::CallType mType
The number of links to the flow.
Definition flow_info.h:242
QString getid() const override
Gets the ID of the flow.
Definition flow_info.cpp:40
std::shared_ptr< IParameter > getArgument(uint32_t index)
Gets an argument at a specific index in the flow.
Definition flow_info.cpp:150
QJsonObject toJson() const
Converts the flow save info to a JSON object.
Definition flow_info.cpp:185
void setType(Types::CallType arg)
Sets the type of the call.
Definition flow_info.cpp:135
Types::CallType gettype() const override
Gets the type of the call.
Definition flow_info.cpp:60
void setModifiable(bool arg)
Sets whether the flow is modifiable.
Definition flow_info.cpp:125
Represents a node that can be saved and loaded.
Definition node_info.h:17