Thermal Camera SDK 11.3.0
SDK for Optris Thermal Cameras
Loading...
Searching...
No Matches
PifProperties.h
Go to the documentation of this file.
1// Copyright (c) 2008-2026 Optris GmbH & Co. KG
2
10
11#pragma once
12
13#include <ostream>
14#include <string>
15
16#include "otcsdk/Api.h"
17#include "otcsdk/Exceptions.h"
18
19
20namespace optris
21{
22
23// Device
37
38
39// Modes
49
51enum class PifDiMode
52{
55};
56
69
80
82enum class PifFsMode
83{
86};
87
95
98{
100 int device = 0;
102 int pin = 0;
103
104
112 OTC_SDK_API static void validate(const PifIndex& index);
113};
114
115
116// Utility functions
124OTC_SDK_API float lowerLimit(PifAoOutputMode outputMode) noexcept;
125
133OTC_SDK_API float upperLimit(PifAoOutputMode outputMode) noexcept;
134
143OTC_SDK_API float clampValue(float value, PifAoOutputMode outputMode) noexcept;
144
153inline bool operator==(const PifIndex& lhs, const PifIndex& rhs) noexcept
154{
155 return lhs.device == rhs.device && lhs.pin == rhs.pin;
156}
157
166inline bool operator!=(const PifIndex& lhs, const PifIndex& rhs) noexcept
167{
168 return lhs.device != rhs.device || lhs.pin != rhs.pin;
169}
170
180OTC_SDK_API std::string toString(const PifIndex& index) noexcept;
181
191OTC_SDK_API std::string toString(PifDeviceType type) noexcept;
192
202OTC_SDK_API std::string toString(PifAiMode analogInputMode) noexcept;
203
213OTC_SDK_API std::string toString(PifDiMode digitalInputMode) noexcept;
214
224OTC_SDK_API std::string toString(PifAoMode analogOutputMode) noexcept;
225
235OTC_SDK_API std::string toString(PifDoMode digitalOutputMode) noexcept;
236
246OTC_SDK_API std::string toString(PifFsMode failSafeMode) noexcept;
247
257OTC_SDK_API std::string toString(PifAoOutputMode outputMode) noexcept;
258
267OTC_SDK_API std::ostream& operator<<(std::ostream& out, PifDeviceType deviceType) noexcept;
268
277OTC_SDK_API std::ostream& operator<<(std::ostream& out, PifAiMode analogInputMode) noexcept;
278
287OTC_SDK_API std::ostream& operator<<(std::ostream& out, PifDiMode digitalInputMode) noexcept;
288
297OTC_SDK_API std::ostream& operator<<(std::ostream& out, PifAoMode analogOutputMode) noexcept;
298
307OTC_SDK_API std::ostream& operator<<(std::ostream& out, PifDoMode digitalOutputMode) noexcept;
308
317OTC_SDK_API std::ostream& operator<<(std::ostream& out, PifFsMode failSafeMode) noexcept;
318
327OTC_SDK_API std::ostream& operator<<(std::ostream& out, PifAoOutputMode outputMode) noexcept;
328
337OTC_SDK_API std::ostream& operator<<(std::ostream& out, PifIndex index) noexcept;
338
339} // namespace optris
Contains defines controlling the Windows DLL export and import of symbols.
#define OTC_SDK_API
Only needed when working with Windows DLLs.
Definition Api.h:65
Contains the exceptions raised by the SDK.
Measurement field or region of interest (ROI) within the thermal frame.
Definition MeasurementField.h:24
Main SDK namespace.
Definition AlarmChannel.h:21
OTC_SDK_API std::ostream & operator<<(std::ostream &out, const AlarmChannelConfig &config) noexcept
Output stream operator for alarm channel configurations.
OTC_SDK_API float clampValue(float value, PifAoOutputMode outputMode) noexcept
Clamps the given value to the limits of the specified PIF analog output mode.
PifAoMode
Represents the available modes for PIF analog output channels.
Definition PifProperties.h:59
@ ExternalCommunication
The output value can be controlled by clients of the SDK.
Definition PifProperties.h:64
@ Alarm
The status of a configured alarm channels are output.
Definition PifProperties.h:67
@ FrameSync
Every time a new frame is capture a pulse is output.
Definition PifProperties.h:62
@ FlagStatus
The status of the shutter flag is output.
Definition PifProperties.h:61
@ FailSafe
A heart beat signal is provided that indicates whether the camera and SDK are working correctly.
Definition PifProperties.h:63
PifAiMode
Represents the available modes for PIF analog input channels.
Definition PifProperties.h:42
@ AmbientTemperature
Ambient temperature for the thermal frame is derived from the input voltage.
Definition PifProperties.h:46
@ Emissivity
Emissivity for the thermal frame is derived from the input voltage.
Definition PifProperties.h:45
@ FlagControl
The shutter flag is controlled by the input voltage.
Definition PifProperties.h:44
PifFsMode
Represents the available modes for PIF fail safe channels.
Definition PifProperties.h:83
@ On
On.
Definition PifProperties.h:85
@ Off
Deactivated.
Definition RdcMode.h:26
PifDiMode
Represents the available modes for PIF digital input channels.
Definition PifProperties.h:52
bool operator!=(const RadiationParameters &lhs, const RadiationParameters &rhs) noexcept
Checks if two radiation parameter sets are unequal.
bool operator==(const RadiationParameters &lhs, const RadiationParameters &rhs) noexcept
Checks if two radiation parameter sets are equal.
@ Standard
Standard precision.
Definition TemperaturePrecision.h:34
PifDeviceType
Represents the supported PIF device types.
Definition PifProperties.h:26
@ Proprietary
The pins of the PIF connector on the camera are used directly.
Definition PifProperties.h:35
@ Automatic
Use the PIF type reported by the camera firmware.
Definition PifProperties.h:27
@ Stackable
Stackable PIF.
Definition PifProperties.h:33
@ None
No PIF.
Definition PifProperties.h:28
@ IndustrialMA
Industrial PIF with current based analog outputs.
Definition PifProperties.h:31
@ Internal
Internal PIF.
Definition PifProperties.h:32
@ TemperatureProbe
Instead of a PIF an external temperature probe is used.
Definition PifProperties.h:34
@ IndustrialMV
Industrial PIF with voltage based analog outputs.
Definition PifProperties.h:30
@ UncommittedValue
Monitors an uncommitted value generated by a PIF analog input channel.
Definition AlarmProperties.h:28
@ InternalTemperature
Monitors the internal temperature of the device.
Definition AlarmProperties.h:26
OTC_SDK_API std::string toString(AlarmInput alarmInput) noexcept
Returns a string representation of the given alarm input.
PifAoOutputMode
Represents the available output modes for PIF analog output channels.
Definition PifProperties.h:90
@ _0_20mA
0 mA - 20 mA
Definition PifProperties.h:91
@ _0_10V
0 V - 10 V
Definition PifProperties.h:93
@ _4_20mA
4 mA - 20 mA
Definition PifProperties.h:92
OTC_SDK_API float upperLimit(PifAoOutputMode outputMode) noexcept
Returns the upper limit of the specified PIF analog output mode as a number value.
OTC_SDK_API float lowerLimit(PifAoOutputMode outputMode) noexcept
Returns the lower limit of the specified PIF analog output mode as a number value.
PifDoMode
Represents the available modes for PIF digital output channels.
Definition PifProperties.h:72
Holds the indices that identify the physical pin on a PIF device for a PIF channel.
Definition PifProperties.h:98
int device
Index of the PIF device. For devices with only one PIF this is 0.
Definition PifProperties.h:100
static OTC_SDK_API void validate(const PifIndex &index)
Validates the given PIF index.
int pin
Index of the pin on the PIF device.
Definition PifProperties.h:102