10 MMIND_STATUS_SUCCESS = 0,
13 MMIND_STATUS_EMPTY_DEPTH_IMAGE = -1,
14 MMIND_STATUS_PLANE_SEGMENTATION_FAILURE = -2,
15 MMIND_STATUS_NONE_PARALLEL_PLANES = -3,
16 MMIND_STATUS_OVERMUCH_PARALLEL_PLANES = -4,
17 MMIND_STATUS_REORDER_PLANES_FAILURE = -5,
18 MMIND_STATUS_REPROJECT_ERROR_HIGH = -6,
19 MMIND_STATUS_INVALID_ROI = -7,
22 MMIND_STATUS_NON_STANDARD_RESOLUTION = -8,
23 MMIND_STATUS_CAMERA_MODEL_ERROR = -9,
24 MMIND_STATUS_INVALID_BOUNDARY_VALUE = -10,
25 MMIND_STATUS_FUSION_POINT_EXCEED_MEMORY = -11,
26 MMIND_STATUS_MULTI_STITCH_CAMERA_MODEL_EMPTY = -12,
27 MMIND_STATUS_MULTI_STITCH_PARAMS_EMPTY = -13,
28 MMIND_STATUS_PARAMS_ARE_NOT_CHECKED = -14,
29 MMIND_STATUS_POINT_CLOUDS_EMPTY = -15,
30 MMIND_STATUS_NO_IMAGE_AVAILABLE = -16,
31 MMIND_STATUS_DEPTH_INTENSITY_IMAGE_SIZE_UNMATCHED = -17,
32 MMIND_STATUS_DEPTH_IMAGE_TYPE_WRONG = -18,
33 MMIND_STATUS_INTENSITY_IMAGE_TYPE_WRONG = -19,
34 MMIND_STATUS_MAJOR_AND_MINOR_RESOLUTION_INCONSISTENCY = -20,
35 MMIND_STATUS_MULTI_STITCH_PARAMS_SIZE_INCONSISTENCY = -21,
36 MMIND_STATUS_MULTI_FUSION_PARAMS_SIZE_INCONSISTENCY = -22,
37 MMIND_STATUS_MINOR_INFO_UNMATCHED_IN_FUSION = -23,
38 MMIND_STATUS_EXTRACT_IMAGE_INFO_ERROR = -24,
39 MMIND_STATUS_EMPTY_BIASES_IN_FUSION = -25,
40 MMIND_STATUS_IMAGE_AND_MASK_SIZE_UNMATCHED_IN_FUSION = -26,
43 MMIND_STATUS_INVALID_PARAM = -27,
44 MMIND_STATUS_INVALID_POSITIVE_PARAM = -28,
45 MMIND_STATUS_INVALID_IMAGE_CONFIG_PAIR = -29,
46 MMIND_STATUS_INVALID_IMAGE_RESULT_PAIR = -30,
47 MMIND_STATUS_EMPTY_MULTISYSTEM_CONFIG = -31,
48 MMIND_STATUS_INVALID_ROTATION_MATRIX = -32,
49 MMIND_STATUS_INVALID_MOVE_DIR_VECTOR = -33,
50 MMIND_STATUS_INVALID_MOVE_DIR_VECTOR_Y = -34,
51 MMIND_STATUS_INVALID_TOP_LENGTH = -35,
52 MMIND_STATUS_INVALID_ROTATE_RADIUS_ANGLE_MODE = -36,
53 MMIND_STATUS_INVALID_ROTATE_RADIUS_WIDE_MODE = -37,
54 MMIND_STATUS_INVALID_ROTATE_ANGLE_ANGLE_MODE = -38,
55 MMIND_STATUS_INVALID_ROTATE_ANGLE_WIDE_MODE = -39,
56 MMIND_STATUS_INVALID_TRANSLATE_DISTANCE_ANGLE_MODE = -40,
57 MMIND_STATUS_INVALID_ROTATE_AXIS_ANGLE_MODE = -41,
58 MMIND_STATUS_INVALID_ROTATE_AXIS_WIDE_MODE = -42,
59 MMIND_STATUS_INVALID_TRANSLATE_AXIS_ANGLE_MODE = -43,
60 MMIND_STATUS_INVALID_TRANSLATE_AXIS_WIDE_MODE = -44,
61 MMIND_STATUS_INVALID_DOWNSAMPLE = -45,
62 MMIND_STATUS_INVALID_DEPTH_GROUPID = -46,
63 MMIND_STATUS_INVALID_CONFIG_GROUPID = -47,
64 MMIND_STATUS_INVALID_RESULT_GROUPID = -48,
67 MMIND_STATUS_INPUT_ERROR = -49,
70 MMIND_STATUS_CONFIG_LOAD_FAILURE = -50,
71 MMIND_STATUS_RESULT_LOAD_FAILURE = -51,
72 MMIND_STATUS_EVALS_LOAD_FAILURE = -52,
73 MMIND_STATUS_DEPTH_LOAD_FAILURE = -53,
76 MMIND_STATUS_INVALID_RESOLUTION = -54,
79 MMIND_STATUS_DATA_NOT_SUPPORTED_BY_CURRENT_CLASS = -55,
80 MMIND_STATUS_PLEASE_STITCH_FIRST = -56,
81 MMIND_STATUS_ONLY_POINT_CLOUD_WITHOUT_INTENSITY_AVAILABLE = -57,
82 MMIND_STATUS_VOXEL_GRID_OVERFLOW = -58,
83 MMIND_STATUS_REFINED_RELIABILITY_TOO_LOW = -59,
84 MMIND_STATUS_NO_POINT_MATCHED_IN_REGISTRATION_STEP = -60,
85 MMIND_STATUS_INITIALIZED_UNSUPPORTED_STITCHER_TYPE = -61,
86 MMIND_STATUS_TRANSFORM_REFINE_PARAMS_EMPTY = -62,
87 MMIND_STATUS_MULTIRING_REGISTRATION_UNSUPPORT = -63,
88 MMIND_STATUS_WRONG_KNN_POINT_NUMBER = -64,
89 MMIND_STATUS_STITCH_OPTION_NOT_SUPPORTED = -65,
90 MMIND_STATUS_PARAM_REFINE_OPTION_NOT_SUPPORTED = -66,
93 enum ErrorSource { System, MajorDevice, MinorDevice };
97 : errorCode(code), errorDescription(message)
101 const std::string& paraName =
"")
102 : errorSource(source), groupID(groupID)
104 setErrorCodeAndDescription(code, paraName);
109 return errorCode == MMIND_STATUS_SUCCESS ||
110 errorCode == MMIND_STATUS_NON_STANDARD_RESOLUTION;
113 void setErrorCodeAndDescription(
const ErrorCode& code)
115 this->errorCode = code;
116 this->errorDescription = errorInfoMap[code];
119 void setErrorCodeAndDescription(
const ErrorCode& code,
const std::string& paraName)
121 this->errorCode = code;
122 this->errorDescription = errorInfoMap[code] + paraName;
125 unsigned int groupID = 0;
126 ErrorSource errorSource = System;
127 ErrorCode errorCode = MMIND_STATUS_SUCCESS;
128 std::string errorDescription =
"Success";
132 std::string emptyImageDescription =
133 "Failed to access the specified image. Please check the file path and ensure the file "
135 std::string planeSegmentationFailureDescription =
136 "The number of sampling points in the point cloud available for plane segmentation is too "
137 "few. Please check the input depth maps and ensure that they only contain the six feature "
138 "planes of the calibration target.";
139 std::string noneParallelPlanesDescription =
140 "Plane 1 and 2 were not found. Please check the input depth maps and ensure that they only "
141 "contain the six feature planes of the calibration target.";
142 std::string overmuchParallelPlanesDescription =
143 "More than two parallel surfaces were identified. Please ensure the depth map only "
144 "contains the six feature planes of the calibration target. If two laser profilers share a "
145 "common field of view, laser light interference may cause this error; in that case, "
146 "the 'Trigger Delay' parameter should be set for one laser profiler.";
147 std::string reorderPlanesFailureDescription =
148 "Failed to order the feature planes. Please ensure that each lateral face forms a 45° "
149 "angle with both the upper and lower bases, and that the depth map contains only the six "
150 "feature planes of the calibration target.";
151 std::string reprojectErrorHighDescription =
152 "The reprojection error is excessive. Please verify the input parameters: (1) The depth "
153 "maps should only contain the six feature planes of the calibration target; (2) Ensure the "
154 "resolutionX/Y in deviceInfo (algorithm parameter) matches the actual specifications, and "
155 "confirm the targetSize parameters correspond with practical usage; (3) Excessive noise in "
156 "captured data may exist - appropriately increasing downsampleX/Y (downsampling intervals "
157 "along X/Y axes) might alleviate this issue, with recommended values in [10, 40]; (4) "
158 "Contaminants like dust, scratches, or reflective areas on the calibration target could "
159 "interfere with accuracy; (5) Verify the calibration target meets required mechanical "
160 "machining precision; (6) Check whether the camera contour mode parameters align with "
161 "recommended values.";
162 std::string invalidROIDescription =
163 "The ROI (Region of Interest) of the real-time collected image should match the ROI of the "
164 "device information. Please check if the ROI in depthImageInfo and dualProfilerConfig is "
167 std::string nonStandardResolutionDescription =
168 "In stitching, the user-input resolution in the X direction is an LNX non-standard "
169 "resolution. Please verify that the output matches expectations. This might occur because "
170 "the user rescaled the image before stitching. If errors or unexpected results arise "
171 "during stitching, first check whether the resolution input is correct.";
172 std::string cameraModelErrorDescription =
"Please input the model of the laser profiler.";
173 std::string invalidBoundaryValueDescription =
174 "In stitching, the image boundary detection during the resampling step returned invalid "
175 "values. Please check the input parameters, especially whether the RT matrix is incorrect.";
176 std::string fusionPointExceedMemoryDescription =
177 "During stitching, the point cloud fusion process required more computing space than the "
178 "available capacity.";
179 std::string multiStitchCameraModelEmptyDescription =
180 "In stitching, the 'camera model' parameter list is empty.";
181 std::string multiStitchParamsEmptyDescription =
182 "In stitching, the 'stitching parameters' list is empty.";
183 std::string multiStitchParamsSizeInconsistencyDescription =
184 "In stitching, the length of the 'stitching parameters' list does not match the length of "
185 "the 'camera model' parameter list.";
186 std::string multiFusionParamsSizeInconsistencyDescription =
187 "The length of fusionFlag or fusionParam variable input during fusion does not match the "
188 "length of the minor camera image.";
189 std::string stitchParamsAreNotCheckedDescription =
190 "Before calling the stitching function, the parameter check function must be called first.";
191 std::string pointCloudsEmptyDescription =
"The input point cloud data was empty.";
192 std::string depthImageTypeWrongDescription =
"The input image type was not CV_32F or CV_32F1.";
193 std::string resolutionInconsistencyDescription =
194 "During stitching, the X-axis and Y-axis resolutions must be identical, and the "
195 "resolutions for both axes should be the same across the primary and secondary laser "
197 std::string noImageAvailableDescription =
198 "The intensity image and depth map in the input data were unavailable.";
199 std::string depthAndIntensityImageSizeWrongDescription =
200 "During stitching, the dimensions of the depth map and intensity map from the same camera "
202 std::string intensityImageTypeWrongDescription =
203 "The input intensity image type was not CV_8UC1.";
204 std::string biasesEmptyDescription =
"In fusion, the 'image bias' parameter list is empty.";
205 std::string minorInfoSizeErrorDescription =
206 "In fusion, the lengths of the ‘image data’ list and the ‘image bias’ parameter list are "
208 std::string imageExtractInformationErrorDescription =
209 "In fusion, when extracting the fused image from the fused large image, the computed ROI "
210 "exceeds the original image size. The possible reason is incorrect image size or image "
211 "bias input into the function. This interface is not open to the public, so the risk of "
212 "this error occurring is minimal.";
213 std::string imageAndMaskSizeUnmatchedDescription =
214 "In fusion, the sizes of the valid point mask image and the original image do not match.";
215 std::string invalidResolutionDescription =
216 "The input resolution is invalid, please check if the input resolution is zero or close to "
220 std::string notSupportedDataDescription =
221 "The current method requires input of intensity image to run properly. Check if any "
222 "intensity information that has not been input.";
223 std::string stitchFirstDescription =
224 "There is currently no point cloud available, please perform stitching first.";
225 std::string onlyCloudWithoutIntensityAvailableDescription =
226 "Only point clouds without intensity information can be obtained. If you want to obtain "
227 "a point cloud with intensity, please input the intensity map during the stitching stage.";
228 std::string voxelGridOverflowDescription =
229 "The maximum number of voxel grids that can be created has been exceeded. Please check if "
230 "the resolution you entered is correct. If the cameras do not have overlapping fields of "
231 "view, you can switch to fast mode to avoid this problem.";
232 std::string refinedReliabilityTooLowDescription =
233 "The reliability of the optimization result is too low. Check: (1) whether the overlapping "
234 "area is too small; (2) whether the overlapping area has too few features.(3) whether "
235 "there are too few valid points scanned in the overlapping area.";
236 std::string noPointMatchedInRegistrationStepDescription =
237 "During the optimization registration process, no valid matching points were detected. "
238 "Check whether the error in the calibration process is too large or if the camera model is "
240 std::string initializedUnsupportedCloudTypeDescription =
241 "The point cloud stitching implementation class initializes an unsupported point cloud "
242 "type. Please check whether there are any missing enumerations during the initialization "
244 std::string transformRefineParamsEmptyDescription =
245 "The input parameters for pose matching are empty. Please enter the correct parameters and "
246 "call the refine step again.";
247 std::string multiRingRegistrationNotSupportedDescription =
248 "Registration is not currently supported when there are multiple rings in the path.";
249 std::string wrongKnnPointNumberDescription =
250 "The number of nearest neighbor points number used in the normal vector estimation is less "
251 "than or equal to zero. Please check this parameter.";
252 std::string stitchOptionNotSupportedDescription =
"The cloud stitch option is not supported.";
253 std::string paramRefineOptionNotSupportedDescription =
254 "The parameter refine option is not supported.";
257 std::string invalidParamDescription =
258 "The input parameters were empty or contain invalid values such as infinite or Nan.";
259 std::string invalidPositiveParamDescription =
260 "Input parameters should be positive finite values.";
261 std::string invalidImageConfigPairDescription =
262 "The lengths of minorImageInfos and multiProfilerConfig input parameters are inconsistent; "
263 "please check the relevant inputs.";
264 std::string invalidImageResultPairDescription =
265 "The lengths of minorImageInfos and multiProfilerResult input parameters are inconsistent; "
266 "please check the relevant inputs.";
267 std::string emptyMultiProfilerConfigDescription =
268 "The multiProfilerConfig input parameter is empty; please check the relevant inputs.";
269 std::string invalidRotateMatrixDescription =
"The rotation matrix is not an orthogonal matrix.";
270 std::string invalidMoveDirVecDescription =
"The motion direction vector is not a unit vector.";
271 std::string invalidMoveDirVecYDescription =
272 "The Y component of the motion direction vector should be a non-negative number.";
273 std::string invalidTopLengthDescription =
274 "The upper base length of the frustum should be smaller than the lower base length.";
275 std::string invalidRotateRadiusInAngleModeDescription =
276 "In the Angled mode, the value of rotateRadius should be greater than half of the frustum "
278 std::string invalidRotateRadiusInWideModeDescription =
279 "In the Wide mode, the value of rotateRadius should be 0.";
280 std::string invalidRotateAngleInAngleModeDescription =
281 "In the Angled mode, when one frustum is rotated relative to another along the Y axis, the "
282 "included angle between frustum axes (rotateAngleInDegree) should be within [-180, 180]; "
283 "when one frustum is rotated relative to another along the X axis, the included angle "
284 "between frustum axes (rotateAngleInDegree) should be within (-90, 90).";
285 std::string invalidRotateAngleInWideModeDescription =
286 "In the Wide mode, the rotation angle between two frustums (rotateAngleInDegree) should be "
288 std::string invalidTranslateDistanceInAngleModeDescription =
289 "In the Angled mode, the translate distance between two frustums (translateDistance) "
291 std::string invalidRotateAxisInAngleModeDescription =
292 "In the Angled mode, the axis along which one frustum is rotated relative to another "
293 "(targetRotateAxis) should not be NullAxis.";
294 std::string invalidRotateAxisInWideModeDescription =
295 "In the Wide mode, the axis along which one frustum is rotated relative to another "
296 "(targetRotateAxis) should be NullAxis.";
297 std::string invalidTranslateAxisInAngleModeDescription =
298 "In the Angled mode, the axis along which one frustum is translated relative to another "
299 "(targetTranslateAxis) should be NullAxis.";
300 std::string invalidTranslateAxisInWideModeDescription =
301 "In the Wide mode, the axis along which one frustum is translated relative to another "
302 "(targetTranslateAxis) should not be NullAxis.";
303 std::string invalidDownSampleDescription =
304 "The input downsampling parameters (downsampleX and downsampleY) should be integers within "
305 "the range [1, 40].";
306 std::string invalidDepthGroupIDDescription =
307 "The groupID of members in the xxx data structure should match the index of their "
309 std::string invalidConfigGroupIDDescription =
310 "The groupID of each dualProfilerConfig in multiProfilerConfig should correspond to its "
311 "index in the vector (a data structure). For example, if there are three members in "
312 "multiProfilerConfig named dualProfilerConfig0 to dualProfilerConfig2, the groupID of "
313 "dualProfilerConfig0 should be 0, dualProfilerConfig1 should be 1, and dualProfilerConfig2 "
315 std::string invalidResultGroupIDDescription =
316 "The groupID of each dualProfilerResult in multiProfilerResults should correspond to its "
317 "index in the vector (a data structure). For example, if there are three members in "
318 "multiProfilerResults named dualProfilerResult0 to dualProfilerResult2, the groupID of "
319 "dualProfilerResult0 should be 0, dualProfilerResult1 should be 1, and dualProfilerResult2 "
322 std::unordered_map<ErrorCode, std::string> errorInfoMap = {
324 {MMIND_STATUS_EMPTY_DEPTH_IMAGE, emptyImageDescription},
325 {MMIND_STATUS_PLANE_SEGMENTATION_FAILURE, planeSegmentationFailureDescription},
326 {MMIND_STATUS_NONE_PARALLEL_PLANES, noneParallelPlanesDescription},
327 {MMIND_STATUS_OVERMUCH_PARALLEL_PLANES, overmuchParallelPlanesDescription},
328 {MMIND_STATUS_REORDER_PLANES_FAILURE, reorderPlanesFailureDescription},
329 {MMIND_STATUS_REPROJECT_ERROR_HIGH, reprojectErrorHighDescription},
330 {MMIND_STATUS_INVALID_ROI, invalidROIDescription},
332 {MMIND_STATUS_NON_STANDARD_RESOLUTION, nonStandardResolutionDescription},
333 {MMIND_STATUS_CAMERA_MODEL_ERROR, cameraModelErrorDescription},
334 {MMIND_STATUS_INVALID_BOUNDARY_VALUE, invalidBoundaryValueDescription},
335 {MMIND_STATUS_FUSION_POINT_EXCEED_MEMORY, fusionPointExceedMemoryDescription},
336 {MMIND_STATUS_MULTI_STITCH_CAMERA_MODEL_EMPTY, multiStitchCameraModelEmptyDescription},
337 {MMIND_STATUS_MULTI_STITCH_PARAMS_EMPTY, multiStitchParamsEmptyDescription},
338 {MMIND_STATUS_MULTI_STITCH_PARAMS_SIZE_INCONSISTENCY,
339 multiStitchParamsSizeInconsistencyDescription},
340 {MMIND_STATUS_PARAMS_ARE_NOT_CHECKED, stitchParamsAreNotCheckedDescription},
341 {MMIND_STATUS_POINT_CLOUDS_EMPTY, pointCloudsEmptyDescription},
342 {MMIND_STATUS_DEPTH_IMAGE_TYPE_WRONG, depthImageTypeWrongDescription},
343 {MMIND_STATUS_NO_IMAGE_AVAILABLE, noImageAvailableDescription},
344 {MMIND_STATUS_DEPTH_INTENSITY_IMAGE_SIZE_UNMATCHED,
345 depthAndIntensityImageSizeWrongDescription},
346 {MMIND_STATUS_INTENSITY_IMAGE_TYPE_WRONG, intensityImageTypeWrongDescription},
347 {MMIND_STATUS_MAJOR_AND_MINOR_RESOLUTION_INCONSISTENCY, resolutionInconsistencyDescription},
348 {MMIND_STATUS_EMPTY_BIASES_IN_FUSION, biasesEmptyDescription},
349 {MMIND_STATUS_MINOR_INFO_UNMATCHED_IN_FUSION, minorInfoSizeErrorDescription},
350 {MMIND_STATUS_EXTRACT_IMAGE_INFO_ERROR, imageExtractInformationErrorDescription},
351 {MMIND_STATUS_IMAGE_AND_MASK_SIZE_UNMATCHED_IN_FUSION,
352 imageAndMaskSizeUnmatchedDescription},
353 {MMIND_STATUS_MULTI_FUSION_PARAMS_SIZE_INCONSISTENCY,
354 multiFusionParamsSizeInconsistencyDescription},
355 {MMIND_STATUS_INVALID_RESOLUTION, invalidResolutionDescription},
356 {MMIND_STATUS_TRANSFORM_REFINE_PARAMS_EMPTY, transformRefineParamsEmptyDescription},
359 {MMIND_STATUS_DATA_NOT_SUPPORTED_BY_CURRENT_CLASS, notSupportedDataDescription},
360 {MMIND_STATUS_PLEASE_STITCH_FIRST, stitchFirstDescription},
361 {MMIND_STATUS_ONLY_POINT_CLOUD_WITHOUT_INTENSITY_AVAILABLE,
362 onlyCloudWithoutIntensityAvailableDescription},
363 {MMIND_STATUS_VOXEL_GRID_OVERFLOW, voxelGridOverflowDescription},
364 {MMIND_STATUS_REFINED_RELIABILITY_TOO_LOW, refinedReliabilityTooLowDescription},
365 {MMIND_STATUS_NO_POINT_MATCHED_IN_REGISTRATION_STEP,
366 noPointMatchedInRegistrationStepDescription},
367 {MMIND_STATUS_INITIALIZED_UNSUPPORTED_STITCHER_TYPE,
368 initializedUnsupportedCloudTypeDescription},
369 {MMIND_STATUS_MULTIRING_REGISTRATION_UNSUPPORT,
370 multiRingRegistrationNotSupportedDescription},
371 {MMIND_STATUS_WRONG_KNN_POINT_NUMBER, wrongKnnPointNumberDescription},
372 {MMIND_STATUS_STITCH_OPTION_NOT_SUPPORTED, stitchOptionNotSupportedDescription},
373 {MMIND_STATUS_PARAM_REFINE_OPTION_NOT_SUPPORTED, paramRefineOptionNotSupportedDescription},
376 {MMIND_STATUS_INVALID_PARAM, invalidParamDescription},
377 {MMIND_STATUS_INVALID_POSITIVE_PARAM, invalidPositiveParamDescription},
378 {MMIND_STATUS_INVALID_IMAGE_CONFIG_PAIR, invalidImageConfigPairDescription},
379 {MMIND_STATUS_INVALID_IMAGE_RESULT_PAIR, invalidImageResultPairDescription},
380 {MMIND_STATUS_EMPTY_MULTISYSTEM_CONFIG, emptyMultiProfilerConfigDescription},
381 {MMIND_STATUS_INVALID_ROTATION_MATRIX, invalidRotateMatrixDescription},
382 {MMIND_STATUS_INVALID_MOVE_DIR_VECTOR, invalidMoveDirVecDescription},
383 {MMIND_STATUS_INVALID_MOVE_DIR_VECTOR_Y, invalidMoveDirVecYDescription},
384 {MMIND_STATUS_INVALID_TOP_LENGTH, invalidTopLengthDescription},
385 {MMIND_STATUS_INVALID_ROTATE_RADIUS_ANGLE_MODE, invalidRotateRadiusInAngleModeDescription},
386 {MMIND_STATUS_INVALID_ROTATE_RADIUS_WIDE_MODE, invalidRotateRadiusInWideModeDescription},
387 {MMIND_STATUS_INVALID_ROTATE_ANGLE_ANGLE_MODE, invalidRotateAngleInAngleModeDescription},
388 {MMIND_STATUS_INVALID_ROTATE_ANGLE_WIDE_MODE, invalidRotateAngleInWideModeDescription},
389 {MMIND_STATUS_INVALID_TRANSLATE_DISTANCE_ANGLE_MODE,
390 invalidTranslateDistanceInAngleModeDescription},
391 {MMIND_STATUS_INVALID_ROTATE_AXIS_ANGLE_MODE, invalidRotateAxisInAngleModeDescription},
392 {MMIND_STATUS_INVALID_ROTATE_AXIS_WIDE_MODE, invalidRotateAxisInWideModeDescription},
393 {MMIND_STATUS_INVALID_TRANSLATE_AXIS_ANGLE_MODE,
394 invalidTranslateAxisInAngleModeDescription},
395 {MMIND_STATUS_INVALID_TRANSLATE_AXIS_WIDE_MODE, invalidTranslateAxisInWideModeDescription},
396 {MMIND_STATUS_INVALID_DOWNSAMPLE, invalidDownSampleDescription},
397 {MMIND_STATUS_INVALID_DEPTH_GROUPID, invalidDepthGroupIDDescription},
398 {MMIND_STATUS_INVALID_CONFIG_GROUPID, invalidConfigGroupIDDescription},
399 {MMIND_STATUS_INVALID_RESULT_GROUPID, invalidResultGroupIDDescription},