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@14:ca1a9230ba7f, 2015-03-23 (annotated)
- Committer:
- salco
- Date:
- Mon Mar 23 22:41:31 2015 +0000
- Revision:
- 14:ca1a9230ba7f
- Parent:
- 11:496453b45e25
- Child:
- 18:3f113f8441b2
Je crois que jai fini tout ce que j'ai besoin pour faire utilisation des modules, reste un peut de pofinage mais pour le moment sa compile.
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 | 14:ca1a9230ba7f | 34 | unsigned char getAdressDispo(const unsigned char &startValue); |
salco | 14:ca1a9230ba7f | 35 | bool isAdresseValide(const char &adresse); |
salco | 14:ca1a9230ba7f | 36 | bool isAdresseValide(const char &adresse, Module &m ); |
salco | 9:7295385f02b2 | 37 | |
salco | 6:a7777c2a7e1e | 38 | |
salco | 14:ca1a9230ba7f | 39 | //actioneur// |
salco | 9:7295385f02b2 | 40 | bool remAllActioneur(void) { |
salco | 9:7295385f02b2 | 41 | m_moduleActioneur.clear(); |
salco | 9:7295385f02b2 | 42 | return 1; |
salco | 9:7295385f02b2 | 43 | } |
salco | 10:7e6aeaebe1a2 | 44 | inline bool remActioneur(int position) { |
salco | 10:7e6aeaebe1a2 | 45 | list<Module>::iterator it1=m_moduleActioneur.begin(); |
salco | 10:7e6aeaebe1a2 | 46 | for(char i=position; i>1; i--) it1++; |
salco | 10:7e6aeaebe1a2 | 47 | m_moduleActioneur.erase(it1); |
salco | 10:7e6aeaebe1a2 | 48 | return 1; |
salco | 10:7e6aeaebe1a2 | 49 | } |
salco | 9:7295385f02b2 | 50 | bool addActioneur(Module module) { |
salco | 9:7295385f02b2 | 51 | m_moduleActioneur.push_back(module); |
salco | 9:7295385f02b2 | 52 | return 1; |
salco | 9:7295385f02b2 | 53 | } |
salco | 9:7295385f02b2 | 54 | Module firstActioneur(void); |
salco | 9:7295385f02b2 | 55 | Module nextActioneur(void); |
salco | 9:7295385f02b2 | 56 | int getSizeActioneur(void) { |
salco | 9:7295385f02b2 | 57 | return m_moduleActioneur.size(); |
salco | 9:7295385f02b2 | 58 | } |
salco | 14:ca1a9230ba7f | 59 | //capteur// |
salco | 9:7295385f02b2 | 60 | bool remAllCapteur(void) { |
salco | 9:7295385f02b2 | 61 | m_moduleCapteur.clear(); |
salco | 9:7295385f02b2 | 62 | return 1; |
salco | 9:7295385f02b2 | 63 | } |
salco | 9:7295385f02b2 | 64 | bool remCapteur(int position) { |
salco | 10:7e6aeaebe1a2 | 65 | list<Module>::iterator it1=m_moduleCapteur.begin(); |
salco | 10:7e6aeaebe1a2 | 66 | for(char i=position; i>1; i--) it1++; |
salco | 9:7295385f02b2 | 67 | m_moduleCapteur.erase(it1); |
salco | 9:7295385f02b2 | 68 | return 1; |
salco | 9:7295385f02b2 | 69 | } |
salco | 9:7295385f02b2 | 70 | bool addCapteur(Module module) { |
salco | 9:7295385f02b2 | 71 | m_moduleCapteur.push_back(module); |
salco | 9:7295385f02b2 | 72 | return 1; |
salco | 9:7295385f02b2 | 73 | } |
salco | 9:7295385f02b2 | 74 | Module firstCapteur(void); |
salco | 9:7295385f02b2 | 75 | Module nextCapteur(void); |
salco | 9:7295385f02b2 | 76 | int getSizeCapteur(void) { |
salco | 9:7295385f02b2 | 77 | return m_moduleCapteur.size(); |
salco | 9:7295385f02b2 | 78 | } |
salco | 14:ca1a9230ba7f | 79 | //memoire// |
salco | 9:7295385f02b2 | 80 | bool remAllMemoire(void) { |
salco | 9:7295385f02b2 | 81 | m_moduleMemoire.clear(); |
salco | 9:7295385f02b2 | 82 | return 1; |
salco | 9:7295385f02b2 | 83 | } |
salco | 9:7295385f02b2 | 84 | bool remMemoire(int position) { |
salco | 10:7e6aeaebe1a2 | 85 | list<Module>::iterator it1=m_moduleMemoire.begin(); |
salco | 10:7e6aeaebe1a2 | 86 | for(char i=position; i>1; i--) it1++; |
salco | 9:7295385f02b2 | 87 | m_moduleMemoire.erase(it1); |
salco | 9:7295385f02b2 | 88 | return 1; |
salco | 9:7295385f02b2 | 89 | } |
salco | 9:7295385f02b2 | 90 | bool addMemoire(Module module) { |
salco | 9:7295385f02b2 | 91 | m_moduleMemoire.push_back(module); |
salco | 9:7295385f02b2 | 92 | return 1; |
salco | 9:7295385f02b2 | 93 | } |
salco | 9:7295385f02b2 | 94 | Module firstMemoire(void); |
salco | 9:7295385f02b2 | 95 | Module nextMemoire(void); |
salco | 9:7295385f02b2 | 96 | int getSizeMemoire(void) { |
salco | 9:7295385f02b2 | 97 | return m_moduleMemoire.size(); |
salco | 9:7295385f02b2 | 98 | } |
salco | 6:a7777c2a7e1e | 99 | |
salco | 6:a7777c2a7e1e | 100 | }; |
salco | 6:a7777c2a7e1e | 101 | #endif // MEMREG_H // |
salco | 6:a7777c2a7e1e | 102 | |
salco | 6:a7777c2a7e1e | 103 | |
salco | 6:a7777c2a7e1e | 104 |