File indexing completed on 2024-05-12 05:39:29

0001 #ifndef VARIABLENODE_H
0002 #define VARIABLENODE_H
0003 
0004 #include "node/executionnode.h"
0005 
0006 /**
0007  * @brief The VariableNode class is an ExecutionNode. It is dedicated to retrive
0008  *  variable value from other starting node.
0009  */
0010 class VariableNode : public ExecutionNode
0011 {
0012 public:
0013     VariableNode();
0014     void run(ExecutionNode* previous) override;
0015     virtual QString toString(bool withLabel) const override;
0016     virtual qint64 getPriority() const override;
0017     /**
0018      * @brief getCopy
0019      * @return
0020      */
0021     virtual ExecutionNode* getCopy() const override;
0022     quint64 getIndex() const;
0023     void setIndex(quint64 index);
0024 
0025     std::vector<ExecutionNode*>* getData() const;
0026     void setData(std::vector<ExecutionNode*>* data);
0027 
0028     void setDisplayed();
0029 
0030 private:
0031     quint64 m_index;
0032     std::vector<ExecutionNode*>* m_data= nullptr;
0033 };
0034 
0035 #endif // VARIABLENODE_H