EX> /* EX> Cette classe est le point d'entrée du plugin. C'est elle qui initie la création d'une EX> librairie (.dll ou .so) spécifique au plugin. EX> Sa struture ne change pas d'un plugin à l'autre en dehors de sa dénomination EX> */ EX> EX> // Directives classique c++, permettant d'éviter d'inclure plusieurs fois un même fichier CM> #ifndef {{CODE_UPPER}}_PLUGINENTRY_H CM> #define {{CODE_UPPER}}_PLUGINENTRY_H CM> EX> // Inclusion du fichier d'API. Ce fichier est le point le liaison avec plugin_shared EX> // En effet, ce fichier regroupe toutes les déclarations de classes génériques de plugin_shared CM> #include "pluginentryinterface.h" CM> EX> // Inclusion de la classe de gestion d'étapes CM> #include "{{CODE_LOWER}}_pluginmanager.h" CM> EX> // Cette classe hérite de la classe générique PluginEntryInterface de plugin_shared EX> // C'est le cas pour tout plugin d'étapes CM> class {{CODE_UPPER}}_PluginEntry : public PluginEntryInterface CM> { EX> // Macros Qt. La première donne accès à certaines fonctionnalités Qt utiles EX> // La deuxième permet de déclarer des métadonnées faisant partie du plugin qui instancie cet objet EX> // La troisième permet de créer un plugin sous forme de librairie (.dll, .so) CM> Q_OBJECT CM> Q_PLUGIN_METADATA(IID PluginEntryInterface_iid) CM> Q_INTERFACES(PluginEntryInterface) CM> CM> public: EX> // Constructeur et destructeur CM> {{CODE_UPPER}}_PluginEntry(); CM> ~{{CODE_UPPER}}_PluginEntry(); CM> EX> // Permet de versionner les plugins CM> QString getVersion() const; CM> EX> // Lien avec le gestionnaire d'étapes CM> CT_AbstractStepPlugin* getPlugin() const; CM> CM> private: EX> // Gestionnaire d'étapes du plugin CM> {{CODE_UPPER}}_PluginManager* _pluginManager; CM> }; CM> CM> #endif // {{CODE_UPPER}}_PLUGINENTRY_H