Conscience Core
CommandEntityFollowPath.h
Go to the documentation of this file.
1 #ifndef CommandEntityFollowPath_h
2 #define CommandEntityFollowPath_h
3 
4 #include "./Command.h"
7 
8 /*
9  La commande reçoit une liste de positions où l'entité doit passer. La commande calcule avec ces positions le chemin et la séquence d'états à envoyer à l'entité.
10  La commande reçoit plus précisement un dictionnaire de liste de points représentants les différentes formes définies par l'utilisateur
11  */
13 
15 
16  public:
17  inline static const string COMMAND_ID = "ENTITY_FOLLOW_PATH";
18 
20  ptr<CscEntityReflexion> entityReflexion,
21  const string membreToMove,
22  const string membreRelative,
23  vector<vector<CscPoint3d *>> *shapesList,
24  const float currentPositionX,
25  const float currentPositionY,
26  const float currentPositionZ,
27  const float currentEulerX,
28  const float currentEulerY,
29  const float currentEulerZ,
31  double speedRatio = 1.0);
32 
33  const string getMembreToMove();
34  const string getMembreRelative();
35  const vector<vector<CscPoint3d *>> *getShapesList();
36  const float getCurrentPositionX();
37  const float getCurrentPositionY();
38  const float getCurrentPositionZ();
39  const float getCurrentEulerX();
40  const float getCurrentEulerY();
41  const float getCurrentEulerZ();
42 
43  const CscCommandExecutionResultSequence * doExecute(CscEnvironmentSimulator &environmentSimulator) override;
44  protected:
46  return entityReflexion;
47  }
48 
49  private:
50  ptr<CscEntityReflexion> entityReflexion;
51  const string membreToMove;
52  const string membreRelative;
53  vector<vector<CscPoint3d *>> *shapesList;
54  const float currentPositionX;
55  const float currentPositionY;
56  const float currentPositionZ;
57  const float currentEulerX;
58  const float currentEulerY;
59  const float currentEulerZ;
60 
61  CscSequenceType resultType;
62 
63  double speedRatio;
64  };
65 
66 COMMAND_REGISTER(CommandEntityFollowPath, ptr<CscEntityReflexion>, string, string, vector<vector<CscPoint3d *>> *, float, float, float, float, float, float)
67 
68 }
69 
70 #endif
CSC_DLL_IMPORTEXPORT
#define CSC_DLL_IMPORTEXPORT
Definition: os.h:31
Command.h
OUTPUTS
@ OUTPUTS
Definition: CscSequence.h:22
conscience_core::bridging::commands::result::CscCommandExecutionResultSequence
Definition: CommandExecutionResultSequence.h:15
conscience_core::bridging::commands
Definition: cartographyCommands.cpp:4
conscience_core::bridging::commands::CscCommand
Definition: Command.h:40
CommandExecutionResult.h
CscEnvironmentSimulator
Definition: CscEnvironmentSimulator.h:35
conscience_core::bridging::commands::COMMAND_REGISTER
COMMAND_REGISTER(CommandFollowKinematicTrajectory, ptr< CscEntityReflexion >, int, const CscState *, string, string, string, string, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float)
CscCommandAutoParse.h
CscSequenceType
CscSequenceType
Definition: CscSequence.h:17
conscience_core::bridging::commands::CommandEntityFollowPath::getEntityReflexion
ptr< CscEntityReflexion > getEntityReflexion() const override
Definition: CommandEntityFollowPath.h:45
ptr
std::shared_ptr< T > ptr
Definition: CscCommon.h:29
conscience_core::bridging::commands::CommandEntityFollowPath
Definition: CommandEntityFollowPath.h:14