AuboCaps
0.4.1
Main Page
Namespaces
Classes
Files
File List
File Members
include
aubo_caps
domain
io
io.h
Go to the documentation of this file.
1
#ifndef AUBO_SCOPE_IO_H
2
#define AUBO_SCOPE_IO_H
3
4
#include <string>
5
#include <
aubo_caps/class_forward.h
>
6
7
namespace
arcs
{
8
namespace
aubo_scope {
9
ARCS_CLASS_FORWARD
(Io);
10
11
/**
12
*
13
* This is the base interface representing all types of I/Os available in
14
* AuboScope.
15
*/
16
class
ARCS_ABI_EXPORT
Io
17
{
18
public
:
19
enum
IoType
:
int
20
{
21
DIGITAL
,
22
ANALOG
,
23
INTEGER
,
24
BOOLEAN
,
25
DOUBLE
26
};
27
enum
InterfaceType
:
int
28
{
29
STANDARD
,
30
TOOL
,
31
CONFIGURABLE
,
32
SAFETYIO
,
33
LINKIO
,
34
MODBUS
,
35
GENERAL_PURPOSE
,
36
};
37
enum
DigitalInputAction
:
int
38
{
39
INPUT_DEFAULT
,
40
GO_HOME
,
41
FREEDRIVE
,
42
START_PROGRAM
,
43
STOP_PROGRAM
,
44
PAUSE_PROGRAM
,
45
POPUP_DISMISS
,
46
};
47
enum
DigitalOutputAction
:
int
48
{
49
OUTPUT_DEFAULT
,
50
LOW_WHEN_NOT_RUNNING
,
51
HIGH_WHEN_NOT_RUNNING
,
52
HIGH_WHEN_RUNNING_LOW_WHEN_STOP
,
53
};
54
55
enum
AnalogInputAction
:
int
56
{
57
ANANLOG_INPUT_DEFAULT
,
58
};
59
60
enum
AnalogOutputAction
:
int
61
{
62
ANANLOG_OUTPUT_DEFAULT
,
63
ANANLOG_MIN_WHEN_NOT_RUNNING
,
64
ANANLOG_MAX_WHEN_NOT_RUNNING
,
65
ANANLOG_MAX_WHEN_RUNNING_MIN_WHEN_STOP
,
66
};
67
68
public
:
69
Io
(
Io
&f);
70
Io
(
Io
&&f);
71
virtual
~
Io
();
72
73
/**
74
*
75
* @return the user defined name of the IO in the currently selected
76
* installation.
77
*/
78
std::string getDisplayName()
const
;
79
80
/**
81
*
82
* @return the robot default name of the I/O.
83
*/
84
std::string getDefaultName()
const
;
85
86
/**
87
*
88
* @return get current reading of the I/O as a string.
89
*/
90
std::string getValueStr()
const
;
91
92
/**
93
*
94
* @return the I/O type.
95
*/
96
IoType
getType()
const
;
97
98
/**
99
*
100
* @return the interface type this I/O belongs to.
101
*/
102
InterfaceType
getInterfaceType()
const
;
103
104
/**
105
*
106
* @return <code>true</code> if I/O supports reading of values and
107
* <code>false</code> otherwise.
108
*/
109
bool
isInput()
const
;
110
111
/**
112
* Some I/Os, such as MODBUS I/Os and analog Tool inputs, are in some
113
* situations not present in AuboScope or available for use. This method can
114
* be used to determine if the I/O is available. <br>
115
*
116
* For more details about the specific situations where certain types of
117
* I/Os can be unresolved, see the relevant interfaces extending this base
118
* interface, e.g. {@link ModbusIO#isResolvable()}.
119
*
120
* @return <code>true</code>, if I/O can be resolved.
121
* <code>false</code> otherwise.
122
*/
123
bool
isResolvable()
const
;
124
125
protected
:
126
Io
();
127
128
private
:
129
friend
class
DataSwitch;
130
void
*d_{
nullptr
};
131
};
132
133
}
// namespace aubo_scope
134
}
// namespace arcs
135
136
#endif // AUBO_SCOPE_IO_H
arcs::aubo_scope::Io::ANALOG
Definition:
io.h:22
arcs::aubo_scope::Io::IoType
IoType
Definition:
io.h:19
arcs::aubo_scope::Io::TOOL
Definition:
io.h:30
arcs::aubo_scope::ARCS_CLASS_FORWARD
ARCS_CLASS_FORWARD(GripForceCapability)
arcs::aubo_scope::Io::STANDARD
Definition:
io.h:29
arcs::aubo_scope::Io::DigitalOutputAction
DigitalOutputAction
Definition:
io.h:47
arcs::aubo_scope::Io::ANANLOG_MAX_WHEN_RUNNING_MIN_WHEN_STOP
Definition:
io.h:65
arcs::aubo_scope::Io::LINKIO
Definition:
io.h:33
arcs::aubo_scope::Io
This is the base interface representing all types of I/Os available in AuboScope. ...
Definition:
io.h:16
arcs::aubo_scope::Io::DIGITAL
Definition:
io.h:21
arcs::aubo_scope::Io::InterfaceType
InterfaceType
Definition:
io.h:27
arcs::aubo_scope::Io::OUTPUT_DEFAULT
Definition:
io.h:49
class_forward.h
arcs::aubo_scope::Io::ANANLOG_MAX_WHEN_NOT_RUNNING
Definition:
io.h:64
arcs::aubo_scope::Io::ANANLOG_OUTPUT_DEFAULT
Definition:
io.h:62
arcs::aubo_scope::Io::GO_HOME
Definition:
io.h:40
arcs::aubo_scope::Io::CONFIGURABLE
Definition:
io.h:31
arcs::aubo_scope::Io::LOW_WHEN_NOT_RUNNING
Definition:
io.h:50
arcs::aubo_scope::Io::HIGH_WHEN_RUNNING_LOW_WHEN_STOP
Definition:
io.h:52
arcs::aubo_scope::Io::INTEGER
Definition:
io.h:23
arcs::aubo_scope::Io::BOOLEAN
Definition:
io.h:24
arcs::aubo_scope::Io::POPUP_DISMISS
Definition:
io.h:45
arcs::aubo_scope::Io::INPUT_DEFAULT
Definition:
io.h:39
arcs::aubo_scope::Io::STOP_PROGRAM
Definition:
io.h:43
arcs::aubo_scope::Io::ANANLOG_MIN_WHEN_NOT_RUNNING
Definition:
io.h:63
arcs::aubo_scope::Io::HIGH_WHEN_NOT_RUNNING
Definition:
io.h:51
arcs::aubo_scope::Io::FREEDRIVE
Definition:
io.h:41
arcs::aubo_scope::Io::ANANLOG_INPUT_DEFAULT
Definition:
io.h:57
ARCS_ABI_EXPORT
#define ARCS_ABI_EXPORT
Definition:
class_forward.h:16
arcs::aubo_scope::Io::SAFETYIO
Definition:
io.h:32
arcs::aubo_scope::Io::PAUSE_PROGRAM
Definition:
io.h:44
arcs::aubo_scope::Io::MODBUS
Definition:
io.h:34
arcs::aubo_scope::Io::GENERAL_PURPOSE
Definition:
io.h:35
arcs::aubo_scope::Io::START_PROGRAM
Definition:
io.h:42
arcs
Definition:
contribution_provider.h:7
arcs::aubo_scope::Io::AnalogInputAction
AnalogInputAction
Definition:
io.h:55
arcs::aubo_scope::Io::DigitalInputAction
DigitalInputAction
Definition:
io.h:37
arcs::aubo_scope::Io::AnalogOutputAction
AnalogOutputAction
Definition:
io.h:60
Generated by
1.8.11