Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



PvCameraBridge.h
1 // *****************************************************************************
2 //
3 // Copyright (c) 2016, Pleora Technologies Inc., All rights reserved.
4 //
5 // *****************************************************************************
6 
7 #ifndef __PVCAMERABRIDGE_H__
8 #define __PVCAMERABRIDGE_H__
9 
10 #include <PvCameraBridgeLib.h>
11 #include <PvDeviceSerialEnums.h>
12 #include <PvStringList.h>
13 #include <PvConfigurationReader.h>
14 #include <PvConfigurationWriter.h>
15 
16 
17 class PvDevice;
18 class PvStream;
20 
21 namespace PvCameraBridgeLib
22 {
23  class CameraBridge;
24 }
25 
26 
28 typedef enum
29 {
31  PvCameraBridgeUnknown = -1,
33  PvCameraBridgePCF = 0,
35  PvCameraBridgeCLP,
37  PvCameraBridgeGenCP
38 
39 } PvCameraBridgeType;
40 
41 
48 class PV_CAMERABRIDGE_API PvCameraBridgeEventSink
49 {
50 public:
51 
56 
60  virtual ~PvCameraBridgeEventSink();
61 
70  virtual PvResult OnSetParameter( const PvString &aName, const PvString &aValue );
71 
77  virtual void OnError( const PvString &aMessage );
78 
79 };
80 
81 
90 class PV_CAMERABRIDGE_API PvCameraBridge
91 {
92 public:
93 
101  PvCameraBridge( PvDevice *aDevice, PvDeviceSerial aPort, PvStream *aStream = NULL );
102 
106  virtual ~PvCameraBridge();
107 
113  PvGenParameterArray *GetParameters();
114 
120  bool IsConnected();
121 
127  PvResult Disconnect();
128 
134  PvResult Recover();
135 
141  PvDeviceSerial GetPort() const;
142 
148  PvDevice *GetDevice();
149 
155  PvStream *GetStream();
156 
162  PvResult StartAcquisition();
163 
169  PvResult StopAcquisition();
170 
176  bool GetParametersSyncEnabled() const;
177 
183  void SetParametersSyncEnabled( bool aEnabled );
184 
190  PvString GetSource() const;
191 
197  void SetSource( const PvString &aSource );
198 
206  PvResult RegisterEventSink( PvCameraBridgeEventSink *aEventSink );
207 
215  PvResult UnregisterEventSink( PvCameraBridgeEventSink *aEventSink );
216 
224  PvResult ConnectPleoraCameraFile( const PvString &aPath );
225 
233  PvResult GetPleoraCameraFileParserErrors( PvStringList &aErrors );
234 
242  PvResult GetPleoraCameraFilePath( PvString &aPath ) const;
243 
251  static PvResult GetCLProtocolTemplates( PvStringList &aTemplates );
252 
262  PvResult ProbeCLProtocol( const PvString &aTemplate,
263  PvString &aCameraID,
264  PvStringList &aXMLIDs );
265 
274  PvResult ConnectCLProtocol( const PvString &aTemplate, const PvString &aXMLID = "" );
275 
283  PvResult GetCLProtocolTemplate( PvString &aTemplate ) const;
284 
292  PvResult GetCLProtocolCameraID( PvString &aCameraID ) const;
293 
301  PvResult GetCLProtocolXMLID( PvString &aXMLID ) const;
302 
310  PvResult GetGenCPXMLIDs( PvStringList &aXMLIDs );
311 
319  PvResult ConnectGenCP( const PvString &aXMLID = "" );
320 
328  PvResult GetGenCPXMLID( PvString &aXMLID ) const;
329 
338  PvResult Save( const PvString &aPrefix, PvConfigurationWriter &aWriter );
339 
349  PvResult Load( const PvString &aPrefix, PvConfigurationReader &aReader, PvStringList &aErrors );
350 
356  uint64_t GetBytesSentToCamera() const;
357 
363  uint64_t GetBytesReceivedFromCamera() const;
364 
368  void ResetStatistics();
369 
377  static bool IsPoCLSupported( PvDevice *aDevice );
378 
386  static bool IsPoCLEnabled( PvDevice *aDevice );
387 
396  static PvResult SetPoCLEnabled( PvDevice *aDevice, bool aEnabled );
397 
398 protected:
399 
400 private:
401 
402  PvCameraBridgeLib::CameraBridge *mThis;
403 
404  // Not implemented
405  PvCameraBridge( const PvCameraBridge & );
406  const PvCameraBridge& operator=( const PvCameraBridge & );
407 
408 };
409 
410 #endif
PvDeviceSerialEnums.h
Device serial communication constants.
PvResult
Result information.
Definition: PvResult.h:29
PvConfigurationWriter
Writes configuration data to persistence files.
Definition: PvConfigurationWriter.h:28
PvStream
Receive data from a GigE Vision or USB3 Vision transmitter.
Definition: PvStream.h:50
PvString
String class.
Definition: PvString.h:25
PvDeviceSerial
PvDeviceSerial
Device serial port enumeration.
Definition: PvDeviceSerialEnums.h:19
PvGenParameterArray
GenICam feature array.
Definition: PvGenParameterArray.h:72
PvCameraBridgeEventSink
Event sink interface for PvCameraBridge events.
Definition: PvCameraBridge.h:48
PvStringList
Class used to hold a group of PvString objects.
Definition: PvStringList.h:19
PvCameraBridge
Bridge between a PvDevice and a camera connected through a serial port.
Definition: PvCameraBridge.h:90
PvConfigurationReader
Reads and restores configuration data from persistence files.
Definition: PvConfigurationReader.h:28
PvDevice
Connect, configure and control a GigE Vision or USB3 Vision device.
Definition: PvDevice.h:41

Copyright (c) 2002-2026 Pleora Technologies Inc.
www.pleora.com