FLImaging 7.8.25.3
DeviceCameraMulticam.h
1#pragma once
2
10
11#include "DeviceCameraBase.h"
12#include "DeviceCameraFeatureBase.h"
13
14
16namespace FLImaging
17{
19 namespace Devices
20 {
21 class CInternalDeviceCameraMulticam;
22
23 typedef uint32_t MCHANDLE, * PMCHANDLE;
24
33 {
34 public:
44 {
49
54
59
64
69 };
70
80 {
85
90
95 };
96
97 public:
105
113
114 virtual const CResult Initialize() override;
115 virtual const CResult Terminate() override;
116
117 virtual const CResult Grab() override;
118 virtual const CResult Live() override;
119 virtual const CResult Stop() override;
120
121 virtual const CResult TriggerWithSoftware() override;
122
138 virtual const CResult SetCamFilePath(const Base::CFLString<wchar_t>& strCamFilePath);
139
152
166 virtual const CResult SetBoardIndex(int32_t i32BoardIndex);
167
177 virtual int32_t GetBoardIndex() const;
178
194 virtual const CResult SetBoardTopology(EBoardTopology eBoardTopology);
195
208
209
225 virtual const CResult SetConnector(EConnector eConnector);
226
238 virtual EConnector GetConnector() const;
239
253 virtual const CResult SetComPortNumber(int32_t i32ComPortNumber);
254
264 virtual int32_t GetComPortNumber() const;
265
267 virtual const CResult SetInt32Value(const char* pszKey, const int32_t* pI32Value) override;
268
270 virtual const CResult GetInt32Value(const char* pszKey, int32_t* pI32Value) const override;
271
273 virtual const CResult SetInt64Value(const char* pszKey, const int64_t* pI64Value) override;
274
276 virtual const CResult GetInt64Value(const char* pszKey, int64_t* pI64Value) const override;
277
279 virtual const CResult SetFloatValue(const char* pszKey, const float* pF32Value) override;
280
282 virtual const CResult GetFloatValue(const char* pszKey, float* pF32Value) const override;
283
285 virtual const CResult SetDoubleValue(const char* pszKey, const double* pF64Value) override;
286
288 virtual const CResult GetDoubleValue(const char* pszKey, double* pF64Value) const override;
289
291 virtual const CResult SetStringValue(const char* pszKey, const Base::CFLString<char>* pFlsValue) override;
292
294 virtual const CResult GetStringValue(const char* pszKey, Base::CFLString<char>* pFlsValue) const override;
295
296 DeclareGetClassType();
297
298 protected:
299
300 virtual bool CheckDeviceLibraries() const override;
301
302 private:
304 virtual const CResult SetBoolValue(const char* pszKey, const bool* pBValue) override;
305
307 virtual const CResult GetBoolValue(const char* pszKey, bool* pBValue) const override;
308
310 virtual const CResult SetEnumValue(const char* pszKey, const int32_t* pI32Value) override;
311 virtual const CResult SetEnumValue(const char* pszKey, const Base::CFLString<char>* pFlsValue) override;
312
314 virtual const CResult GetEnumValue(const char* pszKey, int32_t* pI32Value) const override;
315 virtual const CResult GetEnumValue(const char* pszKey, Base::CFLString<char>* pFlsValue) const override;
316
318 virtual const CResult GetEnumFeatureEntries(const Base::CFLString<wchar_t>& flsFeature, std::vector<std::pair<int32_t, Base::CFLString<wchar_t>>>* pVctEntries) const override;
319
321 virtual const CResult ExecuteCommand(const char* pszKey) const override;
322
323 protected:
324
325 CInternalDeviceCameraMulticam* m_pInternal;
326
327 MCHANDLE m_hDevice;
328
329 Base::CFLString<wchar_t>& m_strCamFilePath;
330 int32_t m_i32BoardIndex;
331 EBoardTopology m_eBoardTopology;
332 EConnector m_eConnector;
333 int32_t m_i32ComPortNumber;
334
335 friend class CInternalDeviceCameraMulticam;
336 };
337 }
338}
339
340
Template type string class.
Definition FLString.h:34
FLImaging module execution result object.
Definition ResultsDef.h:1704
CDeviceCameraBase()
Default constructor.
virtual const CResult GetBoolValue(const char *pszKey, bool &bValue) const
Retrieves a boolean value from the device using a key (UTF-8 string).
virtual const CResult SetFloatValue(const char *pszKey, const float &f32Value)
Sets a single-precision floating point value on the device using a UTF-8 key.
virtual const CResult SetDoubleValue(const char *pszKey, const double &f64Value)
Sets a double-precision floating point value on the device using a UTF-8 key.
virtual const CResult GetInt64Value(const char *pszKey, int64_t &i64Value) const
Retrieves a 64-bit integer (Int64) value from the device using a UTF-8 key.
virtual const CResult GetStringValue(const char *pszKey, Base::CFLString< char > &strValue) const
Retrieves a string value from the device using a UTF-8 key.
virtual const CResult SetEnumValue(const char *pszKey, const int32_t &i32Value)
Sets an enum value on the device using a UTF-8 key.
virtual const CResult SetStringValue(const char *pszKey, const Base::CFLString< char > &strValue)
Sets a string value on the device using a UTF-8 key and narrow string.
virtual const CResult GetEnumValue(const char *pszKey, int32_t &i32Value) const
Retrieves an enum value from the device using a UTF-8 key.
virtual const CResult SetInt32Value(const char *pszKey, const int32_t &i32Value)
Sets a 32-bit integer (Int32) value on the device using a UTF-8 key.
virtual const CResult SetBoolValue(const char *pszKey, const bool &bValue)
Sets a boolean value on the device using a key (UTF-8 string).
virtual const CResult SetInt64Value(const char *pszKey, const int64_t &i64Value)
Sets a 64-bit integer (Int64) value on the device using a UTF-8 key.
virtual const CResult GetFloatValue(const char *pszKey, float &f32Value) const
Retrieves a single-precision floating point value from the device using a UTF-8 key.
virtual const CResult GetDoubleValue(const char *pszKey, double &f64Value) const
Retrieves a double-precision floating point value from the device using a UTF-8 key.
virtual const CResult ExecuteCommand(const char *pszKey) const =0
Executes a command on the device using a key.
virtual const CResult GetEnumFeatureEntries(const Base::CFLString< wchar_t > &flsFeature, std::vector< std::pair< int32_t, Base::CFLString< wchar_t > > > &vctEntries) const
Retrieves the enumeration entries of the specified feature.
virtual const CResult GetInt32Value(const char *pszKey, int32_t &i32Value) const
Retrieves a 32-bit integer (Int32) value from the device using a UTF-8 key.
virtual int32_t GetComPortNumber() const
Retrieves the configured COM port number.
virtual const CResult Initialize() override
Initialize the device.
virtual int32_t GetBoardIndex() const
Retrieves the configured board index.
virtual const CResult SetStringValue(const char *pszKey, const Base::CFLString< char > *pFlsValue) override
Sets a string value on the device using a UTF-8 key and pointer to narrow string.
virtual const CResult SetComPortNumber(int32_t i32ComPortNumber)
Sets the COM port number.
EConnector
Connector.
Definition DeviceCameraMulticam.h:80
@ EConnector_A
A connector.
Definition DeviceCameraMulticam.h:89
@ EConnector_B
B connector.
Definition DeviceCameraMulticam.h:94
@ EConnector_M
M connector.
Definition DeviceCameraMulticam.h:84
virtual EBoardTopology GetBoardTopology() const
Retrieves the configured camera topology of the board.
virtual const CResult GetFloatValue(const char *pszKey, float *pF32Value) const override
Retrieves a single-precision floating point value from the device using a UTF-8 key.
virtual Base::CFLString< wchar_t > GetCamFilePath() const
Retrieves the configured camera file path.
virtual const CResult SetInt32Value(const char *pszKey, const int32_t *pI32Value) override
Sets a 32-bit integer (Int32) value on the device using a UTF-8 key.
CDeviceCameraMulticam()
Default constructor.
virtual const CResult Terminate() override
Terminate the device.
virtual const CResult GetDoubleValue(const char *pszKey, double *pF64Value) const override
Retrieves a double-precision floating point value from the device using a UTF-8 key.
virtual const CResult Stop() override
Stops image acquisition.
virtual const CResult GetInt32Value(const char *pszKey, int32_t *pI32Value) const override
Retrieves a 32-bit integer (Int32) value from the device using a UTF-8 key.
virtual ~CDeviceCameraMulticam()
Default destructor.
virtual const CResult SetInt64Value(const char *pszKey, const int64_t *pI64Value) override
Sets a 64-bit integer (Int64) value on the device using a UTF-8 key.
virtual const CResult SetBoardIndex(int32_t i32BoardIndex)
Sets the board index.
virtual const CResult SetDoubleValue(const char *pszKey, const double *pF64Value) override
Sets a double-precision floating point value on the device using a UTF-8 key.
virtual const CResult SetBoardTopology(EBoardTopology eBoardTopology)
Sets the camera topology of the board.
virtual const CResult GetInt64Value(const char *pszKey, int64_t *pI64Value) const override
Retrieves a 64-bit integer (Int64) value from the device using a UTF-8 key.
virtual const CResult SetCamFilePath(const Base::CFLString< wchar_t > &strCamFilePath)
Sets the camera file path.
virtual const CResult Live() override
Starts live image acquisition.
EBoardTopology
Camera topology of the board.
Definition DeviceCameraMulticam.h:44
@ EBoardTopology_MonoDeca
Mono Deca.
Definition DeviceCameraMulticam.h:53
@ EBoardTopology_MonoSlow
Mono Slow.
Definition DeviceCameraMulticam.h:58
@ EBoardTopology_Mono
Mono.
Definition DeviceCameraMulticam.h:48
@ EBoardTopology_DuoSlow
Duo Slow.
Definition DeviceCameraMulticam.h:68
@ EBoardTopology_Duo
Duo.
Definition DeviceCameraMulticam.h:63
virtual const CResult GetStringValue(const char *pszKey, Base::CFLString< char > *pFlsValue) const override
Retrieves a string value from the device using a UTF-8 key.
virtual const CResult Grab() override
Acquires a single image from the device.
virtual const CResult SetFloatValue(const char *pszKey, const float *pF32Value) override
Sets a single-precision floating point value on the device using a UTF-8 key.
virtual const CResult TriggerWithSoftware() override
Executes a software trigger on the device.
virtual EConnector GetConnector() const
Retrieves the configured connector.
virtual const CResult SetConnector(EConnector eConnector)
Sets the connector.
Definition AutoFileCleaner.h:19