Mech-Eye API
2.3.3
API reference documentation for Mech-Eye 3D Laser Profiler
Loading...
Searching...
No Matches
include
profiler
profiler
parameters
ScanParameters.h
1
#pragma once
2
#include "Parameter.h"
3
4
namespace
mmind {
5
6
namespace
eye {
7
8
namespace
trigger_settings {
9
10
class
DataAcquisitionTriggerSource
11
{
12
public
:
13
static
constexpr
const
char
* name =
"DataAcquisitionTriggerSource"
;
14
15
static
constexpr
const
char
* description =
16
"Select the source of the signals that trigger the scan of a single frame.\nIf you use "
17
"external input signal to trigger scanning, select \"External\".\nIf you need to trigger "
18
"scanning with software, select \"Software\"."
;
19
20
static
constexpr
Parameter::Type
type =
Parameter::Type::_Enum
;
21
22
enum struct
Value {
23
Software,
24
External,
25
};
26
};
27
28
class
LineScanTriggerSource
29
{
30
public
:
31
static
constexpr
const
char
* name =
"LineScanTriggerSource"
;
32
33
static
constexpr
const
char
* description =
34
"Select the source of the signals that trigger the scan of a single line.\nIf you use "
35
"encoder to trigger scanning, select \"Encoder\".\nIf you need to trigger scanning at a "
36
"fixed rate, select \"FixedRate\" and adjust \"SoftwareTriggerRate\"."
;
37
38
static
constexpr
Parameter::Type
type =
Parameter::Type::_Enum
;
39
40
enum struct
Value {
41
FixedRate,
42
Encoder,
43
};
44
};
45
46
class
SoftwareTriggerRate
47
{
48
public
:
49
static
constexpr
const
char
* name =
"SoftwareTriggerRate"
;
50
51
static
constexpr
const
char
* description =
52
"When \"LineScanTriggerSource\" is set to \"FixedRate\", set the fixed rate at which "
53
"the laser profiler is triggered to scan.\n\nThe maximum value of this parameter is the "
54
"current \"MaxScanRate\". \"SoftwareTriggerRate\" is unavailable when "
55
"\"LineScanTriggerSource\" is set to \"Encoder\"."
;
56
57
static
constexpr
Parameter::Type
type =
Parameter::Type::_Float
;
58
59
static
constexpr
const
char
* unit =
"Hz"
;
60
};
61
62
class
MaxScanRate
63
{
64
public
:
65
static
constexpr
const
char
* name =
"MaxScanRate"
;
66
67
static
constexpr
const
char
* description =
68
"The maximum scan rate that the laser profiler can reach. The maximum scan rate is "
69
"affected by the following parameters: \"ExposureTime\", \"ZDirectionRoi\", and "
70
"\"ExposureDelay\""
;
71
72
static
constexpr
Parameter::Type
type =
Parameter::Type::_Float
;
73
74
static
constexpr
const
char
* unit =
"Hz"
;
75
};
76
77
class
EncoderTriggerDirection
78
{
79
public
:
80
static
constexpr
const
char
* name =
"EncoderTriggerDirection"
;
81
82
static
constexpr
const
char
* description =
83
"Select the encoder motion direction that triggers scanning.\nChannelALeading: Scanning "
84
"is triggered when channel A is leading.\nChannelBLeading: Scanning is triggered when "
85
"channel B is leading. \nBoth: Scanning is triggered when either channel A or channel B is "
86
"leading."
;
87
88
static
constexpr
Parameter::Type
type =
Parameter::Type::_Enum
;
89
90
enum struct
Value {
91
ChannelALeading,
92
ChannelBLeading,
93
Both,
94
};
95
};
96
97
class
EncoderTriggerSignalCountingMode
98
{
99
public
:
100
static
constexpr
const
char
* name =
"EncoderTriggerSignalCountingMode"
;
101
102
static
constexpr
const
char
* description =
103
"Set the number of signals to be counted in an encoder cycle. Counted signals are used to "
104
"trigger scanning.\nNote: This parameter affects the adjustment of "
105
"\"EncoderTriggerInterval\".\n\nMultiple_1: counts 1 signal in an encoder "
106
"cycle.\nMULTIPLE_2: counts 2 signals in an encoder cycle.\nMULTIPLE_4: counts 3 signals "
107
"in an encoder cycle."
;
108
109
static
constexpr
Parameter::Type
type =
Parameter::Type::_Enum
;
110
111
enum struct
Value {
112
Multiple_1,
113
Multiple_2,
114
Multiple_4,
115
};
116
};
117
118
class
EncoderTriggerInterval
119
{
120
public
:
121
static
constexpr
const
char
* name =
"EncoderTriggerInterval"
;
122
123
static
constexpr
const
char
* description =
124
"Set the number of trigger signals needed for scanning one line."
;
125
126
static
constexpr
Parameter::Type
type =
Parameter::Type::_Int
;
127
};
128
}
// namespace trigger_settings
129
130
namespace
scan_settings {
131
132
class
ScanLineCount
133
{
134
public
:
135
static
constexpr
const
char
* name =
"ScanLineCount"
;
136
137
static
constexpr
const
char
* description =
138
"Set the number of profiles needed to generate one intensity image/depth map.\nMake sure "
139
"that the set value can cover one target object completely."
;
140
141
static
constexpr
Parameter::Type
type =
Parameter::Type::_Int
;
142
};
143
144
class
DataPointsPerProfile
145
{
146
public
:
147
static
constexpr
const
char
* name =
"DataPointsPerProfile"
;
148
149
static
constexpr
const
char
* description =
"The number of data points in a profile."
;
150
151
static
constexpr
Parameter::Type
type =
Parameter::Type::_Int
;
152
153
static
constexpr
const
char
* unit =
""
;
154
};
155
156
class
ExposureDelay
157
{
158
public
:
159
static
constexpr
const
char
* name =
"ExposureDelay"
;
160
161
static
constexpr
const
char
* description =
162
"Set the delay time between laser emission and start of exposure.\n\nLarger exposure delay "
163
"results in more stable brightness of the laser lines in the raw image, thus more stable "
164
"quality of the intensity image and depth map. However, the \"MaxScanRate\" will be "
165
"reduced."
;
166
167
static
constexpr
Parameter::Type
type =
Parameter::Type::_Int
;
168
169
static
constexpr
const
char
* unit =
"us"
;
170
};
171
172
class
CallbackRetrievalTimeout
173
{
174
public
:
175
static
constexpr
const
char
* name =
"CallbackRetrievalTimeout"
;
176
177
static
constexpr
const
char
* description =
178
"Set the timeout for retrieving profile data when using callback.\n If inputted value is "
179
"0 or -1, the timeout for retrieving profile data will be infinity"
;
180
181
static
constexpr
Parameter::Type
type =
Parameter::Type::_Int
;
182
183
static
constexpr
const
char
* unit =
"ms"
;
184
};
185
186
}
// namespace scan_settings
187
188
namespace
point_cloud_resolutions {
189
class
XAxisResolution
190
{
191
public
:
192
static
constexpr
const
char
* name =
"XAxisResolution"
;
193
194
static
constexpr
const
char
* description =
195
"Displays the resolution in the X direction, which is the distance between two neighboring "
196
"points along the direction of the laser line."
;
197
198
static
constexpr
Parameter::Type
type =
Parameter::Type::_Float
;
199
200
static
constexpr
const
char
* unit =
"um"
;
201
};
202
203
class
YResolution
204
{
205
public
:
206
static
constexpr
const
char
* name =
"YResolution"
;
207
208
static
constexpr
const
char
* description =
209
"The resolution in the Y direction, which is the distance between two neighboring points "
210
"along the travel direction of the target object."
;
211
212
static
constexpr
Parameter::Type
type =
Parameter::Type::_Float
;
213
214
static
constexpr
const
char
* unit =
"um"
;
215
};
216
}
// namespace point_cloud_resolutions
217
218
namespace
correction {
219
220
class
TiltCorrectionAngle
221
{
222
public
:
223
static
constexpr
const
char
* name =
"TiltCorrectionAngle"
;
224
225
static
constexpr
const
char
* description =
"Correct the tilt of the profile around the Y-axis."
;
226
227
static
constexpr
Parameter::Type
type =
Parameter::Type::_Float
;
228
229
static
constexpr
const
char
* unit =
"degree"
;
230
};
231
232
class
HeightCorrectionRatio
233
{
234
public
:
235
static
constexpr
const
char
* name =
"HeightCorrectionRatio"
;
236
237
static
constexpr
const
char
* description =
"Correct the Z values of the profile."
;
238
239
static
constexpr
Parameter::Type
type =
Parameter::Type::_Float
;
240
};
241
}
// namespace correction
242
243
}
// namespace eye
244
}
// namespace mmind
mmind::eye::Parameter::Type
Type
Describes the device parameter data types.
Definition
Parameter.h:30
mmind::eye::Parameter::_Int
@ _Int
Integer type.
Definition
Parameter.h:31
mmind::eye::Parameter::_Enum
@ _Enum
Enumeration type.
Definition
Parameter.h:34
mmind::eye::Parameter::_Float
@ _Float
Double type.
Definition
Parameter.h:32
mmind::eye::correction::HeightCorrectionRatio
Definition
ScanParameters.h:233
mmind::eye::correction::TiltCorrectionAngle
Definition
ScanParameters.h:221
mmind::eye::point_cloud_resolutions::XAxisResolution
Definition
ScanParameters.h:190
mmind::eye::point_cloud_resolutions::YResolution
Definition
ScanParameters.h:204
mmind::eye::scan_settings::CallbackRetrievalTimeout
Definition
ScanParameters.h:173
mmind::eye::scan_settings::DataPointsPerProfile
Definition
ScanParameters.h:145
mmind::eye::scan_settings::ExposureDelay
Definition
ScanParameters.h:157
mmind::eye::scan_settings::ScanLineCount
Definition
ScanParameters.h:133
mmind::eye::trigger_settings::DataAcquisitionTriggerSource
Definition
ScanParameters.h:11
mmind::eye::trigger_settings::EncoderTriggerDirection
Definition
ScanParameters.h:78
mmind::eye::trigger_settings::EncoderTriggerInterval
Definition
ScanParameters.h:119
mmind::eye::trigger_settings::EncoderTriggerSignalCountingMode
Definition
ScanParameters.h:98
mmind::eye::trigger_settings::LineScanTriggerSource
Definition
ScanParameters.h:29
mmind::eye::trigger_settings::MaxScanRate
Definition
ScanParameters.h:63
mmind::eye::trigger_settings::SoftwareTriggerRate
Definition
ScanParameters.h:47
Generated by
1.10.0