AuboStudio SDK  0.6.3
gripper_node.h
浏览该文件的文档.
1#ifndef AUBO_SCOPE_GRIPPER_NODE_H
2#define AUBO_SCOPE_GRIPPER_NODE_H
3
7
8namespace arcs {
9namespace aubo_scope {
11
12/**
13 * <p>
14 * This interface represents a program node which can be used for programming
15 * grip and release actions with a selected gripper device.
16 * </p>
17 *
18 * <p>
19 * An instance of this interface can be built using the {@link
20 * GripperNodeFactory} interface and is returned as a result when {@link
21 * GripperNodeFactory#createGripperNode(GripperDevice)} is called.
22 * </p>
23 */
25{
26public:
27 /**
28 * The configuration type used to determine which type of configuration this
29 * instance is.
30 */
32 {
33
34 /**
35 * <p>
36 * A Gripper action (i.e. grip or release) has not been selected
37 * </p>
38 *
39 * The config instance can be cast to {@link UndefinedActionConfig}.
40 * This is only relevant if the Gripper node uses a multi-gripper
41 * device, i.e. a gripper device supporting the multi-gripper capability
42 * (see the
43 * {@link MultiGripperSupport} interface). The instance will provide
44 * access to the individual gripper selection.
45 */
47
48 /**
49 * <p>
50 * The gripper is configured for a grip action
51 * </p>
52 *
53 * The config instance can be cast to {@link GripActionConfig}.
54 */
56
57 /**
58 * <p>
59 * The gripper is configured for a release action
60 * </p>
61 *
62 * The config instance can be cast to {@link ReleaseActionConfig}.
63 */
65 };
66
69 virtual ~GripperNode();
70
71 /**
72 * This method returns the type of configuration. Cast this instance
73 * appropriately to have access to specific getters.
74 *
75 * @return The type of this config.
76 */
78
80
81 /**
82 * @return The gripper device used by this Gripper node
83 */
84 GripperDevicePtr getGripperDevice();
85
86 /**
87 * The setting type used to determine which type of setting this instance
88 * is.
89 */
91 {
92
93 /**
94 * <p>
95 * No selection has been made.
96 * </p>
97 */
99
100 /**
101 * <p>
102 * A payload (from the installation) is selected.
103 * </p>
104 *
105 * The setting instance can be cast to {@link PayloadSelection}.
106 */
108
109 /**
110 * <p>
111 * Custom payload parameters are specified.
112 * </p>
113 *
114 * The setting instance can be cast to {@link CustomPayloadParameters}.
115 */
117 };
118
119 /**
120 * This method returns the type of setting. Cast this instance appropriately
121 * to have access to specific getters.
122 *
123 * @return The type of this payload setting.
124 */
126
127private:
128 friend class DataSwitch;
130 void *d_{ nullptr };
131};
132} // namespace aubo_scope
133} // namespace arcs
134
135#endif
#define ARCS_ABI_EXPORT
#define ARCS_CLASS_FORWARD(C)
Macro that forward declares a class and defines the respective smartpointers through ARCS_DECLARE_PTR...
GripperDevicePtr getGripperDevice()
ConfigType
The configuration type used to determine which type of configuration this instance is.
SettingType getSettingType()
This method returns the type of setting.
SettingType
The setting type used to determine which type of setting this instance is.
ConfigType getConfigType()
This method returns the type of configuration.
GripperNode(GripperNode &&f)
void setConfigType(ConfigType type)