GEGELATI

Loading...
Searching...
No Matches
tpgStackGenerationEngine.h
1
39#ifdef CODE_GENERATION
40
41#ifndef TPG_STACK_GENERATION_ENGINE_H
42#define TPG_STACK_GENERATION_ENGINE_H
43#include "codeGen/tpgGenerationEngine.h"
44
45namespace CodeGen {
62 class TPGStackGenerationEngine : public CodeGen::TPGGenerationEngine
63 {
64 protected:
71 virtual void initTpgFile();
72
81 virtual void initHeaderFile();
82
83 public:
96 TPGStackGenerationEngine(const std::string& filename,
97 const TPG::TPGGraph& tpg,
98 const std::string& path = "./");
99
105 ~TPGStackGenerationEngine();
106
114 virtual void generateTPGGraph();
115
129 virtual void generateEdge(const TPG::TPGEdge& edge);
130
141 virtual void generateTeam(const TPG::TPGTeam& team);
142
153 virtual void generateAction(const TPG::TPGAction& action);
154
161 virtual void setRoot(const TPG::TPGVertex& root);
162
169 std::string vertexName(const TPG::TPGVertex& v);
170 };
171} // namespace CodeGen
172
173#endif // TPG_STACK_GENERATION_ENGINE_H
174
175#endif // CODE_GENERATION
CodeGen::TPGGenerationEngine
Class in charge of generating the C code of a TPGGraph.
Definition tpgGenerationEngine.h:70
CodeGen::TPGStackGenerationEngine
Class in charge of generating the C code of a TPGGraph.
Definition tpgStackGenerationEngine.h:63
CodeGen::TPGStackGenerationEngine::vertexName
std::string vertexName(const TPG::TPGVertex &v)
Generate function name depending on the vertex type.
Definition tpgStackGenerationEngine.cpp:222
CodeGen::TPGStackGenerationEngine::TPGStackGenerationEngine
TPGStackGenerationEngine(const std::string &filename, const TPG::TPGGraph &tpg, const std::string &path="./")
Main constructor of the class.
Definition tpgStackGenerationEngine.cpp:44
CodeGen::TPGStackGenerationEngine::generateTPGGraph
virtual void generateTPGGraph()
function that creates the C files required to execute the TPG without gegelati.
Definition tpgStackGenerationEngine.cpp:128
CodeGen::TPGStackGenerationEngine::initHeaderFile
virtual void initHeaderFile()
function printing generic code declaration in the main file header.
Definition tpgStackGenerationEngine.cpp:199
CodeGen::TPGStackGenerationEngine::initTpgFile
virtual void initTpgFile()
function printing generic code in the main file.
Definition tpgStackGenerationEngine.cpp:146
CodeGen::TPGStackGenerationEngine::generateTeam
virtual void generateTeam(const TPG::TPGTeam &team)
Method for generating the code for a team of the graph.
Definition tpgStackGenerationEngine.cpp:83
CodeGen::TPGStackGenerationEngine::setRoot
virtual void setRoot(const TPG::TPGVertex &root)
Define the function pointer root to the vertex given in parameter.
Definition tpgStackGenerationEngine.cpp:121
CodeGen::TPGStackGenerationEngine::generateAction
virtual void generateAction(const TPG::TPGAction &action)
Method for generating a action of the graph.
Definition tpgStackGenerationEngine.cpp:109
CodeGen::TPGStackGenerationEngine::generateEdge
virtual void generateEdge(const TPG::TPGEdge &edge)
Method for generating the code for an edge of the graph.
Definition tpgStackGenerationEngine.cpp:58
CodeGen::TPGStackGenerationEngine::~TPGStackGenerationEngine
~TPGStackGenerationEngine()
destructor of the class.
Definition tpgStackGenerationEngine.cpp:51
TPG::TPGAbstractEngine::tpg
const TPG::TPGGraph & tpg
Reference to the TPGGraph whose content will be used to fill the maps.
Definition tpgAbstractEngine.h:56
TPG::TPGAction
Class representing an Action of a TPGGraph.
Definition tpgAction.h:55
TPG::TPGEdge
Class representing edges of the Tangled Program Graphs.
Definition tpgEdge.h:54
TPG::TPGGraph
Class for storing a Tangled-Program-Graph.
Definition tpgGraph.h:58
TPG::TPGTeam
Definition tpgTeam.h:49
TPG::TPGVertex
Abstract class representing the vertices of a TPGGraph.
Definition tpgVertex.h:55
CodeGen
Definition programGenerationEngine.h:49