Alexandre Salconi-Denis
/
ProjetOctopode
Programme de contrôle de l'octopode 4DOF, Theraphosa-Salconi.
CtrlBridge
- fonction quelquonque pour communiquer avec les module
- fonction quelquonque pour faire des recherche dans les module dispo
- autre fonction pour jouer avec MemRegistre
Version 1.2.0
- Ajout d'un mode de simulation pour tester le code avec seulement un contrôleur stm32
source/Task/TTask.h@19:0ac80045ba4c, 2015-04-27 (annotated)
- Committer:
- salco
- Date:
- Mon Apr 27 20:41:21 2015 +0000
- Revision:
- 19:0ac80045ba4c
- Parent:
- 14:ca1a9230ba7f
- Child:
- 31:ed23647fd16e
modification de homemade s?quence pour simplifier le codage et la modification future des s?quence si besoin est.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
salco | 2:4c5b0f6d0a6b | 1 | /** |
salco | 2:4c5b0f6d0a6b | 2 | * @file TTask.h |
salco | 2:4c5b0f6d0a6b | 3 | * @brief Cette classe est le modele des 3 taches de controle. |
salco | 2:4c5b0f6d0a6b | 4 | * @author Salco |
salco | 2:4c5b0f6d0a6b | 5 | * @version 2.00 |
salco | 2:4c5b0f6d0a6b | 6 | * @date 11 mars 2015 |
salco | 2:4c5b0f6d0a6b | 7 | */ |
salco | 2:4c5b0f6d0a6b | 8 | #ifndef TTASK_H |
salco | 2:4c5b0f6d0a6b | 9 | #define TTASK_H |
salco | 2:4c5b0f6d0a6b | 10 | |
salco | 2:4c5b0f6d0a6b | 11 | #include "mouvement.h" |
salco | 14:ca1a9230ba7f | 12 | #include "OSNAPprotocoleDefine.h" |
salco | 7:dcfd81d7f93f | 13 | #include "CtrlBridge.h" |
salco | 2:4c5b0f6d0a6b | 14 | |
salco | 2:4c5b0f6d0a6b | 15 | class TTask |
salco | 2:4c5b0f6d0a6b | 16 | { |
salco | 11:496453b45e25 | 17 | private: |
salco | 2:4c5b0f6d0a6b | 18 | int m_priorityCount;//m_countCycle; |
salco | 2:4c5b0f6d0a6b | 19 | int m_priority;//m_cycleSet; |
salco | 2:4c5b0f6d0a6b | 20 | //bool startSignal; |
salco | 11:496453b45e25 | 21 | |
salco | 11:496453b45e25 | 22 | |
salco | 11:496453b45e25 | 23 | protected: |
salco | 2:4c5b0f6d0a6b | 24 | static TTask *ptrThis; |
salco | 19:0ac80045ba4c | 25 | string m_ListDesModules; |
salco | 19:0ac80045ba4c | 26 | CtrlBridge* m_CtrlBridge; |
salco | 11:496453b45e25 | 27 | |
salco | 11:496453b45e25 | 28 | public: |
salco | 11:496453b45e25 | 29 | TTask(int priority=0) { |
salco | 11:496453b45e25 | 30 | m_priority=priority; |
salco | 11:496453b45e25 | 31 | m_priorityCount=0; |
salco | 19:0ac80045ba4c | 32 | m_CtrlBridge = m_CtrlBridge->getInstance(); |
salco | 19:0ac80045ba4c | 33 | |
salco | 11:496453b45e25 | 34 | } |
salco | 11:496453b45e25 | 35 | virtual ~TTask() { |
salco | 11:496453b45e25 | 36 | } |
salco | 11:496453b45e25 | 37 | |
salco | 11:496453b45e25 | 38 | virtual void exec(void) { |
salco | 11:496453b45e25 | 39 | if(m_priorityCount >= m_priority) { |
salco | 2:4c5b0f6d0a6b | 40 | m_priorityCount=0; |
salco | 2:4c5b0f6d0a6b | 41 | this->task(); |
salco | 11:496453b45e25 | 42 | } else |
salco | 11:496453b45e25 | 43 | m_priorityCount++; |
salco | 11:496453b45e25 | 44 | } |
salco | 11:496453b45e25 | 45 | |
salco | 2:4c5b0f6d0a6b | 46 | //virtual void signalStart(void); |
salco | 2:4c5b0f6d0a6b | 47 | virtual void task(void) = 0; |
salco | 11:496453b45e25 | 48 | |
salco | 11:496453b45e25 | 49 | void setPriority(int value) { |
salco | 11:496453b45e25 | 50 | m_priority = value; |
salco | 11:496453b45e25 | 51 | } |
salco | 11:496453b45e25 | 52 | int getPriority() { |
salco | 11:496453b45e25 | 53 | return m_priority; |
salco | 11:496453b45e25 | 54 | } |
salco | 11:496453b45e25 | 55 | |
salco | 2:4c5b0f6d0a6b | 56 | }; |
salco | 2:4c5b0f6d0a6b | 57 | #endif // TTASK_H |