diff --git a/simulation/qtcreator-files/paprikaSimulateur/paprikaSimulateur.pro b/simulation/qtcreator-files/paprikaSimulateur/paprikaSimulateur.pro index 4fef27acfbe3ddd59d161cb4635fbb40db1d2e34..9789a740e3563eea326a33f61de23de444a09635 100644 --- a/simulation/qtcreator-files/paprikaSimulateur/paprikaSimulateur.pro +++ b/simulation/qtcreator-files/paprikaSimulateur/paprikaSimulateur.pro @@ -68,6 +68,7 @@ HEADERS += \ ../../include/simul/contactlistener.h \ ../../include/strategie/strategiev3.h \ ../../include/strategie/etape.h \ + ../../include/strategie/cabine.h \ ../../include/strategie/dijkstra.h \ ../../include/hardware/tourelle.h \ ../../src/strategie/clap.h \ @@ -180,7 +181,8 @@ SOURCES += \ ../../src/initkrabi.cpp \ ../../src/initialisation.cpp \ ../../src/strategie/krabijunior2016.cpp \ - ../../src/strategie/krabi2016.cpp + ../../src/strategie/krabi2016.cpp \ + ../../src/strategie/cabine.cpp FORMS += \ ../../include/simul/remotedebug.ui \ diff --git a/stm32/include/strategie/cabine.h b/stm32/include/strategie/cabine.h new file mode 100644 index 0000000000000000000000000000000000000000..3540bd45ee18666f62065b370d4c4c763edd29b3 --- /dev/null +++ b/stm32/include/strategie/cabine.h @@ -0,0 +1,25 @@ +#ifndef CABINE_H +#define CABINE_H + +#include "position.h" +#include "mediumLevelAction.h" +#include "command.h" + +class Cabine : public MediumLevelAction +{ +public: + Cabine(); + + Cabine(Position position); + + ~Cabine(); + + int update(); + + Etape::EtapeType getType(); + +protected: + Position position; +}; + +#endif // CABINE_H diff --git a/stm32/include/strategie/etape.h b/stm32/include/strategie/etape.h index 55c59b70f1aee526dba27b98e8b5d7a1ae8a17b8..e70655231e7dadefc782f43c3b1031cb826c74c3 100644 --- a/stm32/include/strategie/etape.h +++ b/stm32/include/strategie/etape.h @@ -18,6 +18,8 @@ public: { ROBOT_VU_ICI = 100, + CABINE = 8, + POINT_PASSAGE = 0, COLLECT = 1, FRUIT = 2, diff --git a/stm32/include/strategie/krabi2016.h b/stm32/include/strategie/krabi2016.h index 176afffc8010ba65443bd12e16e86e29cc25e5aa..c30a0053ee4472738e1177e05db3b3c6dcc1380b 100644 --- a/stm32/include/strategie/krabi2016.h +++ b/stm32/include/strategie/krabi2016.h @@ -5,13 +5,12 @@ #define NOMBRE_ETAPES 50 - - #include "strategiev3.h" #include "etape.h" #include "clap.h" #include "gobelet.h" #include "tapis.h" +#include "cabine.h" #include "ramasserPied.h" #include "deposerGobelet.h" #include "manipulationCoinGaucheBas.h" @@ -28,7 +27,7 @@ public: /** @brief Actions de Krabi */ Clap actionClap[3]; Gobelet actionGobelet[5]; - Tapis actionTapis[2]; + Cabine actionCabine[2]; DeposerGobelet actionDeposerGobelet[3]; RamasserPied actionRamasserPied[8]; diff --git a/stm32/src/strategie/cabine.cpp b/stm32/src/strategie/cabine.cpp new file mode 100644 index 0000000000000000000000000000000000000000..ec3ee188e0d89bf44af30fd39486d944eb3461c7 --- /dev/null +++ b/stm32/src/strategie/cabine.cpp @@ -0,0 +1,36 @@ +#include "cabine.h" +#include "strategieV2.h" +#include "mediumLevelAction.h" +#include "command.h" +#include "position.h" + +#ifndef ROBOTHW +#include +#endif + +Cabine::Cabine(){} + +Cabine::Cabine(Position position):MediumLevelAction(position) +{ + +} + +Cabine::~Cabine(){} + +Etape::EtapeType Cabine::getType() +{ + return Etape::CABINE; +} + +int Cabine::update() +{ + + if (status == 0) //Début + { +#ifndef ROBOTHW + qDebug() << "Ouverture cabine"; +#endif + } + + return status; +} diff --git a/stm32/src/strategie/etape.cpp b/stm32/src/strategie/etape.cpp index bff3422fa2dd7961d8816a20b85bad251c11ebf3..c97e7b2e951f02b49b1c0cfcfc1b89720117258b 100644 --- a/stm32/src/strategie/etape.cpp +++ b/stm32/src/strategie/etape.cpp @@ -382,6 +382,8 @@ QString Etape::getNameType(EtapeType type) { switch(type) { + case CABINE: + return "Cabine"; case POINT_PASSAGE: return "Passage"; case DEPART: @@ -407,6 +409,8 @@ QString Etape::getShortNameType(EtapeType type) { switch(type) { + case CABINE: + return "Cabine"; case POINT_PASSAGE: return ""; case DEPART: diff --git a/stm32/src/strategie/krabi2016.cpp b/stm32/src/strategie/krabi2016.cpp index bd424beb21c95ebd3df942833417405812aa1a0b..82eeb03781eaae6ad51ef4fd6731cac8d70507e0 100644 --- a/stm32/src/strategie/krabi2016.cpp +++ b/stm32/src/strategie/krabi2016.cpp @@ -69,8 +69,8 @@ Krabi2016::Krabi2016(bool isYellow) : StrategieV3(isYellow) new Etape(13, new DeposerGobelet(Position(183, 496, true)) ); - // Tapis - new Etape(17, new Tapis(Position(480, 780, true)) ); + // Cabine + new Etape(17, new Cabine(Position(480, 780, true)) ); new Etape(36, new Tapis(Position(1420, 180, true)) ); // Ramasser Pied @@ -100,7 +100,7 @@ Krabi2016::Krabi2016(bool isYellow) : StrategieV3(isYellow) // Voisins Etape::get(0)->addVoisin(1); - + Etape::get(17)->addVoisins(1); Etape::get(18)->addVoisins(5, 1); Etape::get(18)->addVoisins(35, 27); Etape::get(20)->addVoisins(5, 35 , 28); @@ -130,6 +130,9 @@ int Krabi2016::getScoreEtape(int i){ return 1000;//STRATEGIE // return 0; + case Etape::CABINE : + return 0;//STRATEGIE + case Etape::AMPOULE : return 0;