AuboCaps  0.6.0
force_node.h
Go to the documentation of this file.
1 #ifndef AUBO_SCOPE_FORCE_NODE_H
2 #define AUBO_SCOPE_FORCE_NODE_H
3 
4 #include <vector>
6 
7 namespace arcs {
8 namespace aubo_scope {
9 ARCS_CLASS_FORWARD(ForceNode);
10 
12 {
13 public:
14  /**
15  * The configuration type used to determine which type of configuration this
16  * instance is.
17  */
19  {
20 
21  /**
22  * <p>
23  * Simple type is selected. This type has no further information.
24  * </p>
25  *
26  * Setting this type of config will be ignored and will have no effect
27  * on the node.
28  */
30 
31  /**
32  * <p>
33  * Frame type is selected.
34  * </p>
35  *
36  * The config instance can be cast to {@link FrameForceNodeConfig}.
37  */
39 
40  /**
41  * <p>
42  * Point type is selected. This type has no further information.
43  * </p>
44  *
45  * Setting this type of config will be ignored and will have no effect
46  * on the node.
47  */
49 
50  /**
51  * <p>
52  * Motion type is selected. This type has no further information.
53  * </p>
54  *
55  * Setting this type of config will be ignored and will have no effect
56  * on the node.
57  */
58  MOTION
59  };
60 
61  ForceNode(ForceNode &f);
62  ForceNode(ForceNode &&f);
63  virtual ~ForceNode();
64 
65 private:
66  friend class DataSwitch;
67  ForceNode();
68  void *d_{ nullptr };
69 };
70 
71 } // namespace aubo_scope
72 } // namespace arcs
73 #endif // AUBO_SCOPE_FORCE_NODE_H
ARCS_CLASS_FORWARD(GripForceCapability)
#define ARCS_ABI_EXPORT
Definition: class_forward.h:16
ConfigType
The configuration type used to determine which type of configuration this instance is...
Definition: force_node.h:18