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 * \chinese
14 * <p>此接口表示一个程序节点,可用于编程所选夹爪设备的夹取和释放动作。</p>
15 * <p>此接口的实例可使用 GripperNodeFactory 接口构建。</p>
16 * \endchinese
17 * \english
18 * <p>This interface represents a program node which can be used for programming
19 * grip and release actions with a selected gripper device.</p>
20 * <p>An instance of this interface can be built using the {@link
21 * GripperNodeFactory} interface and is returned as a result when {@link
22 * GripperNodeFactory#createGripperNode(GripperDevice)} is called.</p>
23 * \endenglish
24 */
26{
27public:
28 /**
29 * The configuration type used to determine which type of configuration this
30 * instance is.
31 */
33 {
34
35 /**
36 * <p>
37 * A Gripper action (i.e. grip or release) has not been selected
38 * </p>
39 *
40 * The config instance can be cast to {@link UndefinedActionConfig}.
41 * This is only relevant if the Gripper node uses a multi-gripper
42 * device, i.e. a gripper device supporting the multi-gripper capability
43 * (see the
44 * {@link MultiGripperSupport} interface). The instance will provide
45 * access to the individual gripper selection.
46 */
48
49 /**
50 * <p>
51 * The gripper is configured for a grip action
52 * </p>
53 *
54 * The config instance can be cast to {@link GripActionConfig}.
55 */
57
58 /**
59 * <p>
60 * The gripper is configured for a release action
61 * </p>
62 *
63 * The config instance can be cast to {@link ReleaseActionConfig}.
64 */
66 };
67
70 virtual ~GripperNode();
71
72 /**
73 * \chinese
74 * 返回配置类型。适当转换此实例以访问特定的 getter。
75 * @return 此配置的类型
76 * \endchinese
77 * \english
78 * This method returns the type of configuration. Cast this instance
79 * appropriately to have access to specific getters.
80 * @return The type of this config.
81 * \endenglish
82 */
84
86
87 /**
88 * \chinese
89 * @return 此夹爪节点使用的夹爪设备
90 * \endchinese
91 * \english
92 * @return The gripper device used by this Gripper node
93 * \endenglish
94 */
95 GripperDevicePtr getGripperDevice();
96
97 /**
98 * The setting type used to determine which type of setting this instance
99 * is.
100 */
102 {
103
104 /**
105 * <p>
106 * No selection has been made.
107 * </p>
108 */
110
111 /**
112 * <p>
113 * A payload (from the installation) is selected.
114 * </p>
115 *
116 * The setting instance can be cast to {@link PayloadSelection}.
117 */
119
120 /**
121 * <p>
122 * Custom payload parameters are specified.
123 * </p>
124 *
125 * The setting instance can be cast to {@link CustomPayloadParameters}.
126 */
128 };
129
130 /**
131 * \chinese
132 * 返回设置类型。适当转换此实例以访问特定的 getter。
133 * @return 此负载设置的类型
134 * \endchinese
135 * \english
136 * This method returns the type of setting. Cast this instance appropriately
137 * to have access to specific getters.
138 * @return The type of this payload setting.
139 * \endenglish
140 */
142
143private:
144 friend class DataSwitch;
146 void *d_{ nullptr };
147};
148} // namespace aubo_scope
149} // namespace arcs
150
151#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()
\chinese
ConfigType
The configuration type used to determine which type of configuration this instance is.
SettingType getSettingType()
\chinese 返回设置类型。适当转换此实例以访问特定的 getter。
SettingType
The setting type used to determine which type of setting this instance is.
ConfigType getConfigType()
\chinese 返回配置类型。适当转换此实例以访问特定的 getter。
GripperNode(GripperNode &&f)
void setConfigType(ConfigType type)