AuboStudio SDK  0.6.3
set_payload_node.h
浏览该文件的文档.
1#ifndef AUBO_SCOPE_SET_PAYLOAD_NODE_H
2#define AUBO_SCOPE_SET_PAYLOAD_NODE_H
3
4#include <vector>
6
7namespace arcs {
8namespace aubo_scope {
10
12{
13public:
14 /**
15 * This base interface represents a configuration of the Set Payload program
16 * node (i.e. a {@link SetPayloadNode}
17 * instance).
18 */
20 {
21 /**
22 * <p>
23 * A payload (from the installation) is selected.
24 * </p>
25 *
26 * The config instance can be cast to {@link
27 * SelectionPayloadNodeConfig}.
28 */
30
31 /**
32 * <p>
33 * Custom payload parameters are specified.
34 * </p>
35 *
36 * The config instance can be cast to {@link
37 * CustomParametersPayloadNodeConfig}.
38 */
40 };
41
44 virtual ~SetPayloadNode();
45
46 /**
47 * This method returns the type of configuration. Cast this instance
48 * appropriately to have access to specific getters.
49 *
50 * @return The type of this config.
51 */
54
55 /**
56 * @return The total mass of the payload
57 */
58 double getMass();
59 void setMass(double mass);
60
61 /**
62 * Gets the payload's center of gravity (CoG), also referred to as center of
63 * mass. It is defined as the offset between the center of the tool output
64 * flange and the center of gravity of the attached payload.
65 *
66 * @return The center of gravity (CoG) of the payload relative to the center
67 * of the tool output flange
68 */
69 std::vector<double> getCenterOfGravity();
70 void setCenterOfGravity(const std::vector<double> &cog);
71
72private:
73 friend class DataSwitch;
75 void *d_{ nullptr };
76};
77
78} // namespace aubo_scope
79} // namespace arcs
80#endif // AUBO_SCOPE_SET_PAYLOAD_NODE_H
#define ARCS_ABI_EXPORT
#define ARCS_CLASS_FORWARD(C)
Macro that forward declares a class and defines the respective smartpointers through ARCS_DECLARE_PTR...
ConfigType getConfigType()
This method returns the type of configuration.
void setConfigType(ConfigType type)
ConfigType
This base interface represents a configuration of the Set Payload program node (i....
SetPayloadNode(SetPayloadNode &f)
SetPayloadNode(SetPayloadNode &&f)
void setCenterOfGravity(const std::vector< double > &cog)
std::vector< double > getCenterOfGravity()
Gets the payload's center of gravity (CoG), also referred to as center of mass.