Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



PvCoreGEVLite.h
1 // *****************************************************************************
2 //
3 // Copyright (c) 2025, Pleora Technologies Inc., All rights reserved.
4 //
5 // *****************************************************************************
6 
7 #ifndef __PVCOREGEVLITE_H__
8 #define __PVCOREGEVLITE_H__
9 
10 #include <PvCoreGEVLiteLib.h>
11 
12 #include <PvVirtualDeviceGEVInterfaces.h>
13 
14 
15 namespace PvVirtualDeviceLib
16 {
17  class ISoftDeviceGEV;
18  class IActionHandler;
19 }
20 
21 
22 namespace PvCoreGEVLiteLib
23 {
24  class CoreGEVLite;
25 }
26 
27 
28 class IPvUserSetNotify;
29 
30 
61 class PV_COREGEV_LITE_API PvCoreGEVLite
62  : public IPvVirtualDeviceGEV
63 {
64 public:
65 
69  PvCoreGEVLite( uint32_t aCoreBaseAddress );
70 
74  virtual ~PvCoreGEVLite();
75 
86  IPvVirtualDeviceGEVInfo *GetInfo() override;
87 
102  //PvResult AddStream( IPvStreamingChannelSource * aSource ) override;
103 
174  PvResult SetUserSetCount( uint32_t aCount ) override;
175 
184  PvResult SetUserSetNotify( IPvUserSetNotify *aUserSetNotify ) override;
185 
191  PvResult SetActionHandler( PvVirtualDeviceLib::IActionHandler *aActionHandler ) override;
192 
207  IPvRegisterMap *GetRegisterMap() override;
208 
224  PvResult Start( const PvString &aMACAddress ) override;
225 
234  PvResult Stop() override;
235 
244 
259 
275 
289 
303  PvResult GetGenICamXMLFile( PvString &aString ) const;
304 
305 protected:
306 
307  //PvVirtualDeviceLib::ISoftDeviceGEV *GetDevice() const { return mThis; }
308 
314  uint32_t GetStreamCount() const;
315 
316 private:
317 
318  PvCoreGEVLiteLib::CoreGEVLite* mThis;
319 
320 };
321 
322 
323 #endif // __PVCOREGEVLITE_H__
Messaging channel interface of the software-based GigE Vision Device.
Definition: PvVirtualDeviceGEVInterfaces.h:538
Register map interface for a software-based GigE Vision Device.
Definition: PvVirtualDeviceGEVInterfaces.h:1910
An interface to register a state change callback for UserSets.
Definition: IPvUserSetNotify.h:33
Interface that is used by PvSoftDeviceGEV to report internal events.
Definition: PvVirtualDeviceGEVInterfaces.h:631
Interface to the main class of the software-based GigE Vision Device.
Definition: PvVirtualDeviceGEVInterfaces.h:2929
virtual IPvVirtualDeviceGEVInfo * GetInfo()=0
Obtains the information interface of the PvSoftDeviceGEV.
virtual PvResult Start(const PvString &aMACAddress)=0
Starts the PvSoftDeviceGEV.
virtual IPvRegisterMap * GetRegisterMap()=0
Obtains the register map interface of the PvSoftDeviceGEV.
virtual IPvMessageChannel * GetMessagingChannel()=0
Obtains the messaging channel interface of the PvSoftDeviceGEV.
virtual PvResult SetActionHandler(PvVirtualDeviceLib::IActionHandler *aActionHandler)=0
Sets the action handler for the PvSoftDeviceGEV.
virtual PvResult RegisterEventSink(IPvVirtualDeviceGEVEventSink *aEventSink)=0
Registers an event sink to receive notifications from the PvSoftDeviceGEV.
virtual PvResult SetUserSetCount(uint32_t aCount)=0
Sets the number of user-sets supported by the PvSoftDeviceGEV.
virtual IPvVirtualDeviceGEVStatistics * GetStatistics()=0
Obtains the statistics interface of the PvSoftDeviceGEV.
virtual PvResult Stop()=0
Stops the PvSoftDeviceGEV.
virtual PvResult SetUserSetNotify(IPvUserSetNotify *aUserSetNotify)=0
Binds in a class which will contain a callback which will be called when the state of a UsersetLoad/S...
virtual PvResult GetGenICamXMLFile(PvString &aString) const =0
Returns the GenICam XML file of the device.
virtual PvResult UnregisterEventSink(IPvVirtualDeviceGEVEventSink *aEventSink)=0
Unregisters a previously registered event sink.
Interface that is used to customize the identity of a software-based GigE Vision Device.
Definition: PvVirtualDeviceGEVInterfaces.h:73
Interface that is used to retrieve control channel statistics from a software-based GigE Vision Devic...
Definition: PvVirtualDeviceGEVInterfaces.h:377
Result information.
Definition: PvResult.h:30
String class.
Definition: PvString.h:26

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