AuboStudio SDK 0.6.3

width_capability.h
浏览该文件的文档.
1 #ifndef AUBO_SCOPE_WIDTH_CAPABILITY_H
2 #define AUBO_SCOPE_WIDTH_CAPABILITY_H
3
4 #include <aubo_caps/class_forward.h>
5
6 namespace arcs {
7 namespace aubo_scope {
8 ARCS_CLASS_FORWARD(WidthCapability);
9
10 /**
11 * <p>
12 * This interface represents a registered width/position capability for a
13 * gripper which supports moving to a user configurable position (open/close to
14 * a configurable width).
15 * </p>
16 *
17 * Through this interface, it is possible to adjust the range and default values
18 * for the width after the capability has been registered. This is typically not
19 * applicable for most grippers, but can be relevant when the range depends on
20 * another custom gripper setting (which can be configured by the user).
21 */
22 class WidthCapability
23 {
24 public:
25 virtual ~WidthCapability() = default;
26
27 /**
28 * <p>
29 * Update the range and default values for the width supported by the
30 * gripper.
31 * </p>
32 *
33 * Updating the range could result in an already entered value in the
34 * configuration of a gripper program node being outside the range. This
35 * will make the given program node undefined, and force the end user to
36 * adjust the value to be valid again.
37 *
38 * @param minWidth minimum width supported by the gripper
39 * @param maxWidth maximum width supported by the gripper
40 * @param defaultGripWidth default value for the width for a grip
41 * action. This value is used for, e.g. performing a "default" grip
42 * action using the toolbar
43 * @param defaultReleaseWidth default value for the width for a release
44 * action. This value is used for, e.g. performing a "default" release
45 * action using the toolbar
46 * @param unit the unit for all specified values, not <code>null</code>
47 * @throws InvalidCapabilityRange if <code>minWidth} > <code>maxWidth</code>
48 * @throws InvalidCapabilityRange if <code>defaultGripWidth</code> or
49 * <code>defaultReleaseWidth</code> is outside the range defined by
50 * <code>minWidth</code> and <code>maxWidth</code>.
51 */
52 virtual void updateCapability(double minWidth, double maxWidth,
53 double defaultGripWidth,
54 double defaultReleaseWidth) = 0;
55 };
56 } // namespace aubo_scope
57 } // namespace arcs
58 #endif
class_forward.h
arcs::aubo_scope::WidthCapability
Definition: width_capability.h:23
arcs::aubo_scope::WidthCapability::~WidthCapability
virtual ~WidthCapability()=default
arcs::aubo_scope::WidthCapability::updateCapability
virtual void updateCapability(double minWidth, double maxWidth, double defaultGripWidth, double defaultReleaseWidth)=0
arcs::aubo_scope::ARCS_CLASS_FORWARD
ARCS_CLASS_FORWARD(GripForceCapability)
arcs
Definition: contribution_provider.h:7