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/MemRegistre.h@11:496453b45e25, 2015-03-20 (annotated)
- Committer:
- salco
- Date:
- Fri Mar 20 01:03:17 2015 +0000
- Revision:
- 11:496453b45e25
- Parent:
- 10:7e6aeaebe1a2
- Child:
- 14:ca1a9230ba7f
ajouter 2-3 debug pour voir ou est l'overflow quand je call tachecritique.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
salco | 6:a7777c2a7e1e | 1 | /** |
salco | 7:dcfd81d7f93f | 2 | * @file MemRegistre.h |
salco | 6:a7777c2a7e1e | 3 | * @brief Cette classe est le modele des 3 taches de controle. |
salco | 6:a7777c2a7e1e | 4 | * @author Salco |
salco | 6:a7777c2a7e1e | 5 | * @version 2.00 |
salco | 6:a7777c2a7e1e | 6 | * @date 11 mars 2015 |
salco | 6:a7777c2a7e1e | 7 | */ |
salco | 6:a7777c2a7e1e | 8 | #ifndef MEMREG_H |
salco | 6:a7777c2a7e1e | 9 | #define MEMREG_H |
salco | 6:a7777c2a7e1e | 10 | |
salco | 9:7295385f02b2 | 11 | #include <list> |
salco | 9:7295385f02b2 | 12 | #include "Module.h" |
salco | 9:7295385f02b2 | 13 | //#include "ListChainer.h" |
salco | 6:a7777c2a7e1e | 14 | |
salco | 9:7295385f02b2 | 15 | using namespace std;// Or using std::list; |
salco | 6:a7777c2a7e1e | 16 | |
salco | 7:dcfd81d7f93f | 17 | class MemRegistre |
salco | 6:a7777c2a7e1e | 18 | { |
salco | 9:7295385f02b2 | 19 | list<Module> m_moduleActioneur;//ListChainer m_moduleActioneur; |
salco | 9:7295385f02b2 | 20 | list<Module>::iterator m_positionActioneur;//int m_positionActioneur; |
salco | 10:7e6aeaebe1a2 | 21 | |
salco | 9:7295385f02b2 | 22 | list<Module> m_moduleCapteur;//ListChainer m_moduleCapteur; |
salco | 9:7295385f02b2 | 23 | list<Module>::iterator m_positionCapteur;//int m_positionCapteur; |
salco | 10:7e6aeaebe1a2 | 24 | |
salco | 9:7295385f02b2 | 25 | list<Module> m_moduleMemoire;//ListChainer m_moduleMemoire; |
salco | 9:7295385f02b2 | 26 | list<Module>::iterator m_positionMemoire;//int m_positionMemoire; |
salco | 6:a7777c2a7e1e | 27 | |
salco | 6:a7777c2a7e1e | 28 | |
salco | 6:a7777c2a7e1e | 29 | public: |
salco | 9:7295385f02b2 | 30 | // pt metre des inline pour les fonction dans le h |
salco | 6:a7777c2a7e1e | 31 | |
salco | 9:7295385f02b2 | 32 | MemRegistre(); |
salco | 9:7295385f02b2 | 33 | virtual ~MemRegistre(); |
salco | 9:7295385f02b2 | 34 | unsigned char getAdressDispo(); |
salco | 9:7295385f02b2 | 35 | |
salco | 6:a7777c2a7e1e | 36 | |
salco | 9:7295385f02b2 | 37 | bool remAllActioneur(void) { |
salco | 9:7295385f02b2 | 38 | m_moduleActioneur.clear(); |
salco | 9:7295385f02b2 | 39 | return 1; |
salco | 9:7295385f02b2 | 40 | } |
salco | 10:7e6aeaebe1a2 | 41 | inline bool remActioneur(int position) { |
salco | 10:7e6aeaebe1a2 | 42 | list<Module>::iterator it1=m_moduleActioneur.begin(); |
salco | 10:7e6aeaebe1a2 | 43 | for(char i=position; i>1; i--) it1++; |
salco | 10:7e6aeaebe1a2 | 44 | m_moduleActioneur.erase(it1); |
salco | 10:7e6aeaebe1a2 | 45 | return 1; |
salco | 10:7e6aeaebe1a2 | 46 | } |
salco | 9:7295385f02b2 | 47 | bool addActioneur(Module module) { |
salco | 9:7295385f02b2 | 48 | m_moduleActioneur.push_back(module); |
salco | 9:7295385f02b2 | 49 | return 1; |
salco | 9:7295385f02b2 | 50 | } |
salco | 9:7295385f02b2 | 51 | Module firstActioneur(void); |
salco | 9:7295385f02b2 | 52 | Module nextActioneur(void); |
salco | 9:7295385f02b2 | 53 | int getSizeActioneur(void) { |
salco | 9:7295385f02b2 | 54 | return m_moduleActioneur.size(); |
salco | 9:7295385f02b2 | 55 | } |
salco | 6:a7777c2a7e1e | 56 | |
salco | 9:7295385f02b2 | 57 | bool remAllCapteur(void) { |
salco | 9:7295385f02b2 | 58 | m_moduleCapteur.clear(); |
salco | 9:7295385f02b2 | 59 | return 1; |
salco | 9:7295385f02b2 | 60 | } |
salco | 9:7295385f02b2 | 61 | bool remCapteur(int position) { |
salco | 10:7e6aeaebe1a2 | 62 | list<Module>::iterator it1=m_moduleCapteur.begin(); |
salco | 10:7e6aeaebe1a2 | 63 | for(char i=position; i>1; i--) it1++; |
salco | 9:7295385f02b2 | 64 | m_moduleCapteur.erase(it1); |
salco | 9:7295385f02b2 | 65 | return 1; |
salco | 9:7295385f02b2 | 66 | } |
salco | 9:7295385f02b2 | 67 | bool addCapteur(Module module) { |
salco | 9:7295385f02b2 | 68 | m_moduleCapteur.push_back(module); |
salco | 9:7295385f02b2 | 69 | return 1; |
salco | 9:7295385f02b2 | 70 | } |
salco | 9:7295385f02b2 | 71 | Module firstCapteur(void); |
salco | 9:7295385f02b2 | 72 | Module nextCapteur(void); |
salco | 9:7295385f02b2 | 73 | int getSizeCapteur(void) { |
salco | 9:7295385f02b2 | 74 | return m_moduleCapteur.size(); |
salco | 9:7295385f02b2 | 75 | } |
salco | 6:a7777c2a7e1e | 76 | |
salco | 9:7295385f02b2 | 77 | bool remAllMemoire(void) { |
salco | 9:7295385f02b2 | 78 | m_moduleMemoire.clear(); |
salco | 9:7295385f02b2 | 79 | return 1; |
salco | 9:7295385f02b2 | 80 | } |
salco | 9:7295385f02b2 | 81 | bool remMemoire(int position) { |
salco | 10:7e6aeaebe1a2 | 82 | list<Module>::iterator it1=m_moduleMemoire.begin(); |
salco | 10:7e6aeaebe1a2 | 83 | for(char i=position; i>1; i--) it1++; |
salco | 9:7295385f02b2 | 84 | m_moduleMemoire.erase(it1); |
salco | 9:7295385f02b2 | 85 | return 1; |
salco | 9:7295385f02b2 | 86 | } |
salco | 9:7295385f02b2 | 87 | bool addMemoire(Module module) { |
salco | 9:7295385f02b2 | 88 | m_moduleMemoire.push_back(module); |
salco | 9:7295385f02b2 | 89 | return 1; |
salco | 9:7295385f02b2 | 90 | } |
salco | 9:7295385f02b2 | 91 | Module firstMemoire(void); |
salco | 9:7295385f02b2 | 92 | Module nextMemoire(void); |
salco | 9:7295385f02b2 | 93 | int getSizeMemoire(void) { |
salco | 9:7295385f02b2 | 94 | return m_moduleMemoire.size(); |
salco | 9:7295385f02b2 | 95 | } |
salco | 6:a7777c2a7e1e | 96 | |
salco | 6:a7777c2a7e1e | 97 | }; |
salco | 6:a7777c2a7e1e | 98 | #endif // MEMREG_H // |
salco | 6:a7777c2a7e1e | 99 | |
salco | 6:a7777c2a7e1e | 100 | |
salco | 6:a7777c2a7e1e | 101 |