Author: echatellier Date: 2012-12-20 16:15:22 +0100 (Thu, 20 Dec 2012) New Revision: 121 Url: http://forge.codelutin.com/projects/isis-fish-docs/repository/revisions/121 Log: FOrmat Modified: trunk/src/site/rst/v4/user/scripts/rules.rst Modified: trunk/src/site/rst/v4/user/scripts/rules.rst =================================================================== --- trunk/src/site/rst/v4/user/scripts/rules.rst 2012-12-20 15:08:48 UTC (rev 120) +++ trunk/src/site/rst/v4/user/scripts/rules.rst 2012-12-20 15:15:22 UTC (rev 121) @@ -37,6 +37,7 @@ Les règles sont situées dans le dossier ``rule`` et doivent obligatoirement hériter de ``fr.ifremer.isisfish.rule.AbstractRule`` qui implémente lui même l'interface ``fr.ifremer.isisfish.rule.Rule``. Chaque règle doit implémenter 4 méthodes obligatoire: + * ``init`` : qui permet d'initialiser la règle * ``condition`` : qui permet on non d'appliquer la règle sur le pas de temps courant pour le métier * ``preAction`` : action de la règle **avant** le pas de temps @@ -49,6 +50,7 @@ Au début de la simulation, ISIS-Fish instancie l'ensemble des règles que l'utilisateur a sélectionné et appele la méthode ``init`` pour chaque règle. La méthode ``init`` est donc appelée **une seule fois**. Ensuite, dans la boucle générale sur les pas de temps, le simulateur: + * appelle la méthode ``condition`` pour tous les métiers et pour toutes les règles (les méthodes ``condition`` de toutes les règles sont appelées avant les autres méthodes de la règles) * appelle la méthode ``preAction`` pour toutes les règles et tous les métier **ssi** la méthode condition a renvoyé ``true`` pour la règle et le métier * effectue la simulation du pas de temps courant