Conscience Core
CommandPlayStateOutputs.h
Go to the documentation of this file.
1 #ifndef ConscienceEnvironmentInteractionCommandPlayStateOutputs_h
2 #define ConscienceEnvironmentInteractionCommandPlayStateOutputs_h
3 
4 #include "./Command.h"
5 #include <string>
7 
9 
11 
12 public:
13  inline static const CommandTypeId COMMAND_ID = "PLAY_STATE_OUTPUTS";
14 
16  ptr<CscEntityReflexion> entityReflexion,
17  CscState *stateToPlay,
18  float stateDuration = 200,
19  float stateDelay = 200,
20  bool relativeValues = false);
21 
22  static CommandPlayStateOutputs *forWheelsSpeedPercent(const ptr<CscEntityReflexion> &entityReflexion,
23  double speedLeftPercent, double speedRightPercent,
24  float stateDuration = 200,
25  float stateDelay = 200);
26 
27  ~CommandPlayStateOutputs() override;
28 
29  CscState *getStateToPlay();
30 
31  float getStateDuration();
32  float getStateDelay();
33  bool isRelativeValues();
34 
35 protected:
36  const CscCommandExecutionResultNone *doExecute(CscEnvironmentSimulator &environmentSimulator) override;
37  ptr<CscEntityReflexion> getEntityReflexion() const override;
38 
39 private:
40  ptr<CscEntityReflexion> entityReflexion;
41  CscState *stateToPlay;
42  float stateDuration;
43  float stateDelay;
44  bool relativeValues;
45 };
46 
47 COMMAND_TYPE_BUILDER(CommandPlayStateOutputs, CscMemberInputStatus, const string &, const map<CscInputType, float> &)
48 COMMAND_TYPE_BUILDER(CommandPlayStateOutputs, CscState, map<int, float> *, map<int, float> *, map<int, float> *, const optional<map<int, float>> &, const vector<const CscMemberInputStatus *> *)
50 
51 }
52 
53 #endif
conscience_core::bridging::commands::result::CscCommandExecutionResultNone
Definition: CommandExecutionResultNone.h:11
CSC_DLL_IMPORTEXPORT
#define CSC_DLL_IMPORTEXPORT
Definition: os.h:34
Command.h
conscience_core::bridging::commands::CommandTypeId
string CommandTypeId
Definition: Command.h:29
conscience_core::bridging::commands
Definition: cartographyCommands.cpp:4
CscState
Definition: CscState.h:24
conscience_core::bridging::commands::CscCommand
Definition: Command.h:40
COMMAND_TYPE_BUILDER
#define COMMAND_TYPE_BUILDER(PREFIX, COMMAND_REGISTER_className,...)
Definition: CscCommandAutoParse.h:515
CscEnvironmentSimulator
Definition: CscEnvironmentSimulator.h:31
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
conscience_core::bridging::commands::CommandPlayStateOutputs
Definition: CommandPlayStateOutputs.h:10
CscMemberInputStatus
Definition: CscMemberInputStatus.h:26
ptr
std::shared_ptr< T > ptr
Definition: CscCommon.h:29