Actin®  Version 5.3.0
Software for Robotics Simulation and Control
ecForDirectionSimpleState.h
Go to the documentation of this file.
1 #ifndef ecForDirectionSimpleState_H_
2 #define ecForDirectionSimpleState_H_
3 //------------------------------------------------------------------------------
4 // Copyright (c) 2015 Energid Technologies. All rights reserved.
5 //
9 //
10 //------------------------------------------------------------------------------
11 #include <actin/actin_config.h> // Required to be first header.
12 
14 
15 #include <xml/ecXmlBasicType.h>
16 #include <xml/ecXmlEnumType.h>
17 
19 class EcForDirection;
20 
23 {
25 public:
27  enum
28  {
29  NO_FAILURE,
30  CONDITION_FAILURE,
31  THEN_DIRECTION_FAILURE,
32  ELSE_DIRECTION_FAILURE
33  };
34 
36  enum Status
37  {
38  NotStarted = 0x000,
39 
40  PlayingCondition = 0x001,
41  ConditionSuccess = 0x002,
42  ConditionFailed = 0x004,
43 
44  PlayingDirection = 0x008,
45  DirectionSuccess = 0x010,
46  DirectionFailed = 0x020,
47 
48  };
49 
51  virtual void registerComponents
52  (
53  ) EC_OVERRIDE;
54 
56  static EcXmlObject* creator
57  (
58  );
59 
62  (
63  ) const EC_OVERRIDE;
64 
65 
67  EcU32 getDirectionStatus
68  (
69  ) const;
70 
71 
73  EcU32 getFailureIndex
74  (
75  ) const;
76 
78  EcU32 getActiveDirectionIndex
79  (
80  ) const;
81 
82 protected:
83  friend class EcForDirection;
84  friend class EcForDirectionWidget;
85 
86 
89 
92 
95 
98 
101 
104 
105 
106 };
107 
108 #endif // ecForDirectionSimpleState_H_
virtual void registerComponents() EC_OVERRIDE
register components with the parent
EcXmlU32 m_Status
direction indicates the different possible state
Status
direction execution states
#define EC_OVERRIDE
Add wrapper around c++11 override keyword.
Definition: ecMacros.h:36
boost::uint32_t EcU32
32-bit unsigned integer
Definition: ecTypes.h:53
EcXmlU32 m_ConditionCount
number of conditions
#define EC_CORE_DIRECTIONS_DECL
extendedDirections directory
Definition: actin_config.h:234
#define EC_XMLOBJECT_PLUGIN_DECLARE(cls)
Definition: ecMacros.h:430
EcXmlU32 m_IterationIndex
index of the Iteration
Concrete implementation of EcManipulationSceneDirectionSimpleState for if direction.
static EcXmlObject * creator()
static creator function
std::vector< EcString > EcStringVector
string organization using vectors
Definition: ecTypes.h:138
A base class for xml objects.
Definition: ecXmlObject.h:23
EcXmlU32 m_FailureIndex
index of the failure
EcXmlU32 m_DirectionsCount
number of then directions
virtual EcStringVector statusString() const EC_OVERRIDE
get the status of directions in string
Concrete implementation of EcManipulationSceneDirectionState for holding EcForDirection state informa...
Concrete implementation of EcManipulationSceneDirectionSimpleState for holding basic state informatio...
Concrete implementation of EcManipulationDirection for running For directions from the director...
EcXmlU32 m_ActiveDirectionIndex
index of the current active direction
Configuration header for the actin hierarchy.
Created by Energid Technologies www.energid.com
Copyright © 2016 Energid. All trademarks mentioned in this document are property of their respective owners.