Mech-Eye API 2.5.1
API reference documentation for Mech-Eye 3D Laser Profiler
Loading...
Searching...
No Matches
Namespaces | Data Structures | Enumerations | Functions | Variables
mmind::eye Namespace Reference

Namespaces

namespace  brightness_settings
 
namespace  correction
 
namespace  filters
 
namespace  point_cloud_resolutions
 
namespace  profile_alignment
 
namespace  profile_extraction
 
namespace  profile_processing
 
namespace  roi
 
namespace  scan_settings
 
namespace  transformation
 
namespace  trigger_settings
 

Data Structures

class  Array2D
 Represents a 2D container of data. More...
 
class  BatchArray
 Represents the data struct of the profile data. More...
 
class  BoolParameter
 Represents a _Bool-type device parameter. More...
 
struct  CalibResult
 Stores the calibration results and errors. More...
 
struct  CalibResultErrors
 Stores the calibration errors, including the reprojection errors of the primary and secondary laser profilers, as well as errors related to the dual-target planes and points. More...
 
struct  CalibResultParams
 Stores the motion direction and transformation matrix used during the calibration. More...
 
struct  DeviceInfo
 Defines the configuration for each laser profiler. More...
 
class  EnumParameter
 Represents an _Enum-type device parameter. More...
 
struct  ErrorStatus
 Describes the types of errors. More...
 
class  FloatArrayParameter
 Represents a _FloatArray-type device parameter. More...
 
class  FloatParameter
 Represents a _Float-type device parameter. More...
 
struct  FrameTransformation
 Defines the rigid body transformations from one reference frame to another, including the rotation matrix and translation vector. More...
 
struct  FusionResult
 The fusion results. More...
 
class  IntParameter
 Represents an _Int-type device parameter. More...
 
struct  MinorStitchResult
 Stores the stitching results of the secondary laser profiler, including the stitched image and transformation matrix. More...
 
struct  MinorStitchResultZParallel
 Stores the stitching results of the secondary laser profiler when the laser profilers are arranged in the Wide mode (i.e., side-by-side or in the reversed direction), including the stitched image and bias. More...
 
class  MultiProfilerErrorStatus
 
struct  MultiStitchParams
 Parameters required for stitching. More...
 
struct  MultiStitchResult
 Stores the stitching results. More...
 
struct  MultiStitchResultZParallel
 The stitching results when the laser profilers are arranged in the Wide mode (i.e., side-by-side or in the reversed direction) More...
 
class  Parameter
 Represents a parameter of the device. More...
 
struct  PointXYZ
 Represents a point in UntexturedPointCloud with the coordinate (x, y, z) information. More...
 
struct  PointXYZI
 Represents a point in ProfileBatch::TexturedPointCloud with the coordinate (x, y, z, intensity) information. More...
 
struct  Profile
 Describes a single profile. More...
 
class  ProfileBatch
 Represents a batch of profiles, which can be obtained by calling Profiler::retrieveBatchData(). It contains four elements of profile index, encoder value, intensity image, and depth map. More...
 
class  Profiler
 Operates the laser profiler. Use Profiler::connect to connect an available laser profiler, retrieve profile data, configure parameters and so on. More...
 
class  ProfilerCalibrationInterfaces
 
class  ProfilerEvent
 Describes the event of profiler. Use ProfilerEvent::registerProfilerEventCallback to register an event of interest. More...
 
struct  ProfilerImage
 Stores the intensity image and depth map acquired by the laser profiler. More...
 
struct  ProfilerInfo
 Describes the laser profiler information. More...
 
struct  ProfileROI
 Describes the region of interest (ROI) of a laser profiler. More...
 
class  ProfileRoiParameter
 Represents an _ProfileRoi-type device parameter. More...
 
struct  ProfilerStatus
 Describes the laser profiler's statuses. More...
 
struct  ProfilerTemperature
 Describes the laser profiler temperatures. More...
 
struct  Range
 Describes a value range. More...
 
class  RangeParameter
 Represents a _Range-type device parameter. More...
 
struct  ROI
 Describes a region of interest (ROI). More...
 
class  RoiArrayParameter
 Represents an _RoiArray-type device parameter. More...
 
class  RoiParameter
 Represents an _Roi-type device parameter. More...
 
struct  Size
 Describes a two-dimensional size with a width and a height. More...
 
