Advertisement
thorium90

Task(Obsolète).h

Sep 29th, 2011
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.97 KB | None | 0 0
  1. /*
  2. ##########################################################################
  3. ##                          ARDUINO SOURCES                             ##
  4. ##########################################################################
  5. */
  6. /*
  7.    ___|  _)  | _)       _)                         ___|                    
  8.  \___ \   |  |  |   __|  |  |   |  __ `__ \       |       _ \    __|  __ \  
  9.        |  |  |  |  (     |  |   |  |   |   |      |      (   |  |     |   |
  10.  _____/  _| _| _| \___| _| \__,_| _|  _|  _|     \____| \___/  _|     .__/  
  11.                                                                      _|  
  12. Code source libre de droit. Si vous utilisez mon code, merci à vous d'en préciser la source.
  13.  
  14. @Date : 28/09/2011
  15. @Auteur : www.siliciumcorp.com
  16. */
  17. #ifndef TASK_HEADER
  18. #define TASK_HEADER    //Evite les inclusions multiples
  19. #include <WProgram.h>  //Permet au compillateur Arduino de bien faire son travail quand on taf avec nos propres librairies
  20.  
  21. class Task
  22. {
  23.     private :
  24.         unsigned long currentTime;               //Stock le temps actuel
  25.         long lastTime;                           //Stock la dernier valeur du début du dernier cycle
  26.         unsigned int cycleTime;                  //Definie la fréquence d'éxecution de la tache en miliseconde
  27.         unsigned int cycleTimeBak;               //Valeur de sauvegarde inchangeable
  28.         boolean onPause;                         //Definie l'état actuel de la tache. A la création de l'objet, la tache est en pause et doit etre lancé avec run()
  29.         int elapsedCycle;                        //Contient le nombre de fois que la fonction outOfDate() a remplit la condition de temps ecoulé
  30.        
  31.     public:
  32.         Task(unsigned int);                      //Le constructeur attend un entier positif lui définisant la fréquence d'éxecution de la tache en miliseconde
  33.         Task();                                  //Surcharge pratique.
  34.         boolean isOutOfDate();                   //Renvoie TRUE si l'heure de ce cycle depasse la valeur de la fréquence. Si la tache est en pause ou le temps n'est pas ecoulé, renvera alors FALSE
  35.         boolean isSleeping();                    //Renvoie TRUE si la tache est en pause
  36.         void setCycleTime(unsigned int);         //Definie la fréquence d'éxécution. Attend un entier positif.
  37.         unsigned int getCycleTime();             //Renvoie la valeur actuelle de la fréquence.
  38.         int getElapsedCycle();                   //Renvoie la valeur actuelle du nombre de fois que la fonction outOfDate() a remplit la condition de temps ecoulé
  39.         void run();                              //Lance/Re-lance la tâche.
  40.         void standby();                          //Met en pause la tâche. Tant que le gestionnaire ne relance pas, l'action ne sera plus executé.
  41.         void reset();                            //Comme son nom l'indique si bien, remet à l'état initial les parametres, y compris le timing passé au constructeur.
  42. };
  43.  
  44. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement