AuboStudio SDK  0.6.3
io_model.h
浏览该文件的文档.
1#ifndef AUBO_SCOPE_IO_MODEL_H
2#define AUBO_SCOPE_IO_MODEL_H
3
4#include <vector>
5#include <functional>
8
9namespace arcs {
10namespace aubo_scope {
12
13/**
14 * Provides methods that returns I/Os from the current robot installation.
15 *
16 */
18{
19public:
23
24 /**
25 *
26 * @return the collection of available I/Os, including Modbus, EuroMap67 and
27 * named General Purpose Registers.
28 */
29 std::vector<IoPtr> getAll();
30
31 IoPtr getIo(const std::string &name);
32
33 /**
34 *
35 * @param filter, see {@link IOFilterFactory}
36 * @return the collection of IOs that are accepted by the filter.
37 */
38 std::vector<IoPtr> getIos(std::function<bool(IoPtr)> filter);
39
40private:
41 friend class DataSwitch;
43 void *d_{ nullptr };
44};
45
46} // namespace aubo_scope
47} // namespace arcs
48#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...
Provides methods that returns I/Os from the current robot installation.
std::vector< IoPtr > getAll()
std::vector< IoPtr > getIos(std::function< bool(IoPtr)> filter)
IoPtr getIo(const std::string &name)