struct  SizeF
 Describes a two-dimensional size with a width and a height using double-precision floating-point numbers. More...
 
struct  TargetPose
 Defines the relative position of the frustums of the calibration target. More...
 
struct  TargetSize
 Defines the dimensions of the frustums of the calibration target. More...
 
class  UserSet
 
class  UserSetManager
 Manages device user sets. More...
 
class  Version
 Describes the version information. More...
 
class  VirtualProfiler
 
class  VirtualUserSet
 

Enumerations

enum struct  CoordinateUnit { Millimeter , Meter }
 The unit of the coordinate data of the point cloud. More...
 
enum struct  FileFormat { PLY , PCD , CSV }
 
enum struct  IpAssignmentMethod { Unknown , DHCP = 4 , Static , LLA }
 Describes the assignment method of the device IP address. More...
 
enum struct  Platform {
  PLATFORM_A , PLATFORM_B , PLATFORM_C , PLATFORM_D ,
  PLATFORM_E , PLATFORM_F , PLATFORM_G , PLATFORM_H
}
 Describes the platform of the camera. More...
 
enum class  ProfilerCalibrationMode { Wide , Angle }
 Defines the calibration mode. More...
 
enum class  TargetRotateAxis { X , Y , NullAxis }
 Specifies the axis along which one laser profiler can rotate relative to another. More...
 
enum class  TargetTranslateAxis { X , Y , NullAxis }
 Specifies the axis along which one laser profiler can translate relative to another. More...
 
enum class  OutputLineGPIO {
  Line21 = 0 , Line22 , Line23 , Line24 ,
  Line25 , Line26 , Line27 , Line28
}
 Describes the types of output lines of GPIO. More...
 
enum class  OutputLevel { Low , High }
 Describes the types of output levels of GPIO. More...
 
enum class  AcquisitionStatus { AcquisitionTriggerWait , AcquisitionActive , FrameTriggerWait , FrameActive }
 Describes the types of acquisition status. More...
 

Functions

void showError (const mmind::eye::ErrorStatus &status, const std::string &successMessage={})
 Prints the error code and its description.
 
MMIND_API_EXPORT ErrorStatus exportLogs (const std::string &dstPath, bool coverIfExist)
 Exports the API logs.
 
MMIND_API_EXPORT FrameTransformation getTransformationParams (Profiler &profiler)
 Obtains the rigid body transformations of the custom reference frame of a laser profiler. The custom reference frame can be adjusted using the "Custom Reference Frame" tool in Mech-Eye Viewer. The rigid body transformations are automatically calculated after the settings in this tool have been applied. The "Custom Reference Frame" tool is recommended as the GUI allows you to adjust the reference frame easily and conveniently. Alternatively, you can use the rotation and translation methods in FrameTransformation to define the transformations manually.
 
MMIND_API_EXPORT ProfileBatch::UntexturedPointCloud transformPointCloud (const FrameTransformation &coordinateTransformation, const ProfileBatch::UntexturedPointCloud &originalPointCloud)
 Transforms the reference frame of a point cloud.
 
MMIND_API_EXPORT ProfileBatch::TexturedPointCloud transformTexturedPointCloud (const FrameTransformation &coordinateTransformation, const ProfileBatch::TexturedPointCloud &originalTexturedPointCloud)
 Transforms the reference frame of a textured point cloud.
 
MMIND_API_EXPORT std::string getApiVersionInfo ()
 Gets the version of Mech-Eye API.
 

Variables

constexpr int kTargetPlaneCount = 6
 
constexpr int kTargetPointCount = 8
 

Enumeration Type Documentation

◆ AcquisitionStatus

enum class AcquisitionStatus
strong

Describes the types of acquisition status.

Enumerator
AcquisitionTriggerWait 

Profiler::startAcquisition not called.

AcquisitionActive 

Profiler::startAcquisition called.

FrameTriggerWait 

Profiler::triggerSoftware not called or GPIO input frame start signal not received.

FrameActive 

Profiler::triggerSoftware called or GPIO input frame start signal received.

◆ CoordinateUnit

enum struct CoordinateUnit
strong

The unit of the coordinate data of the point cloud.

Enumerator
Millimeter 
Meter 

◆ FileFormat

enum struct FileFormat
strong
Enumerator
PLY 
PCD 
CSV 

◆ IpAssignmentMethod

enum struct IpAssignmentMethod
strong

Describes the assignment method of the device IP address.

