Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



Loading...
Searching...
No Matches
PvDevice.h
1// *****************************************************************************
2//
3// Copyright (c) 2007, Pleora Technologies Inc., All rights reserved.
4//
5// *****************************************************************************
6
7#ifndef __PVDEVICE_H__
8#define __PVDEVICE_H__
9
10#include <PvDeviceLib.h>
11#include <PvDeviceInfo.h>
12#include <PvGenParameterArray.h>
13#include <PvDeviceEnums.h>
14#include <PvDeviceEventSink.h>
15
16
18
19namespace PvDeviceLib
20{
21 class Device;
22}
23
24
28
41class PV_DEVICE_API PvDevice
42{
43public:
47 virtual ~PvDevice();
48
73 static PvDevice *CreateAndConnect( const PvDeviceInfo *aDeviceInfo, PvResult *aResult );
74
98 static PvDevice *CreateAndConnect( const PvString &aInfo, PvResult *aResult );
99
111 static void Free( PvDevice *aDevice );
112
118 PvDeviceType GetType() const;
119
142 virtual PvResult Connect( const PvDeviceInfo *aDeviceInfo );
143
185 virtual PvResult Connect( const PvString &aInfo );
186
196 PvResult Disconnect();
197
219 PvResult StreamEnable( uint32_t aChannel = 0 );
220
242 PvResult StreamDisable( uint32_t aChannel = 0 );
243
249 bool IsConnected() const;
250
256 bool IsPleoraPowered() const;
257
273 PvResult DumpGenICamXML( const PvString &aFilename );
274
289 PvResult GetDefaultGenICamXMLFilename( PvString &aFilename );
290
299 PvGenParameterArray *GetParameters();
300
309 PvGenParameterArray *GetCommunicationParameters();
310
329 PvResult ReadMemory( int64_t aAddress, unsigned char *aDestination, int64_t aByteCount );
330
359 PvResult WriteMemory( int64_t aAddress, const unsigned char *aSource, int64_t aByteCount );
360
375 PvResult WaitForMessagingChannelIdle( uint32_t aTimeout );
376
388 PvResult RegisterEventSink( PvDeviceEventSink *aEventSink );
389
401 PvResult UnregisterEventSink( PvDeviceEventSink *aEventSink );
402
410 uint32_t GetHeartbeatThreadPriority() const;
411
431 PvResult SetHeartbeatThreadPriority( uint32_t aPriority );
432
440 uint32_t GetInterruptLinkThreadPriority() const;
441
461 PvResult SetInterruptLinkThreadPriority( uint32_t aPriority );
462
470 uint32_t GetInterruptQueueThreadPriority() const;
471
490 PvResult SetInterruptQueueThreadPriority( uint32_t aPriority );
491
501 uint32_t GetPayloadSize();
502
513 PvResult GetUniqueID( PvString &aID );
514
515protected:
519 PvDevice();
520
521 PvDeviceLib::Device *mThis;
522
523private:
524
525 // Not implemented
526 PvDevice( const PvDevice & );
527 const PvDevice &operator=( const PvDevice & );
528
529};
530
531#endif
PvDevice library enumerations.
PvDeviceType
Device type enumeration.
Definition PvSystemEnums.h:123
Reads and restores configuration data from persistence files.
Definition PvConfigurationReader.h:29
Writes configuration data to persistence files.
Definition PvConfigurationWriter.h:29
Observer interface for an observable PvDevice object.
Definition PvDeviceEventSink.h:66
Connect, configure and control a GigE Vision or USB3 Vision device.
Definition PvDevice.h:42
Information identifying a device.
Definition PvDeviceInfo.h:27
GenICam feature array.
Definition PvGenParameterArray.h:73
Result information.
Definition PvResult.h:30
String class.
Definition PvString.h:26

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