Conscience Core
CommandMemberFocusState.h
Go to the documentation of this file.
1 #ifndef ConscienceEnvironmentInteractionCommandMemberFocusState_h
2 #define ConscienceEnvironmentInteractionCommandMemberFocusState_h
3 
4 #include "./Command.h"
5 #include "Unit/CscUnitOrigin.h"
6 #include "Unit/CscUnitType.h"
10 #include <array>
11 using std::array;
12 using namespace conscience_core::knowledge;
13 
15 
16 
18 
19  public:
20  inline static const CommandTypeId COMMAND_ID = "MEMBER_FOCUS_STATE";
21 
23  ptr<CscEntityReflexion> entityReflexion,
24 
25  int knowledgeId,
26  const CscState *currentState,
27  string membreToMove,
28  FocusType focusType,
29  float targetPositionX,
30  float targetPositionY,
31  float targetPositionZ,
32  CscUnitType unitType,
33  string targetOriginMember,
34  bool symetrySearch,
35  int nbStateMax,
36  int deltaPerStateMax,
37  bool optionCutLastestIfTheSameAndWorst,
38  bool optionCutBeginingIfTheSame,
39  bool optionDeltaPerStateMaxDegressive,
40  float percentAvg,
41  float percentMax,
42  int stateDuration,
43  int stateDelay,
44  float solvedAt,
45  array<bool, 4> outputTypes,
47 
49  delete currentState;
50  }
51 
52  int getKnowledgeId();
53  const CscState *getCurrentState();
54  string getMembreToMove();
55  string getMembreRelative();
56  float getTargetPositionX();
57  float getTargetPositionY();
58  float getTargetPositionZ();
59 
60  CscUnitType getUnitType();
61  string getTargetOriginMember();
62 
63  bool getSymetrySearch();
64  int getNbStateMax();
65  int getDeltaPerStateMax();
66  bool getOptionCutLastestIfTheSameAndWorst();
67  bool getOptionCutBeginingIfTheSame();
68  float getPercentAvg();
69  float getPercentMax();
70  float getSolvedAt();
71 
72  protected:
73  const CscCommandExecutionResultSequence * doExecute(
74  CscEnvironmentSimulator &environmentSimulator) override;
76  return entityReflexion;
77  }
78  private:
79 
80  ptr<CscEntityReflexion> entityReflexion;
81 
82  const int knowledgeId;
83  const CscState *const currentState;
84  const string membreToMove;
85  const float targetPositionX;
86  const float targetPositionY;
87  const float targetPositionZ;
88 
89  const CscUnitType unitType;
90  const string targetOriginMember;
91 
92  const bool symetrySearch;
93  const int nbStateMax;
94  const int deltaPerStateMax;
95  const bool optionCutLastestIfTheSameAndWorst;
96  const bool optionCutBeginingIfTheSame;
97  bool optionDeltaPerStateMaxDegressive;
98  const float percentAvg;
99  const float percentMax;
100  const float solvedAt;
101  const FocusType focusType;
102 
103  int stateDuration;
104  int stateDelay;
105 
106  bool outputTypes[4];
108  };
109 
110 COMMAND_REGISTER(CommandMemberFocusState,
112  int,
113  const CscState *,
114  string,
115  FocusType,
116  float,
117  float,
118  float,
119  CscUnitType,
120  string,
121  bool,
122  int,
123  int,
124  bool,
125  bool,
126  bool,
127  float,
128  float,
129  int,
130  int,
131  float,
132  array<bool, 4>,
134 }
135 
136 #endif
conscience_core::ai::FocusType
FocusType
Definition: CscEntityReflexion.h:261
conscience_core::bridging::commands::CommandMemberFocusState::getEntityReflexion
ptr< CscEntityReflexion > getEntityReflexion() const override
Definition: CommandMemberFocusState.h:75
CSC_DLL_IMPORTEXPORT
#define CSC_DLL_IMPORTEXPORT
Definition: os.h:31
CscUnitType.h
CscUnitType
CscUnitType
Definition: CscUnitType.h:14
CscKnowledgeItem.h
Command.h
conscience_core::bridging::commands::result::CscCommandExecutionResultSequence
Definition: CommandExecutionResultSequence.h:15
conscience_core::bridging::commands::CommandTypeId
string CommandTypeId
Definition: Command.h:29
CscEntityReflexion.h
conscience_core::bridging::commands::CommandMemberFocusState
Definition: CommandMemberFocusState.h:17
conscience_core::knowledge::CscArtificialIntelligenceTypes
uint64_t CscArtificialIntelligenceTypes
Definition: CommandParser.h:21
conscience_core::knowledge
Definition: CscEntityReflexion.h:35
CscUnitOrigin.h
conscience_core::bridging::commands
Definition: cartographyCommands.cpp:4
CscState
Definition: CscState.h:24
conscience_core::bridging::commands::CscCommand
Definition: Command.h:40
COMMAND_REGISTER
#define COMMAND_REGISTER(COMMAND_REGISTER_className,...)
Definition: CscCommandAutoParse.h:467
CscEnvironmentSimulator
Definition: CscEnvironmentSimulator.h:35
conscience_core::bridging::commands::CommandMemberFocusState::~CommandMemberFocusState
~CommandMemberFocusState()
Definition: CommandMemberFocusState.h:48
CscCommandAutoParse.h
ptr
std::shared_ptr< T > ptr
Definition: CscCommon.h:29