Programmation evenementielle et étapes à réaliser en séquence ????

Programmation evenementielle et étapes à réaliser en séquence ???? - Algo - Programmation

Marsh Posté le 03-07-2008 à 18:22:40    

Question d'alorithmique ultra générale..
 
Dans le cadre d'un programme programmé en evenementiel. J'explique un peu, on a un element de controle principal nommé CORE qui se charge de coordonner les composants externes disons, DOWNLOAD et GUI  ... c'est juste pour vous donner une vision d'ensemble.
 
Tout se beau monde communique via des evenements, en se les postant mutuellement. (et le core centralise ceux qui doivent aller du download au gui)
 
Tout ce que j'ai dit est acquis, ca marche tres bien, j'ai tout codé en C++ .
 
 
Maintenant, sachant que le CORE a pour consigne de realiser des étapes clés...  disons les phases P1, P2 & P3
 
Lorsque tout se déroule bien, il doit les enchainer dans l'ordre P1->P2->P3   mais parfois, les choses ne se passent pas aussi bien, et il doit recommencer une phase du début ou meme relancer une phase précédente...
 
Mon probleme, c'est que les évènements, c'est bien, mais des fois il y a pleins d'evenement qui s'enchainent (GUI (clic utilisateur) -> Core -> Download (terminé) -> Core  -> GUI (affichage) etc....)  
et ca me pert completement dans mes phases.
 
Je n'arrive pas rendre compatible la programmation evenementielle avec la programmation sequentielle que sont les phases.    
Toutes les portes sont ouvertes, Class à part, un entier qui compte les etapes, n'importe quoi...
Si c'etait purement sequentiel, je pense que je ferais une boucle sur un switch/case... mais là, avec les evemenents, ca ne veut plus rien dire.
 
Optionnellement, je voudrais centraliser cette gestion d'etapes en un meme lieu du code, et ca me gene vraiment, parce que j'aimerai centraliser les transitions entre etapes pour qu'elles se soient pas eparpillées dans les evenements.


Message édité par NounouRs le 03-07-2008 à 18:24:41
Reply

Marsh Posté le 03-07-2008 à 18:22:40   

Reply

Marsh Posté le 17-07-2008 à 14:35:10    

Ca m'a tout l'air de ressembler à des états de ton CORE ce que tu décrit là.
Regarde le pattern state.


Message édité par kyntriad le 17-07-2008 à 14:40:46

---------------
You can't start a fire with moonlight
Reply

Marsh Posté le 17-07-2008 à 15:55:42    

boost::statechart aussi :E

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed