ilabs-flir 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/Flir.podspec +31 -31
  2. package/README.md +1271 -1271
  3. package/android/Flir/build.gradle.kts +85 -80
  4. package/android/Flir/libs/flir-stubs.jar +0 -0
  5. package/android/Flir/src/main/AndroidManifest.xml +31 -31
  6. package/android/Flir/src/main/java/com/flir/thermalsdk/ErrorCodeException.java +14 -0
  7. package/android/Flir/src/main/java/com/flir/thermalsdk/image/ImageBuffer.java +11 -0
  8. package/android/Flir/src/main/java/com/flir/thermalsdk/image/JavaImageBuffer.java +35 -0
  9. package/android/Flir/src/main/java/com/flir/thermalsdk/image/Palette.java +15 -0
  10. package/android/Flir/src/main/java/com/flir/thermalsdk/image/PaletteManager.java +16 -0
  11. package/android/Flir/src/main/java/com/flir/thermalsdk/image/Point.java +11 -0
  12. package/android/Flir/src/main/java/com/flir/thermalsdk/image/ThermalImage.java +23 -0
  13. package/android/Flir/src/main/java/com/flir/thermalsdk/image/ThermalValue.java +9 -0
  14. package/android/Flir/src/main/java/com/flir/thermalsdk/live/CameraType.java +8 -0
  15. package/android/Flir/src/main/java/com/flir/thermalsdk/live/CommunicationInterface.java +16 -0
  16. package/android/Flir/src/main/java/com/flir/thermalsdk/live/Identity.java +23 -0
  17. package/android/Flir/src/main/java/com/flir/thermalsdk/live/IpSettings.java +9 -0
  18. package/android/Flir/src/main/java/com/flir/thermalsdk/live/connectivity/ConnectionStatusListener.java +7 -0
  19. package/android/Flir/src/main/java/com/flir/thermalsdk/live/remote/OnReceived.java +5 -0
  20. package/android/Flir/src/main/java/com/flir/thermalsdk/live/remote/OnRemoteError.java +7 -0
  21. package/android/Flir/src/main/java/flir/android/CameraHandler.java +224 -194
  22. package/android/Flir/src/main/java/flir/android/FlirCommands.java +111 -0
  23. package/android/Flir/src/main/java/flir/android/FlirConnectionManager.java +354 -0
  24. package/android/Flir/src/main/java/flir/android/FlirController.kt +11 -11
  25. package/android/Flir/src/main/java/flir/android/FlirDiscoveryManager.java +236 -0
  26. package/android/Flir/src/main/java/flir/android/FlirDownloadManager.kt +75 -75
  27. package/android/Flir/src/main/java/flir/android/FlirDownloadPackage.kt +16 -16
  28. package/android/Flir/src/main/java/flir/android/FlirFrameCache.kt +6 -6
  29. package/android/Flir/src/main/java/flir/android/FlirManager.kt +254 -248
  30. package/android/Flir/src/main/java/flir/android/FlirModule.kt +74 -74
  31. package/android/Flir/src/main/java/flir/android/FlirPackage.kt +19 -16
  32. package/android/Flir/src/main/java/flir/android/FlirSDKLoader.kt +195 -191
  33. package/android/Flir/src/main/java/flir/android/FlirSdkManager.java +890 -0
  34. package/android/Flir/src/main/java/flir/android/FlirStatus.kt +12 -12
  35. package/android/Flir/src/main/java/flir/android/FlirView.kt +48 -48
  36. package/android/Flir/src/main/java/flir/android/FlirViewManager.kt +13 -13
  37. package/android/Flir/src/main/java/flir/android/FrameDataHolder.java +14 -14
  38. package/app.plugin.js +264 -264
  39. package/expo-module.config.json +5 -5
  40. package/ios/Flir/Framework/ThermalSDK/FLIRBattery.h +76 -76
  41. package/ios/Flir/Framework/ThermalSDK/FLIRCalibration.h +108 -108
  42. package/ios/Flir/Framework/ThermalSDK/FLIRCamera.h +156 -156
  43. package/ios/Flir/Framework/ThermalSDK/FLIRCameraDeviceInfo.h +53 -53
  44. package/ios/Flir/Framework/ThermalSDK/FLIRCameraEvent.h +132 -132
  45. package/ios/Flir/Framework/ThermalSDK/FLIRCameraImport.h +204 -204
  46. package/ios/Flir/Framework/ThermalSDK/FLIRColorDistributionSettings.h +204 -204
  47. package/ios/Flir/Framework/ThermalSDK/FLIRColorizer.h +82 -82
  48. package/ios/Flir/Framework/ThermalSDK/FLIRDiscoveredCamera.h +44 -44
  49. package/ios/Flir/Framework/ThermalSDK/FLIRDiscovery.h +132 -132
  50. package/ios/Flir/Framework/ThermalSDK/FLIRDisplaySettings.h +29 -29
  51. package/ios/Flir/Framework/ThermalSDK/FLIRFocus.h +70 -70
  52. package/ios/Flir/Framework/ThermalSDK/FLIRFusion.h +192 -192
  53. package/ios/Flir/Framework/ThermalSDK/FLIRFusionController.h +136 -136
  54. package/ios/Flir/Framework/ThermalSDK/FLIRFusionTransformation.h +35 -35
  55. package/ios/Flir/Framework/ThermalSDK/FLIRIdentity.h +264 -264
  56. package/ios/Flir/Framework/ThermalSDK/FLIRImageBase.h +196 -196
  57. package/ios/Flir/Framework/ThermalSDK/FLIRImageColorizer.h +26 -26
  58. package/ios/Flir/Framework/ThermalSDK/FLIRImageStatistics.h +61 -61
  59. package/ios/Flir/Framework/ThermalSDK/FLIRIsotherms.h +208 -208
  60. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementArea.h +38 -38
  61. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementCollection.h +147 -147
  62. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementDelta.h +62 -62
  63. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementDimensions.h +33 -33
  64. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementEllipse.h +49 -49
  65. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementLine.h +66 -66
  66. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementMarker.h +69 -69
  67. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementParameters.h +41 -41
  68. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementRectangle.h +36 -36
  69. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementReference.h +27 -27
  70. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementShape.h +46 -46
  71. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementSpot.h +33 -33
  72. package/ios/Flir/Framework/ThermalSDK/FLIRMeasurementsController.h +160 -160
  73. package/ios/Flir/Framework/ThermalSDK/FLIRMeterLinkSensorPoll.h +247 -247
  74. package/ios/Flir/Framework/ThermalSDK/FLIROverlayController.h +27 -27
  75. package/ios/Flir/Framework/ThermalSDK/FLIRPalette.h +60 -60
  76. package/ios/Flir/Framework/ThermalSDK/FLIRPaletteController.h +36 -36
  77. package/ios/Flir/Framework/ThermalSDK/FLIRPaletteManager.h +97 -97
  78. package/ios/Flir/Framework/ThermalSDK/FLIRQuantification.h +55 -55
  79. package/ios/Flir/Framework/ThermalSDK/FLIRRemoteControl.h +393 -393
  80. package/ios/Flir/Framework/ThermalSDK/FLIRRenderer.h +35 -35
  81. package/ios/Flir/Framework/ThermalSDK/FLIRRendererImpl.h +17 -17
  82. package/ios/Flir/Framework/ThermalSDK/FLIRScale.h +99 -99
  83. package/ios/Flir/Framework/ThermalSDK/FLIRScaleController.h +44 -44
  84. package/ios/Flir/Framework/ThermalSDK/FLIRStream.h +109 -109
  85. package/ios/Flir/Framework/ThermalSDK/FLIRStreamer.h +124 -124
  86. package/ios/Flir/Framework/ThermalSDK/FLIRSystem.h +40 -40
  87. package/ios/Flir/Framework/ThermalSDK/FLIRTemperatureRange.h +43 -43
  88. package/ios/Flir/Framework/ThermalSDK/FLIRThermalDelta.h +77 -77
  89. package/ios/Flir/Framework/ThermalSDK/FLIRThermalImage.h +331 -331
  90. package/ios/Flir/Framework/ThermalSDK/FLIRThermalImageFile.h +56 -56
  91. package/ios/Flir/Framework/ThermalSDK/FLIRThermalParameters.h +31 -31
  92. package/ios/Flir/Framework/ThermalSDK/FLIRThermalValue.h +92 -92
  93. package/ios/Flir/Framework/ThermalSDK/FLIRWirelessCameraDetails.h +88 -88
  94. package/ios/Flir/Framework/ThermalSDK/ThermalSDK.h +73 -73
  95. package/ios/Flir/SDKLoader/FlirSDKLoader.m +13 -13
  96. package/ios/Flir/SDKLoader/FlirSDKLoader.swift +175 -175
  97. package/ios/Flir/src/FlirEventEmitter.h +12 -12
  98. package/ios/Flir/src/FlirEventEmitter.m +33 -33
  99. package/ios/Flir/src/FlirModule.h +10 -10
  100. package/ios/Flir/src/FlirModule.m +381 -381
  101. package/ios/Flir/src/FlirPreviewView.h +13 -13
  102. package/ios/Flir/src/FlirPreviewView.m +24 -24
  103. package/ios/Flir/src/FlirState.h +20 -20
  104. package/ios/Flir/src/FlirState.m +79 -79
  105. package/ios/Flir/src/FlirViewManager.h +9 -9
  106. package/ios/Flir/src/FlirViewManager.m +16 -16
  107. package/package.json +61 -61
  108. package/react-native.config.js +14 -14
  109. package/scripts/copy_ios_libs.sh +32 -32
  110. package/scripts/create_stubs.py +174 -174
  111. package/scripts/download-sdk.js +62 -62
  112. package/scripts/prepare-binaries.sh +171 -171
  113. package/sdk-manifest.json +30 -30
  114. package/src/FlirDownload.ts +78 -78
  115. package/src/index.d.ts +17 -17
  116. package/src/index.js +7 -7
  117. package/src/index.ts +7 -7
