Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



Loading...
Searching...
No Matches
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
17class PvDevice;
18class PvStream;
20
21namespace PvCameraBridgeLib
22{
23 class CameraBridge;
24}
25
26
28typedef enum
29{
31 PvCameraBridgeUnknown = -1,
33 PvCameraBridgePCF = 0,
35 PvCameraBridgeCLP,
37 PvCameraBridgeGenCP
38
39} PvCameraBridgeType;
40
41
48class PV_CAMERABRIDGE_API PvCameraBridgeEventSink
49{
50public:
51
56
61
70 virtual PvResult OnSetParameter( const PvString &aName, const PvString &aValue );
71
77 virtual void OnError( const PvString &aMessage );
78
79};
80
81
90class PV_CAMERABRIDGE_API PvCameraBridge
91{
92public:
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
398protected:
399
400private:
401
402 PvCameraBridgeLib::CameraBridge *mThis;
403
404 // Not implemented
406 const PvCameraBridge& operator=( const PvCameraBridge & );
407
408};
409
410#endif
Device serial communication constants.
PvDeviceSerial
Device serial port enumeration.
Definition PvDeviceSerialEnums.h:20
Event sink interface for PvCameraBridge events.
Definition PvCameraBridge.h:49
Bridge between a PvDevice and a camera connected through a serial port.
Definition PvCameraBridge.h:91
Reads and restores configuration data from persistence files.
Definition PvConfigurationReader.h:29
Writes configuration data to persistence files.
Definition PvConfigurationWriter.h:29
Connect, configure and control a GigE Vision or USB3 Vision device.
Definition PvDevice.h:42
GenICam feature array.
Definition PvGenParameterArray.h:73
Result information.
Definition PvResult.h:30
Receive data from a GigE Vision or USB3 Vision transmitter.
Definition PvStream.h:51
String class.
Definition PvString.h:26
Class used to hold a group of PvString objects.
Definition PvStringList.h:20

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