AuboCaps  0.6.0
device_manager.h
Go to the documentation of this file.
1 #ifndef AUBO_SCOPE_DEVICE_MANAGER_H
2 #define AUBO_SCOPE_DEVICE_MANAGER_H
3 
4 #include <vector>
6 
7 namespace arcs {
8 namespace aubo_scope {
9 ARCS_CLASS_FORWARD(DeviceManager);
10 
11 /**
12  * <p>
13  * Base interface for device managers.
14  * </p>
15  *
16  * A device manager provides functionality for a specific type of device
17  * supported by AuboScope. The device manager can provide functionality for,
18  * e.g. accessing all registered devices (of that type) and using a specific
19  * device in a program.
20  */
22 {
23 public:
24  virtual ~DeviceManager() = default;
25 
26  /**
27  * @return The list of grippers (gripper devices) available in AuboScope
28  */
29  virtual std::vector<GripperDevicePtr> getGrippers() = 0;
30 
31  /**
32  * @return The list of grippers (gripper devices) available in AuboScope
33  */
34  virtual std::vector<DevicePtr> getScrewDrivers() = 0;
35 };
36 } // namespace aubo_scope
37 } // namespace arcs
38 
39 #endif
ARCS_CLASS_FORWARD(GripForceCapability)
#define ARCS_ABI_EXPORT
Definition: class_forward.h:16