@@ -1,35 +1,35 @@
1
- //
2
- // FLIRFusionTransformation.h
3
- // ThermalSDK
4
- //
5
- // Created by FLIR on 2021-03-16.
6
- // Copyright © 2021 Teledyne FLIR. All rights reserved.
7
- //
8
-
9
- #pragma once
10
-
11
- #import <Foundation/Foundation.h>
12
-
13
- NS_ASSUME_NONNULL_BEGIN
14
-
15
- /**
16
- * Fusion transformation settings.
17
- *
18
- * @note setTransformation should be called after changing the fields below
19
- */
20
- @interface FLIRFusionTransformation : NSObject
21
-
22
- - (instancetype)initWithPanX:(int)panX panY:(int)panY scale:(float)scale rotation:(float)rotation;
23
-
24
- /** Fusion horizontal panning. */
25
- @property (nonatomic, assign) int panX;
26
- /** Fusion vertical panning. */
27
- @property (nonatomic, assign) int panY;
28
- /** Fusion zoom factor. */
29
- @property (nonatomic, assign) float scale;
30
- /** Fusion rotation factor clockwise in degrees. */
31
- @property (nonatomic, assign) float rotation;
32
-
33
- @end
34
-
35
- NS_ASSUME_NONNULL_END
1
+ //
2
+ // FLIRFusionTransformation.h
3
+ // ThermalSDK
4
+ //
5
+ // Created by FLIR on 2021-03-16.
6
+ // Copyright © 2021 Teledyne FLIR. All rights reserved.
7
+ //
8
+
9
+ #pragma once
10
+
11
+ #import <Foundation/Foundation.h>
12
+
13
+ NS_ASSUME_NONNULL_BEGIN
14
+
15
+ /**
16
+ * Fusion transformation settings.
17
+ *
18
+ * @note setTransformation should be called after changing the fields below
19
+ */
20
+ @interface FLIRFusionTransformation : NSObject
21
+
22
+ - (instancetype)initWithPanX:(int)panX panY:(int)panY scale:(float)scale rotation:(float)rotation;
23
+
24
+ /** Fusion horizontal panning. */
25
+ @property (nonatomic, assign) int panX;
26
+ /** Fusion vertical panning. */
27
+ @property (nonatomic, assign) int panY;
28
+ /** Fusion zoom factor. */
29
+ @property (nonatomic, assign) float scale;
30
+ /** Fusion rotation factor clockwise in degrees. */
31
+ @property (nonatomic, assign) float rotation;
32
+
33
+ @end
34
+
35
+ NS_ASSUME_NONNULL_END
@@ -1,264 +1,264 @@
1
- //
2
- // FLIRIdentity.h
3
- //
4
- // Copyright © 2019 Teledyne FLIR. All rights reserved.
5
- //
6
-
7
- #pragma once
8
-
9
- #import <ExternalAccessory/ExternalAccessory.h>
10
-
11
- /**
12
- * These enums represents the possible camera interfaces.
13
- *
14
- * In this release only the *network*, *emulator*, and *lightning* enums are implemented in FLIR Thermal SDK for iOS.
15
- */
16
- typedef NS_OPTIONS(NSUInteger, FLIRCommunicationInterface) {
17
- /// no interface.
18
- FLIRCommunicationInterfaceNone = 0x00,
19
-
20
- /// USB interface. *Note! Not implemented for iOS*
21
- FLIRCommunicationInterfaceUSB = 0x01,
22
-
23
- /// Network interface (wired or wireless).
24
- FLIRCommunicationInterfaceNetwork = 0x02,
25
-
26
- /// FireWire interface. *Note! Not implemented for iOS*
27
- FLIRCommunicationInterfaceFirewire = 0x04,
28
-
29
- /// Camera emulator interface.
30
- FLIRCommunicationInterfaceEmulator = 0x08,
31
-
32
- /// Bluetooth wireless interface. *Note! Not (yet) implemented for iOS*
33
- FLIRCommunicationInterfaceBluetooth = 0x10,
34
-
35
- /// Ebus interface. *Note! Not implemented for iOS*
36
- FLIRCommunicationInterfaceEbus = 0x20,
37
-
38
- /// USB HSI interface. *Note! Not implemented for iOS*
39
- FLIRCommunicationInterfaceUsbHsi = 0x40,
40
-
41
- /// iOS lightning interface.
42
- FLIRCommunicationInterfaceLightning = 0x80,
43
-
44
- /// Built-in IR camera. *Note! Not implemented for iOS*
45
- FLIRCommunicationInterfaceIntegrated = 0x100,
46
-
47
- /// FLIR ONE Wireless camera (using BLE and local WiFi).
48
- FLIRCommunicationInterfaceFlirOneWireless = 0x200,
49
-
50
- /// Custom interface. *Note! Not implemented for iOS*
51
- FLIRCommunicationInterfaceCustom = 1u << 31,
52
- };
53
-
54
- /**
55
- * Types of FLIR cameras.
56
- */
57
- typedef NS_ENUM(NSInteger, FLIRCameraType) {
58
- /// Any generic FLIR camera.
59
- FLIRCameraType_generic = 0x01,
60
- /// FLIR ONE pluggable camera.
61
- FLIRCameraType_flirOne = 0x02,
62
- /// FLIR ONE Edge wireless camera.
63
- FLIRCameraType_flirOneEdge = 0x04,
64
- /// FLIR ONE Edge Pro wireless camera.
65
- FLIRCameraType_flirOneEdgePro = 0x08,
66
- /// FLIR ONE Edge wireless camera.
67
- FLIRCameraType_unknown1 = 0x10,
68
- /// FLIR ONE Edge Pro wireless camera.
69
- FLIRCameraType_unknown2 = 0x20,
70
- /// FLIR Leia / Scout pro camera
71
- FLIRCameraType_leia = 0x80,
72
- /// FLIR luke camera
73
- FLIRCameraType_luke = 0x100,
74
- /// Unknown type of camera.
75
- FLIRCameraType_unknown = 0x200
76
- };
77
-
78
- /// Flir one model
79
- typedef NS_ENUM(NSUInteger, FLIROneType)
80
- {
81
- F1_gen3Pro,
82
- F1_gen3ProLt,
83
- F1_gen3Consumer,
84
- F1_gen2,
85
- F1_unknown,
86
- F1_edge,
87
- F1_edgePro
88
- };
89
-
90
- @class FLIRIdentity;
91
-
92
- /**
93
- * Adapter information.
94
- *
95
- * Describes the network interface card that discovered a camera.
96
- */
97
- @interface FLIRAdapterInfo : NSObject
98
-
99
- /// The name of the adapter.
100
- /// @return A string with the adapter name.
101
- - (nonnull NSString *) name;
102
-
103
- /// Flag telling if adapter is WiFi.
104
- /// @return TRUE if adapter is a WiFi adapter.
105
- - (BOOL) isWireless;
106
-
107
- /// The adapter MAC address.
108
- /// @return The MAC address of the adapter.
109
- - (nonnull NSString *) macAddress;
110
-
111
- /// The adapter IP address.
112
- /// @return The IP address of the adapter.
113
- - (nonnull NSString *) ipAddress;
114
-
115
- /// The adapter subnet mask address.
116
- /// @return The subnet mask of the adapter.
117
- - (nonnull NSString *) mask;
118
-
119
- @end
120
-
121
-
122
- /**
123
- * Stores the IP settings of a discovered network camera.
124
- */
125
- @interface FLIRIpSettings : NSObject
126
-
127
- /// Tthe host (camera) name
128
- - (nullable NSString *) hosttarget;
129
-
130
- /// The IP address of the camera.
131
- - (nonnull NSString *) ipAddress;
132
-
133
- /// The MAC address of the camera.
134
- - (nonnull NSString *) macAddress;
135
-
136
- /// The default gateway for the camera.
137
- - (nonnull NSString *) defaultGateway;
138
-
139
- /// The subnet mask for the camera.
140
- - (nonnull NSString *) subnetMask;
141
-
142
- /// The camera DHCP setting.
143
- /// - returns: TRUE if DHCP is enabled.
144
- - (BOOL) isDhcpEnabled;
145
-
146
- /// Validity of the IP settings.
147
- /// - returns: TRUE if ok.
148
- - (BOOL) isValid;
149
-
150
- /// Interface information about the IF that found the camera.
151
- - (nonnull FLIRAdapterInfo *) adapterInfo;
152
-
153
- @end
154
-
155
- /**
156
- * Represents camera device information.
157
- *
158
- * A FLIRCameraInformation object can be obtained from the FLIRRemoteControl object after a connection to a camera has been made.
159
- */
160
- @interface FLIRCameraInformation : NSObject
161
-
162
- /// The camera name, can be null.
163
- - (nonnull NSString *) modelName;
164
-
165
- /// The camera model name.
166
- - (nonnull NSString *) name;
167
-
168
- /// The camera display name.
169
- - (nonnull NSString *) displayName;
170
-
171
- /// The camera description.
172
- - (nonnull NSString *) cameraDescription;
173
-
174
- /// The camera serial number.
175
- - (nonnull NSString *) serialNumber;
176
-
177
- /// The camera osImageKitName. Same as osImageKitName.
178
- - (nonnull NSString *) osImagekitName __attribute__((deprecated("Use osImageKitName instead.")));
179
-
180
- /// The camera osImagekitName.
181
- - (nonnull NSString *) osImageKitName;
182
-
183
- /// The camera swCombinationVersion.
184
- - (nonnull NSString *) swCombinationVersion;
185
-
186
- /// The camera confKitName.
187
- - (nonnull NSString *) confKitName;
188
-
189
- /// The camera article.
190
- - (nonnull NSString *) article;
191
-
192
- /// The camera date
193
- - (nullable NSString *) date;
194
-
195
- /// Camera sensor width in pixels.
196
- - (NSInteger) width;
197
-
198
- /// Camera height in pixels.
199
- - (NSInteger) height;
200
-
201
- /// Camera firmware revision, could be e.g. a commit hash or version number
202
- - (nonnull NSString *) firmwareRevision;
203
-
204
- /// get flironetype (only valid for flir one cameras)
205
- - (FLIROneType)getFlirOneType;
206
-
207
- @end
208
-
209
- /**
210
- * Represents a Camera identity.
211
- *
212
- * Used when discovering and connecting to cameras.
213
- */
214
- @interface FLIRIdentity : NSObject
215
-
216
- /**
217
- * The communication interface through which the camera will be accessed.
218
- */
219
- - (FLIRCommunicationInterface) communicationInterface;
220
-
221
- /**
222
- * Type of the camera
223
- */
224
- - (FLIRCameraType) cameraType;
225
-
226
- /**
227
- * A per session unique Id for the camera
228
- *
229
- * This is ONLY unique per session, starting a new scan might make a new Id for the same camera.
230
- *
231
- * This may or may not be human-readable. It's recommended to connect to the Camera and query
232
- * for CameraInformation to get a descriptive camera name. See `FLIRCameraInformation`
233
- */
234
- - (nonnull NSString *) deviceId;
235
-
236
- /**
237
- * IP settings for a network camera.
238
- *
239
- * This field contains value if communicationInterface is CommunicationInterface::network,
240
- * otherwise it will be empty.
241
- */
242
- - (nullable FLIRIpSettings *)ipSettings;
243
-
244
- /**
245
- * Initializes FLIRIdentity object as a network camera identity.
246
- *
247
- * @param ipAddr the IP address of this identity.
248
- */
249
- -(instancetype _Nullable)initWithIpAddr:(nullable NSString *)ipAddr;
250
-
251
- /**
252
- * Initializes FLIRIdentity object as a FLIR One camera identity.
253
- *
254
- * @param serial the serial number to be copied into 'deviceId'.
255
- */
256
- - (instancetype _Nullable)initWithFlirOneSerialNo:(nullable NSString *)serial;
257
-
258
- /**
259
- * Create emulator identity
260
- */
261
- - (instancetype _Nullable)initWithEmulatorType:(FLIRCameraType)type;
262
-
263
- @end
264
-
1
+ //
2
+ // FLIRIdentity.h
3
+ //
4
+ // Copyright © 2019 Teledyne FLIR. All rights reserved.
5
+ //
6
+
7
+ #pragma once
8
+
9
+ #import <ExternalAccessory/ExternalAccessory.h>
10
+
11
+ /**
12
+ * These enums represents the possible camera interfaces.
13
+ *
14
+ * In this release only the *network*, *emulator*, and *lightning* enums are implemented in FLIR Thermal SDK for iOS.
15
+ */
16
+ typedef NS_OPTIONS(NSUInteger, FLIRCommunicationInterface) {
17
+ /// no interface.
18
+ FLIRCommunicationInterfaceNone = 0x00,
19
+
20
+ /// USB interface. *Note! Not implemented for iOS*
21
+ FLIRCommunicationInterfaceUSB = 0x01,
22
+
23
+ /// Network interface (wired or wireless).
24
+ FLIRCommunicationInterfaceNetwork = 0x02,
25
+
26
+ /// FireWire interface. *Note! Not implemented for iOS*
27
+ FLIRCommunicationInterfaceFirewire = 0x04,
28
+
29
+ /// Camera emulator interface.
30
+ FLIRCommunicationInterfaceEmulator = 0x08,
31
+
32
+ /// Bluetooth wireless interface. *Note! Not (yet) implemented for iOS*
33
+ FLIRCommunicationInterfaceBluetooth = 0x10,
34
+
35
+ /// Ebus interface. *Note! Not implemented for iOS*
36
+ FLIRCommunicationInterfaceEbus = 0x20,
37
+
38
+ /// USB HSI interface. *Note! Not implemented for iOS*
39
+ FLIRCommunicationInterfaceUsbHsi = 0x40,
40
+
41
+ /// iOS lightning interface.
42
+ FLIRCommunicationInterfaceLightning = 0x80,
43
+
44
+ /// Built-in IR camera. *Note! Not implemented for iOS*
45
+ FLIRCommunicationInterfaceIntegrated = 0x100,
46
+
47
+ /// FLIR ONE Wireless camera (using BLE and local WiFi).
48
+ FLIRCommunicationInterfaceFlirOneWireless = 0x200,
49
+
50
+ /// Custom interface. *Note! Not implemented for iOS*
51
+ FLIRCommunicationInterfaceCustom = 1u << 31,
52
+ };
53
+
54
+ /**
55
+ * Types of FLIR cameras.
56
+ */
57
+ typedef NS_ENUM(NSInteger, FLIRCameraType) {
58
+ /// Any generic FLIR camera.
59
+ FLIRCameraType_generic = 0x01,
60
+ /// FLIR ONE pluggable camera.
61
+ FLIRCameraType_flirOne = 0x02,
62
+ /// FLIR ONE Edge wireless camera.
63
+ FLIRCameraType_flirOneEdge = 0x04,
64
+ /// FLIR ONE Edge Pro wireless camera.
65
+ FLIRCameraType_flirOneEdgePro = 0x08,
66
+ /// FLIR ONE Edge wireless camera.
67
+ FLIRCameraType_unknown1 = 0x10,
68
+ /// FLIR ONE Edge Pro wireless camera.
69
+ FLIRCameraType_unknown2 = 0x20,
70
+ /// FLIR Leia / Scout pro camera
71
+ FLIRCameraType_leia = 0x80,
72
+ /// FLIR luke camera
73
+ FLIRCameraType_luke = 0x100,
74
+ /// Unknown type of camera.
75
+ FLIRCameraType_unknown = 0x200
76
+ };
77
+
78
+ /// Flir one model
79
+ typedef NS_ENUM(NSUInteger, FLIROneType)
80
+ {
81
+ F1_gen3Pro,
82
+ F1_gen3ProLt,
83
+ F1_gen3Consumer,
84
+ F1_gen2,
85
+ F1_unknown,
86
+ F1_edge,
87
+ F1_edgePro
88
+ };
89
+
90
+ @class FLIRIdentity;
91
+
92
+ /**
93
+ * Adapter information.
94
+ *
95
+ * Describes the network interface card that discovered a camera.
96
+ */
97
+ @interface FLIRAdapterInfo : NSObject
98
+
99
+ /// The name of the adapter.
100
+ /// @return A string with the adapter name.
101
+ - (nonnull NSString *) name;
102
+
103
+ /// Flag telling if adapter is WiFi.
104
+ /// @return TRUE if adapter is a WiFi adapter.
105
+ - (BOOL) isWireless;
106
+
107
+ /// The adapter MAC address.
108
+ /// @return The MAC address of the adapter.
109
+ - (nonnull NSString *) macAddress;
110
+
111
+ /// The adapter IP address.
112
+ /// @return The IP address of the adapter.
113
+ - (nonnull NSString *) ipAddress;
114
+
115
+ /// The adapter subnet mask address.
116
+ /// @return The subnet mask of the adapter.
117
+ - (nonnull NSString *) mask;
118
+
119
+ @end
120
+
121
+
122
+ /**
123
+ * Stores the IP settings of a discovered network camera.
124
+ */
125
+ @interface FLIRIpSettings : NSObject
126
+
127
+ /// Tthe host (camera) name
128
+ - (nullable NSString *) hosttarget;
129
+
130
+ /// The IP address of the camera.
131
+ - (nonnull NSString *) ipAddress;
132
+
133
+ /// The MAC address of the camera.
134
+ - (nonnull NSString *) macAddress;
135
+
136
+ /// The default gateway for the camera.
137
+ - (nonnull NSString *) defaultGateway;
138
+
139
+ /// The subnet mask for the camera.
140
+ - (nonnull NSString *) subnetMask;
141
+
142
+ /// The camera DHCP setting.
143
+ /// - returns: TRUE if DHCP is enabled.
144
+ - (BOOL) isDhcpEnabled;
145
+
146
+ /// Validity of the IP settings.
147
+ /// - returns: TRUE if ok.
148
+ - (BOOL) isValid;
149
+
150
+ /// Interface information about the IF that found the camera.
151
+ - (nonnull FLIRAdapterInfo *) adapterInfo;
152
+
153
+ @end
154
+
155
+ /**
156
+ * Represents camera device information.
157
+ *
158
+ * A FLIRCameraInformation object can be obtained from the FLIRRemoteControl object after a connection to a camera has been made.
159
+ */
160
+ @interface FLIRCameraInformation : NSObject
161
+
162
+ /// The camera name, can be null.
163
+ - (nonnull NSString *) modelName;
164
+
165
+ /// The camera model name.
166
+ - (nonnull NSString *) name;
167
+
168
+ /// The camera display name.
169
+ - (nonnull NSString *) displayName;
170
+
171
+ /// The camera description.
172
+ - (nonnull NSString *) cameraDescription;
173
+
174
+ /// The camera serial number.
175
+ - (nonnull NSString *) serialNumber;
176
+
177
+ /// The camera osImageKitName. Same as osImageKitName.
178
+ - (nonnull NSString *) osImagekitName __attribute__((deprecated("Use osImageKitName instead.")));
179
+
180
+ /// The camera osImagekitName.
181
+ - (nonnull NSString *) osImageKitName;
182
+
183
+ /// The camera swCombinationVersion.
184
+ - (nonnull NSString *) swCombinationVersion;
185
+
186
+ /// The camera confKitName.
187
+ - (nonnull NSString *) confKitName;
188
+
189
+ /// The camera article.
190
+ - (nonnull NSString *) article;
191
+
192
+ /// The camera date
193
+ - (nullable NSString *) date;
194
+
195
+ /// Camera sensor width in pixels.
196
+ - (NSInteger) width;
197
+
198
+ /// Camera height in pixels.
199
+ - (NSInteger) height;
200
+
201
+ /// Camera firmware revision, could be e.g. a commit hash or version number
202
+ - (nonnull NSString *) firmwareRevision;
203
+
204
+ /// get flironetype (only valid for flir one cameras)
205
+ - (FLIROneType)getFlirOneType;
206
+
207
+ @end
208
+
209
+ /**
210
+ * Represents a Camera identity.
211
+ *
212
+ * Used when discovering and connecting to cameras.
213
+ */
214
+ @interface FLIRIdentity : NSObject
215
+
216
+ /**
217
+ * The communication interface through which the camera will be accessed.
218
+ */
219
+ - (FLIRCommunicationInterface) communicationInterface;
220
+
221
+ /**
222
+ * Type of the camera
223
+ */
224
+ - (FLIRCameraType) cameraType;
225
+
226
+ /**
227
+ * A per session unique Id for the camera
228
+ *
229
+ * This is ONLY unique per session, starting a new scan might make a new Id for the same camera.
230
+ *
231
+ * This may or may not be human-readable. It's recommended to connect to the Camera and query
232
+ * for CameraInformation to get a descriptive camera name. See `FLIRCameraInformation`
233
+ */
234
+ - (nonnull NSString *) deviceId;
235
+
236
+ /**
237
+ * IP settings for a network camera.
238
+ *
239
+ * This field contains value if communicationInterface is CommunicationInterface::network,
240
+ * otherwise it will be empty.
241
+ */
242
+ - (nullable FLIRIpSettings *)ipSettings;
243
+
244
+ /**
245
+ * Initializes FLIRIdentity object as a network camera identity.
246
+ *
247
+ * @param ipAddr the IP address of this identity.
248
+ */
249
+ -(instancetype _Nullable)initWithIpAddr:(nullable NSString *)ipAddr;
250
+
251
+ /**
252
+ * Initializes FLIRIdentity object as a FLIR One camera identity.
253
+ *
254
+ * @param serial the serial number to be copied into 'deviceId'.
255
+ */
256
+ - (instancetype _Nullable)initWithFlirOneSerialNo:(nullable NSString *)serial;
257
+
258
+ /**
259
+ * Create emulator identity
260
+ */
261
+ - (instancetype _Nullable)initWithEmulatorType:(FLIRCameraType)type;
262
+
263
+ @end
264
+