36#include "api_global.h"
374 friend class InternalInterfaces;
375 std::shared_ptr<ProfilerImpl> _d;
#define MMIND_API_EXPORT
Definition api_global.h:48
Represents a batch of profiles, which can be obtained by calling Profiler::retrieveBatchData()....
Definition ProfileData.h:74
Describes the event of profiler. Use ProfilerEvent::registerProfilerEventCallback to register an even...
Definition ProfilerEvent.h:49
Operates the laser profiler. Use Profiler::connect to connect an available laser profiler,...
Definition Profiler.h:100
ErrorStatus registerAcquisitionCallback(const Profiler::AcquisitionCallback &func, void *pUser)
Registers the callback function for data acquisition. There are two ways to retrieve profile data,...
std::function< void(const ProfileBatch &batch, void *pUser)> AcquisitionCallback
The type of callback function.
Definition Profiler.h:108
UserSet & currentUserSet()
Gets the UserSet currently in effect of the laser profiler. UserSet can access all available paramete...
ErrorStatus triggerSoftware()
Sends a software signal to trigger data acquisition. This method is used when no external signals are...
ErrorStatus disconnect()
Disconnects from the current laser profiler and releases the associated resources.
ErrorStatus retrieveBatchData(ProfileBatch &batch, int timeoutMs=4000) const
Retrieves a batch of the profiles. There are two ways to retrieve profile data, by polling or callbac...
static std::vector< ProfilerInfo > discoverProfilers(unsigned int timeoutMs=5000)
Discovers all available laser profilers and returns the list of information of all available laser pr...
ErrorStatus stopAcquisition()
Exits the laser profiler from the acquisition ready status to avoid accidental triggering of scanning...
Profiler(const Profiler &other) noexcept
Copy constructor.
Profiler & operator=(const Profiler &other) noexcept
Copy assignment.
ErrorStatus saveVirtualDeviceFile(const ProfileBatch &data, const std::string &fileName)
Saves the acquired ProfileBatch data, Parameter s, and ProfilerInfo in an MRAW format file that can b...
ErrorStatus getProfilerStatus(ProfilerStatus &status) const
Gets various statuses of the laser profiler.
ErrorStatus getAcquisitionStatus(AcquisitionStatus &status)
Gets the acquisition status.
ErrorStatus setHeartbeatInterval(unsigned int intervalMs)
Sets the time interval at which the client sends periodic heartbeat messages to the profiler side....
ErrorStatus setOutputForGPIO(OutputLineGPIO outputLine, OutputLevel value, int holdTimeMs=-1)
Sets controller GPIO output value.
UserSetManager & userSetManager()
Gets the UserSetManager of the laser profiler. UserSetManager provides various operations to manage a...
ErrorStatus connect(const std::string &ipAddress, unsigned int timeoutMs=5000)
Connects to a laser profiler via IP address.
ErrorStatus getProfilerInfo(ProfilerInfo &info) const
Gets the basic information of the laser profiler, such as model, serial number, firmware version,...
ErrorStatus connect(const ProfilerInfo &info, unsigned int timeoutMs=5000)
Connects to a laser profiler via ProfilerInfo.
ErrorStatus startAcquisition()
Enters the laser profiler into the acquisition ready status, where it can accept trigger signals for ...
Manages device user sets.
Definition UserSetManager.h:15
AcquisitionStatus
Describes the types of acquisition status.
Definition Profiler.h:68
@ AcquisitionActive
Profiler::startAcquisition called.
@ AcquisitionTriggerWait
Profiler::startAcquisition not called.
OutputLevel
Describes the types of output levels of GPIO.
Definition Profiler.h:64
OutputLineGPIO
Describes the types of output lines of GPIO.
Definition Profiler.h:50
Describes the types of errors.
Definition ErrorStatus.h:12
Describes the laser profiler information.
Definition ProfilerInfo.h:44
Describes the laser profiler's statuses.
Definition Profiler.h:90
ProfilerTemperature temperature
Definition Profiler.h:91
Describes the laser profiler temperatures.
Definition Profiler.h:81
float controllerCpuTemperature
The temperature (in °C) of the controller CPU.
Definition Profiler.h:82
float sensorCpuTemperature
The temperature (in °C) of the FPGA.
Definition Profiler.h:83