|
|
Greffons Template
From VLE
#include <vle/vpz/Conditions.hpp>
#include <vle/vpz/Observables.hpp>
#include <string>
#include <vector>
namespace vle { namespace gvle {
class TemplatePlugin
{
public:
typedef std::vector < std::string > PortList;
typedef std::string Source;
/**
* Le constructeur lorsque l'utilisateur sélectionne un modèle atomique
* et lui applique un template.
* @param model Le modèle atomique.
* @param vpz Une représentation du fichier édité en cours.
*/
TemplatePlugin(const graph::AtomicModel& model,
const vpz::Vpz& vpz);
/**
* Le constructeur lorsque l'utilisateur demande une modification d'un
* template déjà produit.
* @param model Le modèle atomique.
* @param vpz Une représentation du fichier édité en cours.
* @param filename Le fichier produit précédement.
*/
TemplatePlugin(const graph::AtomicModel& model,
const vpz::Vpz& vpz,
const std::string& filename);
virtual ~TemplatePlugin()
{}
/**
* Méthode appelée lorsque l'utilisateur exécute le greffons.
* @return Vrai, si l'utilisateur valide les modifications qu'il a fait,
* faux s'il ferme la fenêtre ou annule ses modifications.
*/
virtual bool run() = 0;
/**
* Si l'utilisateur valide la boîte :
* getInputPort() est appelée pour récupérer la liste des ports d'entrée.
* getOutputPort() est appelée pour récupérer la liste des ports d'entrée.
* getCondition() est appelée pour récupérer la liste des conditions à attacher au plug-in.
* getSource() retourne le buffer du fichier généré.
*/
const PortList& inputPorts() const { return mIn; }
const PortList& outputPorts() const { return mOut; }
const vpz::ConditionList& conditions() const { return mConditions; }
const vpz::Observables& observables() const { return mObservables; }
const Source& source() const { return mSource; }
protected:
PortList mIn;
PortList mOut;
vpz::ConditionList mConditions;
vpz::Observables mObservables;
Source mSource;
};
}} // namespace vle gvle
|
This page was last modified on 22 January 2010, at 23:25.
This page has been accessed 549 times.