90 virtual void connect(
unsigned long serialNumber) = 0;
354 const std::
string& opticsText,
355 float temperatureLowerLimit,
356 float temperatureUpperLimit,
Contains an interface representing an alarm channel.
Contains a class encapsulating important information about devices.
Contains a class encapsulating the on device network configuration.
Contains an enum representing the different types of Optris thermal cameras.
Contains the exceptions raised by the SDK.
Contains the base class for all clients observing an IRImager.
Contains a class holding the SDK settings found in the configuration file.
Contains an interface representing a measurement field.
Contains the interface definition for classes specifying valid sets of configuration settings.
Contains the interface that defines how to interact with process interfaces.
Contains a class holding the individual radiation parameters.
Contains enum and utility functions for (R)adial (D)istortion (C)orrection modes.
Contains an enum representing the different temperature precisions and constants denoting invalid tem...
Encapsulates the status of an alarm channel.
Definition AlarmChannelStatus.h:26
Interface representing an alarm channel.
Definition AlarmChannel.h:25
Holds important information about a device.
Definition DeviceInfo.h:33
Encapsulates the on device network configuration.
Definition DeviceNetworkConfig.h:22
Base class for clients observing an IRImager.
Definition IRImagerClient.h:34
virtual DeviceType getDeviceType() const =0
Returns the type of device the IRImager is connected to.
virtual void setTemperatureHighPrecisionEnabled(bool enabled)=0
Dis-/Enables high precision temperature measurements.
virtual ProcessInterface & getPif()=0
Grants access to the process interface.
virtual bool isRunning() const noexcept=0
Returns whether the processing loop is currently running.
virtual bool isTemperatureHighPrecisionEnabled() const noexcept=0
Returns whether high precision temperature measurements are enabled.
virtual void setFlagForecastEnabled(bool enable)=0
Set the shutter flag forecast en-/disabled.
IRImager(const IRImager &)=delete
No copy constructor.
virtual void setReferenceTemperature(float referenceTemperature, float measuredTemperature, float ambientTemperature=INVALID_TEMPERATURE)=0
Sets a reference temperature to a known reference source inside the view of the device to improve mea...
virtual void setSubsampledFramerate(float subsampledFramerate)=0
Sets the subsampled framerate.
virtual void setRdcMode(RdcMode rdcMode)=0
Sets the mode of radial distortion correction (RDC).
virtual unsigned long getSerialNumber() const =0
Returns the serial number of the connected device.
virtual bool isSoSCorrectionEnabled() const noexcept=0
Checks if the Size of Source Correction is enabled.
virtual void setRadiationParameters(const RadiationParameters &radiation)=0
Sets the radiation parameters (emissivity, transmissivity and ambient temperature).
virtual float getSubsampledFramerate() const noexcept=0
Returns the subsampled framerate.
virtual bool isFlagOpen() const noexcept=0
Returns whether the shutter flag is open.
virtual bool isAutoFlagEnabled() const noexcept=0
Returns whether flag cycles are triggered automatically.
virtual DeviceNetworkConfig getDeviceNetworkConfig()=0
Returns the network configuration of the device.
virtual void connect(unsigned long serialNumber)=0
Connects to the device with the given serial number.
virtual IpAddress getIpAddress() const noexcept=0
Returns the IP address of the connected device.
virtual void removeAlarmChannel(const AlarmChannel::ConstShared &channel)=0
Removes the given alarm channel.
virtual void configureOperationInfo(int interval, int x, int y)=0
Configure the tracing of the operation modules that comprise the processing pipeline.
virtual float getTemperatureFlag() const noexcept=0
Returns the temperature of the shutter flag in °C.
IRImager & operator=(const IRImager &)=delete
No copy assignment.
virtual int getAlarmChannelCount() const noexcept=0
Returns the count of all current alarm channels.
IRImager & operator=(IRImager &&)=delete
No move assignment.
virtual RadiationParameterSource getEmissivitySource() const noexcept=0
Returns the source that currently defines the emissivity for the thermal frame.
virtual RdcMode getRdcMode() const =0
Returns the mode of radial distortion correction (RDC).
virtual void removeMeasurementField(const MeasurementField::ConstShared &field)=0
Removes the given measurement field.
virtual bool runAsync()=0
Runs the processing loop continuously in a dedicated thread.
virtual int getMeasurementFieldCount() const noexcept=0
Returns the number of active measurement fields.
virtual MeasurementField::ConstShared addMeasurementField(const MeasurementFieldConfig &config)=0
Adds a measurement field that is processed for every new thermal frame.
virtual IRImagerConfig getConfig()=0
Returns the current configuration.
virtual bool isFlagForecastEnabled() const noexcept=0
Returns whether the shutter flag forecast is en-/disabled.
virtual std::vector< AlarmChannelStatus > getAlarmChannelStatuses() const noexcept=0
Returns the status of all current alarm channels.
virtual std::vector< AlarmChannel::ConstShared > getAlarmChannels() const noexcept=0
Returns all current alarm channels.
virtual OperationMode::ConstShared getActiveOperationMode()=0
Returns the active operation mode for the currently connected device.
virtual unsigned int getHardwareRevision() const =0
Returns the hardware revision of the connected device.
virtual void setFocusMotorPosition(float position)=0
Sets the position of the focus motor.
virtual Port getPort() const noexcept=0
Returns the number of the port on which the device data is received.
virtual bool isConnected() const noexcept=0
Returns whether a connection is established.
virtual ProcessingOutputConfig getProcessingOutputs() const noexcept=0
Returns which outputs are currently configured to be computed and provided by the SDK.
virtual bool run()=0
Runs the processing loop continuously.
virtual void setProcessingMaxResultPoolSize(unsigned int maxPoolSize)=0
Sets the maximum number of processing results that are pooled for reuse to avoid unnecessary allocati...
virtual void setChipHeatingMode(ChipHeatingMode mode, float temperature=40.F)=0
Sets the provide mode for heating the sensor chip.
virtual void setActiveOperationMode(const OperationMode::ConstShared &mode)=0
Sets the active operation mode for the currently connected device.
virtual bool removeClient(IRImagerClient *client) noexcept=0
Removes the given observer/client.
virtual void updateAlarmChannel(const AlarmChannel::ConstShared &channel, const AlarmChannelConfig &config)=0
Updates the configuration of an alarm channel.
virtual void stopRunning()=0
Stops the continuously running processing loop.
virtual void setTemperatureRangeExtensionEnabled(bool enabled)=0
Die-/Enables temperature range extension.
virtual void setSoSCorrectionEnabled(bool enable)=0
Enables or disables the Size of Source Correction.
virtual void setProcessingOutputs(const ProcessingOutputConfig &outputs)=0
Sets which outputs should be computed and provided by the SDK.
virtual unsigned int getFirmwareRevision() const =0
Returns the firmware revision of the connected device.
virtual float getTemperatureBox() const noexcept=0
Returns the temperature of the device housing in °C.
virtual int getWidth() const noexcept=0
Returns the width in pixels of the thermal frame.
virtual std::vector< MeasurementField::ConstShared > getMeasurementFields() const noexcept=0
Returns all active measurement fields ordered by their index.
virtual int getHeight() const noexcept=0
Returns the height in pixels of thermal frame.
virtual void disconnect() noexcept=0
Disconnects from the current device.
virtual float getFlagMinInterval() const noexcept=0
Returns the minimum flag interval in seconds.
IRImager()=default
Constructor.
virtual void saveConfig()=0
Saves the current configuration.
virtual void connect(const DeviceInfo &deviceInfo)=0
Connects to the device with the given device information.
virtual RadiationParameterSource getAmbientTemperatureSource() const noexcept=0
Returns the source that currently defines the ambient temperature for the thermal frame.
virtual void swapMeasurementFieldIndices(std::uint32_t index1, std::uint32_t index2)=0
Swaps the indices of two measurement fields.
virtual float getFocusMotorPosition() const =0
Returns the position of the focus motor.
virtual std::vector< OperationMode::ConstShared > getOperationModes()=0
Returns the operation modes for the currently connected device.
virtual ChipHeatingMode getChipHeatingMode() const noexcept=0
Returns the current sensor chip heating mode.
virtual bool isTemperatureRangeExtensionEnabled() const noexcept=0
Returns whether the temperature ranges are being extended.
virtual float getChipHeatingTemperature() const noexcept=0
Returns the the target temperature in °C for the sensor chip heating.
virtual bool skipStartupCalibration() noexcept=0
Skips an active startup (re)calibration that is performed every time the processing loop is run.
virtual unsigned int getProcessingMaxResultPoolSize() const noexcept=0
Returns the maximum number of processing results that are pooled for reuse to avoid unnecessary alloc...
virtual float getTemperatureChip() const noexcept=0
Returns the temperature of the sensor chip.
virtual void interruptFailSafe(bool active, const std::string &reason)=0
Interrups the all clear fail safe signal.
virtual bool addClient(IRImagerClient *client) noexcept=0
Adds an observer/client that will be updated when new data arrives.
virtual void setAutoFlagEnabled(bool enable)=0
Sets the automatic triggering of flag cycles en-/disabled.
virtual ~IRImager()=default
Destructor.
virtual void connect(IRImagerConfig config)=0
Connects to the device with the given configuration.
virtual RadiationParameters getRadiationParameters() const noexcept=0
Returns the set/configured radiation parameters.
IRImager(IRImager &&)=delete
No move constructor.
virtual void forceFlagEvent(float time=0.F)=0
Force a flag cycle manually.
virtual std::string getConnectionInterface() const noexcept=0
Returns the name of the connection interface used to communication with the device.
virtual RadiationParameterSource getTransmissivitySource() const noexcept=0
Returns the source that currently defines the transmissivity for the thermal frame.
virtual AlarmChannel::ConstShared addAlarmChannel(const AlarmChannelConfig &config)=0
Adds a new alarm channel.
virtual float getFlagMaxInterval() const noexcept=0
Returns the maximum flag interval in seconds.
virtual void updateMeasurementField(const MeasurementField::ConstShared &field, const MeasurementFieldConfig &config)=0
Updated the configuration of a measurement field.
virtual void resetReferenceTemperature()=0
Resets a previously set reference temperature.
virtual void setFlagInterval(float minInterval, float maxInterval)=0
Sets the minimum and maximum flag intervals in seconds.
virtual bool setDeviceNetworkConfig(const DeviceNetworkConfig &networkConfig)=0
Sets the network configuration of the device.
Encapsulates an IP v4 address.
Definition IpAddress.h:33
Measurement field or region of interest (ROI) within the thermal frame.
Definition MeasurementField.h:24
Defines the interface for classes realizing operation modes.
Definition OperationMode.h:34
Encapsulates a network port number.
Definition Port.h:34
Interface defining the API for interacting with process interfaces (PIFs).
Definition ProcessInterface.h:54
Main SDK namespace.
Definition AlarmChannel.h:21
RadiationParameterSource
Represents the different sources of radiation parameters.
Definition RadiationParameters.h:27
static constexpr float INVALID_TEMPERATURE
All temperatures in °C equal or lower are invalid.
Definition TemperaturePrecision.h:24
RdcMode
Represents the different modes for radial distortion correction.
Definition RdcMode.h:25
ChipHeatingMode
Represents the available chip heating modes.
Definition ChipHeatingMode.h:25
DeviceType
Represents the different types of Optris thermal cameras.
Definition DeviceType.h:24
Holds the configuration of an alarm channel.
Definition AlarmChannelConfig.h:30
Holds the SDK settings found in the configuration file.
Definition IRImagerConfig.h:33
Encapsulates the configuration of a measurement field.
Definition MeasurementFieldConfig.h:70
Specifies which outputs should be computed and provided by the SDK.
Definition ProcessingOutputConfig.h:19
Holds the radiation parameters for a frame or a measurement field.
Definition RadiationParameters.h:35