43#include "tpg/tpgAction.h"
44#include "tpg/tpgActionEdge.h"
45#include "tpg/tpgEdge.h"
46#include "tpg/tpgTeam.h"
54 class TPGExecutionEngine;
100 const uint64_t
id)
const;
115 const std::shared_ptr<Program::Program> prog)
const;
130 const TPGVertex* src,
const std::shared_ptr<Program::Program> prog,
131 uint64_t actionClass)
const;
145 virtual std::unique_ptr<TPG::TPGExecutionEngine>
The Environment class contains all information needed to execute a Program.
Definition environment.h:86
Factory for creating all elements constituting a TPG.
Definition tpgFactory.h:71
virtual std::unique_ptr< TPGEdge > createTPGEdge(const TPGVertex *src, const TPGVertex *dest, const std::shared_ptr< Program::Program > prog) const
Create a TPGEdge for a TPGGraph.
Definition tpgFactory.cpp:58
virtual std::unique_ptr< TPGEdge > createTPGActionEdge(const TPGVertex *src, const std::shared_ptr< Program::Program > prog, uint64_t actionClass) const
Create a TPGActionEdge for a TPGGraph.
Definition tpgFactory.cpp:65
virtual std::unique_ptr< TPGTeam > createTPGTeam() const
Create a TPGTeam for a TPGGraph.
Definition tpgFactory.cpp:47
virtual std::shared_ptr< TPGGraph > createTPGGraph(const Environment &env) const
Create a TPGGraph with this TPGFactory.
Definition tpgFactory.cpp:41
virtual std::unique_ptr< TPG::TPGExecutionEngine > createTPGExecutionEngine(const Environment &env, Archive *arch=NULL) const
Create a TPGExecutionEngine for a TPGGraph produced by this TPGFactory.
Definition tpgFactory.cpp:73
virtual ~TPGFactory()=default
Default virtual destructor.
virtual std::unique_ptr< TPGAction > createTPGAction(const uint64_t id) const
Create a TPGAction for a TPGGraph.
Definition tpgFactory.cpp:52
Abstract class representing the vertices of a TPGGraph.
Definition tpgVertex.h:55
Definition executionStats.h:44