Normalisation des modules¶
Version¶
Pour des raisons de gestion de compatibilité, les modules doivent avoir une version. Cette version n'est pas la version du logiciel. Elle ne sera pas présente dans le fichier de paramètres du module, mais par héritage d'AbulEduFileV1 elle sera incluse au moment de la sauvegarde dans l'entête du fichier .abe.
Cette version sera maintenue dans le fichier "version.h" du logiciel, dans la clef "VER_UNITVERSION_STR". Comme les modules produits avant le 24/06/2013 n'ont pas cette clef de version, elle sera si elle est absente supposée être "1.0".
Structure¶
Parallèlement, et même si on n'a pas de numéro de version à aller y chercher, il serait bon aussi que les modules produits dans les logiciels utilitaires et du Terrier contiennent tous un fichier de paramètres, de type QSettings, normalisé pour les prochains logiciels en "conf/settings.conf".
Ces éléments sont importants dès lors qu'on décide de pouvoir importer dans un logiciel donné des modules conçus à l'origine pour un autre. Il est impensable que la compatibilité soit totale, on devra prévoir par contre la chose suivante :
Le logiciel Imageo, en version 2.2.0, ou 2.2.1, et ce jusqu'à 2.3.5, quel que soit son numéro de version, produit des modules en version 1.0
A partir de version 2.3.6, les modules sont en version 1.2
Le logiciel Images Séquentielles sera compatible avec Imageo non pas à partir de la version 2.2.8 par exemple, mais à partir de la version de fichier 1.2