Enumerator
Unknown 
DHCP 
Static 
LLA 

◆ OutputLevel

enum class OutputLevel
strong

Describes the types of output levels of GPIO.

Enumerator
Low 
High 

◆ OutputLineGPIO

enum class OutputLineGPIO
strong

Describes the types of output lines of GPIO.

Enumerator
Line21 
Line22 
Line23 
Line24 
Line25 
Line26 
Line27 
Line28 

◆ Platform

enum struct Platform
strong

Describes the platform of the camera.

Enumerator
PLATFORM_A 
PLATFORM_B 
PLATFORM_C 
PLATFORM_D 
PLATFORM_E 
PLATFORM_F 
PLATFORM_G 
PLATFORM_H 

◆ ProfilerCalibrationMode

enum class ProfilerCalibrationMode
strong

Defines the calibration mode.

Enumerator
Wide 

The laser profilers are arranged in the Wide mode, i.e., side-by-side or in the reversed direction.

Angle 

The laser profilers are arranged in the Angle mode, i.e., in the opposite direction or around a circle.

◆ TargetRotateAxis

enum class TargetRotateAxis
strong

Specifies the axis along which one laser profiler can rotate relative to another.

Enumerator
NullAxis 

◆ TargetTranslateAxis

enum class TargetTranslateAxis
strong

Specifies the axis along which one laser profiler can translate relative to another.

Enumerator
NullAxis 

Function Documentation

◆ exportLogs()

MMIND_API_EXPORT ErrorStatus exportLogs ( const std::string &  dstPath,
bool  coverIfExist 
)

Exports the API logs.

Parameters
[in]Thefolder path used to store the exported logs.
[in]Whetherto overwrite an existing file with the same name.
Returns
ErrorStatus::MMIND_STATUS_SUCCESS Log export successful.
ErrorStatus::MMIND_STATUS_FILE_IO_ERROR. Failed to save the logs.

◆ getApiVersionInfo()

MMIND_API_EXPORT std::string getApiVersionInfo ( )

Gets the version of Mech-Eye API.

◆ getTransformationParams()

MMIND_API_EXPORT FrameTransformation getTransformationParams ( Profiler profiler)

Obtains the rigid body transformations of the custom reference frame of a laser profiler. The custom reference frame can be adjusted using the "Custom Reference Frame" tool in Mech-Eye Viewer. The rigid body transformations are automatically calculated after the settings in this tool have been applied. The "Custom Reference Frame" tool is recommended as the GUI allows you to adjust the reference frame easily and conveniently. Alternatively, you can use the rotation and translation methods in FrameTransformation to define the transformations manually.

Parameters
[in]profilerThe profiler handle.
Returns
The rigid body transformations from the laser profiler reference frame to the custom reference frame. Refer to FrameTransformation for more details.

◆ showError()

void showError ( const mmind::eye::ErrorStatus status,
const std::string &  successMessage = {} 
)
inline

Prints the error code and its description.

◆ transformPointCloud()

MMIND_API_EXPORT ProfileBatch::UntexturedPointCloud transformPointCloud ( const FrameTransformation coordinateTransformation,
const ProfileBatch::UntexturedPointCloud originalPointCloud 
)

Transforms the reference frame of a point cloud.

Parameters
[in]coordinateTransformationThe rigid body transformations from the original reference frame to the new reference frame. Refer to FrameTransformation for more details.
[in]originalPointCloudThe ProfileBatch::UntexturedPointCloud whose reference frame is to be transformed.
Returns
The ProfileBatch::UntexturedPointCloud after reference frame transformation.

◆ transformTexturedPointCloud()

MMIND_API_EXPORT ProfileBatch::TexturedPointCloud transformTexturedPointCloud ( const FrameTransformation coordinateTransformation,
const ProfileBatch::TexturedPointCloud originalTexturedPointCloud 
)

Transforms the reference frame of a textured point cloud.

Parameters
[in]coordinateTransformationThe rigid body transformations from the original reference frame to the new reference frame. Refer to FrameTransformation for more details.
[in]originalTexturedPointCloudThe TexturedPointCloud whose reference frame is to be transformed.
Returns
The TexturedPointCloud after reference frame transformation.

Variable Documentation

◆ kTargetPlaneCount

constexpr int kTargetPlaneCount = 6
constexpr

◆ kTargetPointCount

constexpr int kTargetPointCount = 8
constexpr