Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



Loading...
Searching...
No Matches
PvVirtualDeviceGEVInterfaces.h
1//* ****************************************************************************
2//
3// Copyright (c) 2025, Pleora Technologies Inc., All rights reserved.
4//
5//* ****************************************************************************
6
7#ifndef __PVVIRTUALDEVICEGEVINTERFACES_H__
8#define __PVVIRTUALDEVICEGEVINTERFACES_H__
9
10#include <PvVirtualDeviceLib.h>
11#include <PvDeviceEnums.h>
12#include <PvGenTypes.h>
13#include <PvPixelType.h>
14#include <PvPayloadType.h>
15
16
21class IPvRegisterMap;
23
24
25namespace PvVirtualDeviceLib
26{
27 class IActionHandler;
28}
29
30
32enum PvScanType
33{
35 PvScanTypeInvalid = -1,
37 PvScanTypeArea = 0,
39 PvScanTypeLine = 1,
41 PvScanTypeArea3D = 2,
43 PvScanTypeLine3D = 3
44};
45
46
72class PV_VIRTUAL_DEVICE_API IPvVirtualDeviceGEVInfo
73{
74public:
75
80
88 virtual const PvString& GetManufacturerName() = 0;
89
97 virtual const PvString& GetModelName() = 0;
98
106 virtual const PvString& GetDeviceVersion() = 0;
107
115 virtual const PvString& GetDeviceFirmwareVersion() = 0;
116
125
133 virtual const PvString& GetSerialNumber() = 0;
134
147 virtual PvResult SetManufacturerName( const PvString& aValue ) = 0;
148
161 virtual PvResult SetModelName( const PvString& aValue ) = 0;
162
175 virtual PvResult SetDeviceVersion( const PvString& aValue ) = 0;
176
189 virtual PvResult SetDeviceFirmwareVersion( const PvString& aValue ) = 0;
190
206 virtual PvResult SetManufacturerInformation( const PvString& aValue ) = 0;
207
220 virtual PvResult SetSerialNumber( const PvString& aValue ) = 0;
221
229 virtual uint16_t GetGenICamXMLVersionMajor() const = 0;
230
238 virtual uint16_t GetGenICamXMLVersionMinor() const = 0;
239
247 virtual uint16_t GetGenICamXMLVersionSubMinor() const = 0;
248
256 virtual const PvString& GetGenICamXMLProductGUID() = 0;
257
265 virtual const PvString& GetGenICamXMLVersionGUID() = 0;
266
274 virtual const PvString& GetGenICamXMLRegDescModelName() { return GetModelName(); }
275
283 virtual const PvString& GetGenICamXMLRegDescVendorName() { return GetManufacturerName(); }
284
299 virtual PvResult SetGenICamXMLVersion( uint16_t aMajor, uint16_t aMinor, uint16_t aSubMinor ) = 0;
300
323 virtual PvResult SetGenICamXMLGUIDs( const PvString& aProduct, const PvString& aVersion ) = 0;
324
339 {
340 PVUNREFPARAM( aModelName);
341 return PvResult::Code::OK;
342 }
343
358 {
359 PVUNREFPARAM( aVendorName );
360 return PvResult::Code::OK;
361 }
362
363};
364
365
376class PV_VIRTUAL_DEVICE_API IPvVirtualDeviceGEVStatistics
377{
378public:
379
384
388 virtual void Reset() = 0;
389
395 virtual uint64_t GetReadMemsReceived() const = 0;
396
402 virtual uint64_t GetWriteMemsReceived() const = 0;
403
409 virtual uint64_t GetReadRegsReceived() const = 0;
410
416 virtual uint64_t GetWriteRegsReceived() const = 0;
417
423 virtual uint64_t GetDiscoveriesReceived() const = 0;
424
430 virtual uint64_t GetActionCommandsReceived() const = 0;
431
437 virtual uint64_t GetForceIpsReceived() const = 0;
438
444 virtual uint64_t GetPacketResendRequestsReceived() const = 0;
445
451 virtual uint64_t GetPendingAcksIssued() const = 0;
452
458 virtual uint64_t GetRetriesReceived() const = 0;
459
465 virtual uint64_t GetRetriesReceivedMax() const = 0;
466
472 virtual uint64_t GetEventsIssued() const = 0;
473
479 virtual uint64_t GetEventDatasIssued() const = 0;
480
486 virtual uint64_t GetEventRetriesIssued() const = 0;
487
494 virtual uint64_t GetEventRetriesIssuedMax() const = 0;
495
501 virtual uint64_t GetSessionsOpened() const = 0;
502
508 virtual uint64_t GetSessionsClosed() const = 0;
509
515 virtual uint64_t GetHeartbeatFailedCount() const = 0;
516
522 virtual uint64_t GetGVSPTestPacketsIssued() const = 0;
523
524};
525
526
537class PV_VIRTUAL_DEVICE_API IPvMessageChannel
538{
539public:
540
545
567 virtual PvResult FireEvent( uint16_t aEventID, uint64_t aBlockID = 0, uint16_t aChannelIndex = 0xFFFF ) = 0;
568
595 virtual PvResult FireEvent( uint16_t aEventID, uint8_t* aData, uint32_t aDataLength, uint64_t aBlockID = 0, uint16_t aChannelIndex = 0xFFFF ) = 0;
596
606 virtual bool IsOpened() = 0;
607
608};
609
610
630class PV_VIRTUAL_DEVICE_API IPvVirtualDeviceGEVEventSink
631{
632public:
633
638
647 virtual void OnApplicationConnect( IPvVirtualDeviceGEV* aDevice, const PvString& aIPAddress, uint16_t aPort, PvAccessType aAccessType )
648 {
649 PVUNREFPARAM( aDevice );
650 PVUNREFPARAM( aIPAddress );
651 PVUNREFPARAM( aPort );
652 PVUNREFPARAM( aAccessType );
653 }
654
667 virtual void OnControlChannelStart( IPvVirtualDeviceGEV* aDevice, const PvString& aMACAddress, const PvString& aIPAddress,
668 const PvString& aMask, const PvString& aGateway, uint16_t aPort )
669 {
670 PVUNREFPARAM( aDevice );
671 PVUNREFPARAM( aMACAddress );
672 PVUNREFPARAM( aIPAddress );
673 PVUNREFPARAM( aMask );
674 PVUNREFPARAM( aGateway );
675 PVUNREFPARAM( aPort );
676 }
677
686 virtual void OnApplicationDisconnect( IPvVirtualDeviceGEV* aDevice ) { PVUNREFPARAM( aDevice ); }
687
695 virtual void OnControlChannelStop( IPvVirtualDeviceGEV* aDevice ) { PVUNREFPARAM( aDevice ); }
696
704 virtual void OnDeviceResetFull( IPvVirtualDeviceGEV* aDevice ) { PVUNREFPARAM( aDevice ); }
705
714 virtual void OnDeviceResetNetwork( IPvVirtualDeviceGEV* aDevice ) { PVUNREFPARAM( aDevice ); }
715
731 {
732 PVUNREFPARAM( aDevice );
733 PVUNREFPARAM( aFactory );
734 }
735
750 virtual void OnCreateCustomGenApiFeatures( IPvVirtualDeviceGEV* aDevice, IPvGenApiFactory* aFactory ) { PVUNREFPARAM( aDevice ); PVUNREFPARAM( aFactory ); }
751};
752
753
803class PV_VIRTUAL_DEVICE_API IPvStreamingChannelSource
804{
805public:
806
811
819 virtual uint32_t GetWidth() const = 0;
820
828 virtual uint32_t GetHeight() const = 0;
829
837 virtual uint32_t GetOffsetX() const = 0;
838
846 virtual uint32_t GetOffsetY() const = 0;
847
855 virtual PvPixelType GetPixelType() const = 0;
856
867 virtual void GetWidthInfo( uint32_t& aMin, uint32_t& aMax, uint32_t& aInc ) const = 0;
868
879 virtual void GetHeightInfo( uint32_t& aMin, uint32_t& aMax, uint32_t& aInc ) const = 0;
880
897 virtual uint32_t GetChunksSize() const = 0;
898
913 virtual uint32_t GetPayloadSize() const = 0;
914
923 virtual PvScanType GetScanType() const = 0;
924
933 virtual bool GetChunkModeActive() const = 0;
934
949 virtual bool GetChunkEnable( uint32_t aChunkID ) const = 0;
950
976 virtual PvResult GetSupportedPixelType( int aIndex, PvPixelType& aPixelType ) const = 0;
977
1006 virtual PvResult GetSupportedChunk( int aIndex, uint32_t& aID, PvString& aName ) const = 0;
1007
1028 virtual PvResult GetGevSCPSPacketSizeInfo( uint32_t& aMax ) const
1029 {
1030 PVUNREFPARAM( aMax );
1032 }
1033
1051 virtual PvResult SetWidth( uint32_t aWidth ) = 0;
1052
1070 virtual PvResult SetHeight( uint32_t aHeight ) = 0;
1071
1085 virtual PvResult SetOffsetX( uint32_t aOffsetX ) = 0;
1086
1100 virtual PvResult SetOffsetY( uint32_t aOffsetY ) = 0;
1101
1119 virtual PvResult SetPixelType( PvPixelType aPixelType ) = 0;
1120
1135 virtual PvResult SetChunkModeActive( bool aEnabled ) = 0;
1136
1152 virtual PvResult SetChunkEnable( uint32_t aChunkID, bool aEnabled ) = 0;
1153
1160 virtual void OnOpen( const PvString& aDestIP, uint16_t aDestPort ) = 0;
1161
1165 virtual void OnClose() = 0;
1166
1170 virtual void OnStreamingStart() = 0;
1171
1175 virtual void OnStreamingStop() = 0;
1176
1193 virtual void CreateRegisters( IPvRegisterMap* aRegisterMap, IPvRegisterFactory* aFactory )
1194 {
1195 PVUNREFPARAM( aRegisterMap );
1196 PVUNREFPARAM( aFactory );
1197 }
1198
1259 virtual void CreateGenApiFeatures( IPvRegisterMap* aRegisterMap, IPvGenApiFactory* aFactory )
1260 {
1261 PVUNREFPARAM( aRegisterMap );
1262 PVUNREFPARAM( aFactory );
1263 }
1264
1280 virtual bool IsPayloadTypeSupported( PvPayloadType aPayloadType )
1281 {
1282 PVUNREFPARAM( aPayloadType );
1283 return false;
1284 }
1285
1302 virtual void SetMultiPartAllowed( bool aAllowed ) { PVUNREFPARAM( aAllowed ); }
1303
1319 virtual void SetLargeLeaderTrailerEnabled( bool aEnabled, uint32_t aMaxMultiPartCount )
1320 {
1321 PVUNREFPARAM( aEnabled );
1322 PVUNREFPARAM( aMaxMultiPartCount );
1323 }
1324
1361 {
1362 PVUNREFPARAM( aPayloadType );
1364 }
1365};
1366
1367
1377class PV_VIRTUAL_DEVICE_API IPvRegisterInfo
1378{
1379public:
1380
1384 virtual ~IPvRegisterInfo() {}
1385
1398 virtual const PvString& GetName() = 0;
1399
1405 virtual uint32_t GetAddress() const = 0;
1406
1412 virtual size_t GetLength() const = 0;
1413
1419 virtual const void* GetContext() const = 0;
1420
1426 virtual void* GetContext() = 0;
1427
1441 virtual bool IsWritable() const = 0;
1442
1448 virtual bool IsReadable() const = 0;
1449
1455 virtual bool IsArrayOfBytes() const = 0;
1456};
1457
1458
1470class PV_VIRTUAL_DEVICE_API IPvRegister
1471 : public IPvRegisterInfo
1472{
1473public:
1474
1478 virtual ~IPvRegister() {}
1479
1491 virtual PvResult Read( uint8_t* aData, uint32_t aByteCount, uint32_t aOffset = 0 ) = 0;
1492
1504 virtual PvResult Write( const uint8_t* aData, uint32_t aByteCount, uint32_t aOffset = 0 ) = 0;
1505
1519 virtual PvResult Read( uint32_t& aValue, uint32_t aOffset = 0 ) = 0;
1520
1534 virtual PvResult Write( uint32_t aValue, uint32_t aOffset = 0 ) = 0;
1535
1548 virtual PvResult Read( PvString& aValue ) = 0;
1549
1562 virtual PvResult Write( const PvString& aValue ) = 0;
1563
1576 virtual PvResult ReadFloat( float& aValue ) = 0;
1577
1590 virtual PvResult WriteFloat( float aValue ) = 0;
1591
1604 virtual PvResult ReadDouble( double& aValue ) = 0;
1605
1618 virtual PvResult WriteDouble( double aValue ) = 0;
1619
1632 virtual PvResult AddEventSink( IPvRegisterEventSink* aEventSink ) = 0;
1633
1645};
1646
1647
1659class PV_VIRTUAL_DEVICE_API IPvRegisterStore
1660{
1661public:
1662
1663 virtual ~IPvRegisterStore() {}
1664
1683 virtual PvResult Persist( IPvRegister* aRegister, const PvString& aNameSuffix ) = 0;
1684};
1685
1686
1701class PV_VIRTUAL_DEVICE_API IPvRegisterEventSink
1702{
1703public:
1704
1709
1731 virtual PvResult PreRead( IPvRegister* aRegister )
1732 {
1733 PVUNREFPARAM( aRegister );
1734 return PvResult::Code::OK;
1735 }
1736
1744 virtual void PostRead( IPvRegister* aRegister ) { PVUNREFPARAM( aRegister ); }
1745
1772 virtual PvResult PreWrite( IPvRegister* aRegister )
1773 {
1774 PVUNREFPARAM( aRegister );
1775 return PvResult::Code::OK;
1776 }
1777
1789 virtual void PostWrite( IPvRegister* aRegister ) { PVUNREFPARAM( aRegister ); }
1790
1817 virtual PvResult Persist( IPvRegister* aRegister, IPvRegisterStore* aStore )
1818 {
1819 PVUNREFPARAM( aRegister );
1820 PVUNREFPARAM( aStore );
1822 }
1823};
1824
1825
1835class PV_VIRTUAL_DEVICE_API IPvRegisterFactory
1836{
1837public:
1838
1843
1859 virtual PvResult AddRegister( const PvString& aName, uint32_t aAddress, uint32_t aLength, PvGenAccessMode aAccessMode,
1860 IPvRegisterEventSink* aRegisterEventSink = nullptr, void* aContext = nullptr ) = 0;
1861
1876 virtual PvResult AddRegisterAuto( const PvString &aName, uint32_t &aAssignedAddress, uint32_t aLength, PvGenAccessMode aAccessMode,
1877 IPvRegisterEventSink *aRegisterEventSink, void *aContext = nullptr) = 0;
1878
1893 virtual PvResult AddByteArray( const PvString& aName, uint32_t aAddress, uint32_t aLength, PvGenAccessMode aAccessMode,
1894 IPvRegisterEventSink* aRegisterEventSink = nullptr, void* aContext = nullptr ) = 0;
1895};
1896
1897
1909class PV_VIRTUAL_DEVICE_API IPvRegisterMap
1910{
1911public:
1912
1916 virtual ~IPvRegisterMap() {}
1917
1926 virtual size_t GetRegisterCount() = 0;
1927
1935 virtual IPvRegister* GetRegisterByIndex( size_t aIndex ) = 0;
1936
1944 virtual IPvRegister* GetRegisterByAddress( uint32_t aAddress ) = 0;
1945
1969 virtual PvResult Lock() = 0;
1970
1984 virtual PvResult Lock( uint32_t aTimeout ) = 0;
1985
1992 virtual void Release() = 0;
1993};
1994
1995
2024class PV_VIRTUAL_DEVICE_API IPvGenApiFactory
2025{
2026public:
2027
2032
2041 virtual void SetName( const PvString& aName ) = 0;
2042
2066 virtual void SetDisplayName( const PvString& aDisplayName ) = 0;
2067
2082 virtual void SetCategory( const PvString& aCategory ) = 0;
2083
2099 virtual void SetCategory( const PvString& aCategory, const PvString& aCategoryDisplayName ) = 0;
2100
2106 virtual void SetDescription( const PvString& aDescription ) = 0;
2107
2113 virtual void SetToolTip( const PvString& aToolTip ) = 0;
2114
2124 virtual void SetAccessMode( PvGenAccessMode aAccessMode ) = 0;
2125
2131 virtual void SetRepresentation( PvGenRepresentation aRepresentation ) = 0;
2132
2138 virtual void SetVisibility( PvGenVisibility aVisibility ) = 0;
2139
2150 virtual void SetCachable( PvGenCache aCache ) = 0;
2151
2160 virtual void SetPollingTime( uint32_t aPollingTime ) = 0;
2161
2171 virtual void SetNameSpace( PvGenNameSpace aNameSpace ) = 0;
2172
2184 virtual void SetTLLocked( bool aLocked ) = 0;
2185
2194 virtual void SetStreamable( bool aStreamable ) = 0;
2195
2205 virtual void SetUnit( const PvString& aUnit ) = 0;
2206
2220 virtual void SetPValue( const PvString& aFeatureName ) = 0;
2221
2243 virtual void SetPIsAvailable( const PvString& aFeatureName ) = 0;
2244
2253 virtual void SetPIsLocked( const PvString& aFeatureName ) = 0;
2254
2269 virtual void MapChunk( uint32_t aChunkID, uint32_t aAddress, size_t aLength, PvGenEndianness aEndianness = PvGenEndiannessLittle ) = 0;
2270
2286 virtual void MapEvent( uint32_t aEventID, uint32_t aAddress, size_t aLength, PvGenEndianness aEndianness = PvGenEndiannessLittle, bool aAdjustAddress = true ) = 0;
2287
2312 virtual void AddSelected( const PvString& aFeatureName ) = 0;
2313
2322 virtual void AddInvalidator( const PvString& aFeatureName ) = 0;
2323
2336 virtual void AddEnumEntry( const PvString& aName, uint32_t aValue ) = 0;
2337
2352 virtual void AddEnumEntry( const PvString& aName, uint32_t aValue, const PvString& aDisplayName, PvGenNameSpace aNameSpace = PvGenNameSpaceCustom ) = 0;
2353
2375 virtual void AddVariable( const PvString& aFeatureName ) = 0;
2376
2395 virtual PvResult CreateInteger( IPvRegister* aRegister, int64_t aMin, int64_t aMax, int64_t aInc = 1 ) = 0;
2396
2410 virtual PvResult CreateInteger( IPvRegister* aRegister = nullptr ) = 0;
2411
2429 virtual PvResult CreateFloat( IPvRegister* aRegister, double aMin, double aMax ) = 0;
2430
2443 virtual PvResult CreateFloat( IPvRegister* aRegister = nullptr ) = 0;
2444
2459 virtual PvResult CreateString( IPvRegister* aRegister = nullptr ) = 0;
2460
2473 virtual PvResult CreateRegister( IPvRegister* aRegister = nullptr ) = 0;
2474
2489 virtual PvResult CreateBoolean( IPvRegister* aRegister = nullptr ) = 0;
2490
2505 virtual PvResult CreateCommand( IPvRegister* aRegister = nullptr ) = 0;
2506
2522 virtual PvResult CreateEnum( IPvRegister* aRegister = nullptr ) = 0;
2523
2568 virtual PvResult CreateIntSwissKnife( const PvString& aFormula ) = 0;
2569
2615 virtual PvResult CreateFloatSwissKnife( const PvString& aFormula ) = 0;
2616
2676 virtual PvResult CreateIntConverter( const PvString& aValueFeatureName, const PvString& aFromFormula, const PvString& aToFormula ) = 0;
2677
2737 virtual PvResult CreateFloatConverter( const PvString& aValueFeatureName, const PvString& aFromFormula, const PvString& aToFormula ) = 0;
2738
2756 virtual PvResult AddInvalidatorTo( const PvString& aStandardFeatureName, const PvString& aInvalidatorFeatureName ) = 0;
2757
2775 virtual PvResult AddSelectedTo( const PvString& aSelectorFeatureName, const PvString& aSelectedFeatureName ) = 0;
2776
2796 virtual PvResult SetPIsAvailableFor( const PvString& aStandardFeatureName, const PvString& aPIsAvailableFeatureName ) = 0;
2797
2818 virtual PvResult SetPIsAvailableForEnumEntry( const PvString& aStandardFeatureName, const PvString& aEnumEntryName, const PvString& aPIsAvailableFeatureName ) = 0;
2819
2830 virtual PvResult SetPIsLockedFor( const PvString& aStandardFeatureName, const PvString& aPIsLockedFeatureName ) = 0;
2831
2844 virtual PvResult SetPValueFor( const PvString& aStandardFeatureName, const PvString& aPValueFeatureName ) = 0;
2845
2858 virtual PvResult SetPMinFor( const PvString& aStandardFeatureName, const PvString& aPMinFeatureName ) = 0;
2859
2872 virtual PvResult SetPMaxFor( const PvString& aStandardFeatureName, const PvString& aPMaxFeatureName ) = 0;
2873
2886 virtual PvResult SetPIncFor( const PvString& aStandardFeatureName, const PvString& aPIncFeatureName ) = 0;
2887
2897 virtual void SetPMin( const PvString& aFeatureName ) = 0;
2898
2908 virtual void SetPMax( const PvString& aFeatureName ) = 0;
2909
2919 virtual void SetPInc( const PvString& aFeatureName ) = 0;
2920};
2921
2922
2923
2928class PV_VIRTUAL_DEVICE_API IPvVirtualDeviceGEV
2929{
2930public:
2931
2936
3007 virtual PvResult SetUserSetCount( uint32_t aCount ) = 0;
3008
3019 virtual PvResult SetUserSetNotify ( IPvUserSetNotify* aUserSetNotify ) = 0;
3020
3028 virtual PvResult SetActionHandler( PvVirtualDeviceLib::IActionHandler* aActionHandler ) = 0;
3029
3045
3059
3075 virtual PvResult Start( const PvString& aMACAddress ) = 0;
3076
3085 virtual PvResult Stop() = 0;
3086
3098
3114
3123
3138
3152 virtual PvResult GetGenICamXMLFile( PvString& aString ) const = 0;
3153};
3154
3155#endif // __PVVIRTUALDEVICEGEVINTERFACES_H__
PvDevice library enumerations.
PvAccessType
GigE Vision device access type.
Definition PvDeviceEnums.h:29
GenICam feature-related constants.
PvGenVisibility
Feature (PvGenParameter object) visibility.
Definition PvGenTypes.h:43
PvGenRepresentation
Definition PvGenTypes.h:121
PvGenEndianness
Definition PvGenTypes.h:213
@ PvGenEndiannessLittle
Litte endianness.
Definition PvGenTypes.h:217
PvGenCache
Definition PvGenTypes.h:177
PvGenAccessMode
Definition PvGenTypes.h:159
PvGenNameSpace
Definition PvGenTypes.h:147
@ PvGenNameSpaceCustom
Custom PvGenNamespace.
Definition PvGenTypes.h:151
GVSP payload type constants.
PvPayloadType
GVSP payload type.
Definition PvPayloadType.h:20
PvPixelType
Definition PvPixelType.h:51
GenApi factory used to add custom GenApi parameters to a software-based GigE Vision Device GenICam XM...
Definition PvVirtualDeviceGEVInterfaces.h:2025
virtual void SetDisplayName(const PvString &aDisplayName)=0
Sets the display name of the next feature to be added to the GenICam XML.
virtual void SetPIsLocked(const PvString &aFeatureName)=0
Sets the pIsLocked attribute of the next feature to be added to the GenICam XML.
virtual PvResult CreateFloatConverter(const PvString &aValueFeatureName, const PvString &aFromFormula, const PvString &aToFormula)=0
Adds a float Converter to the GenICam XML file using the current state of the factory for its attribu...
virtual PvResult SetPValueFor(const PvString &aStandardFeatureName, const PvString &aPValueFeatureName)=0
Forces a pValue reference for a feature managed by PvSoftDeviceGEV.
virtual void SetCategory(const PvString &aCategory, const PvString &aCategoryDisplayName)=0
Sets the category and display name of the next feature to be added to the GenICam XML file.
virtual PvResult CreateFloatSwissKnife(const PvString &aFormula)=0
Adds a float SwissKnife to the GenICam XML file using the current state of the factory for its attrib...
virtual PvResult SetPIsLockedFor(const PvString &aStandardFeatureName, const PvString &aPIsLockedFeatureName)=0
Forces a pIsLocked reference for a feature managed by PvSoftDeviceGEV.
virtual PvResult SetPIsAvailableForEnumEntry(const PvString &aStandardFeatureName, const PvString &aEnumEntryName, const PvString &aPIsAvailableFeatureName)=0
Forces a pIsAvailable reference for a the enum entry of an enum feature managed by PvSoftDeviceGEV.
virtual void SetDescription(const PvString &aDescription)=0
Sets the description of the next feature to be added to the GenICam XML file.
virtual void SetPMax(const PvString &aFeatureName)=0
Sets node to use for integer or float dynamic maximum attribute.
virtual PvResult AddInvalidatorTo(const PvString &aStandardFeatureName, const PvString &aInvalidatorFeatureName)=0
Adds a a custom invalidator to a feature managed by PvSoftDeviceGEV.
virtual PvResult CreateIntConverter(const PvString &aValueFeatureName, const PvString &aFromFormula, const PvString &aToFormula)=0
Adds an integer Converter to the GenICam XML file using the current state of the factory for its attr...
virtual PvResult CreateFloat(IPvRegister *aRegister=nullptr)=0
Adds a float feature to the GenICam XML file using the current state of the factory for its attribute...
virtual void SetRepresentation(PvGenRepresentation aRepresentation)=0
Sets the numeric representation of the next feature to be added to the GenICam XML file.
virtual void AddVariable(const PvString &aFeatureName)=0
Adds a variable that will be declared for the next SwissKnife of Converter to be added to the GenICam...
virtual void SetCachable(PvGenCache aCache)=0
Sets the cache behavior of the next feature to be added to the GenICam XML file.
virtual void SetVisibility(PvGenVisibility aVisibility)=0
Sets the visibility of the next feature to be added to the GenICam XML.
virtual PvResult CreateFloat(IPvRegister *aRegister, double aMin, double aMax)=0
Adds a float feature to the GenICam XML file using the current state of the factory for its attribute...
virtual void AddSelected(const PvString &aFeatureName)=0
Adds a selector to the next feature to be added to the GenICam XML file.
virtual void MapEvent(uint32_t aEventID, uint32_t aAddress, size_t aLength, PvGenEndianness aEndianness=PvGenEndiannessLittle, bool aAdjustAddress=true)=0
Maps the next feature to be added to the GenICam XML file to a messaging channel event,...
virtual void SetCategory(const PvString &aCategory)=0
Sets the category of the next feature to be added to the GenICam XML file.
virtual PvResult CreateIntSwissKnife(const PvString &aFormula)=0
Adds an integer SwissKnife to the GenICam XML file using the current state of the factory for its att...
virtual PvResult CreateRegister(IPvRegister *aRegister=nullptr)=0
Adds a register feature to the GenICam XML file using the current state of the factory for its attrib...
virtual void SetStreamable(bool aStreamable)=0
Sets the streamable behaviour of the next feature to be added to the GenICam XML.
virtual PvResult CreateCommand(IPvRegister *aRegister=nullptr)=0
Adds a command feature to the GenICam XML file using the current state of the factory for its attribu...
virtual void SetPInc(const PvString &aFeatureName)=0
Sets node to use for integer dynamic increment attribute.
virtual void SetPMin(const PvString &aFeatureName)=0
Sets node to use for integer or float dynamic minimum attribute.
virtual void SetAccessMode(PvGenAccessMode aAccessMode)=0
Sets the access mode of the next feature to be added to the GenICam XML file.
virtual void SetPollingTime(uint32_t aPollingTime)=0
Sets the polling time, in ms, of the next feature to be added to the GenICam XML file.
virtual void AddEnumEntry(const PvString &aName, uint32_t aValue, const PvString &aDisplayName, PvGenNameSpace aNameSpace=PvGenNameSpaceCustom)=0
Add an enumeration entry to the next feature to be added to the GenICam XML file.
virtual PvResult SetPMinFor(const PvString &aStandardFeatureName, const PvString &aPMinFeatureName)=0
Forces a pMin reference for an integer or float feature managed by PvSoftDeviceGEV.
virtual ~IPvGenApiFactory()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:2031
virtual void SetNameSpace(PvGenNameSpace aNameSpace)=0
Sets the namespace of the next feature to be added to the GenICam XML file.
virtual void SetPValue(const PvString &aFeatureName)=0
Sets the pValue attribute of the next feature to be added to the GenICam XML.
virtual void AddInvalidator(const PvString &aFeatureName)=0
Add an invalidator to the next feature to be added to the GenICam XML file.
virtual void AddEnumEntry(const PvString &aName, uint32_t aValue)=0
Add an enumeration entry to the next feature to be added to the GenICam XML file.
virtual PvResult CreateInteger(IPvRegister *aRegister=nullptr)=0
Adds an integer feature to the GenICam XML file using the current state of the factory for its attrib...
virtual PvResult CreateEnum(IPvRegister *aRegister=nullptr)=0
Adds an enumeration feature to the GenICam XML file using the current state of the factory for its at...
virtual PvResult SetPIsAvailableFor(const PvString &aStandardFeatureName, const PvString &aPIsAvailableFeatureName)=0
Forces a pIsAvailable reference for a feature managed by PvSoftDeviceGEV.
virtual PvResult SetPIncFor(const PvString &aStandardFeatureName, const PvString &aPIncFeatureName)=0
Forces a pInc reference for an integer feature managed by PvSoftDeviceGEV.
virtual void SetUnit(const PvString &aUnit)=0
Sets the units for an integer or float feature.
virtual void SetToolTip(const PvString &aToolTip)=0
Sets the tooltip of the next feature to be added to the GenICam XML file.
virtual PvResult AddSelectedTo(const PvString &aSelectorFeatureName, const PvString &aSelectedFeatureName)=0
Adds a custom pSelected entry to a selector feature managed by PvSoftDeviceGEV.
virtual void MapChunk(uint32_t aChunkID, uint32_t aAddress, size_t aLength, PvGenEndianness aEndianness=PvGenEndiannessLittle)=0
Maps the next feature to be added to the GenICam XML file to a chunk, identified by its ID.
virtual void SetPIsAvailable(const PvString &aFeatureName)=0
Sets the pIsAvaialble attribute of the next feature to be added to the GenICam XML.
virtual PvResult SetPMaxFor(const PvString &aStandardFeatureName, const PvString &aPMaxFeatureName)=0
Forces a pMax reference for an integer or float feature managed by PvSoftDeviceGEV.
virtual PvResult CreateString(IPvRegister *aRegister=nullptr)=0
Adds a string feature to the GenICam XML file using the current state of the factory for its attribut...
virtual PvResult CreateBoolean(IPvRegister *aRegister=nullptr)=0
Adds a Boolean feature to the GenICam XML file using the current state of the factory for its attribu...
virtual PvResult CreateInteger(IPvRegister *aRegister, int64_t aMin, int64_t aMax, int64_t aInc=1)=0
Adds an integer feature to the GenICam XML file using the current state of the factory for its attrib...
virtual void SetTLLocked(bool aLocked)=0
Sets the TLParamsLocked behavior of the next feature to be added to the GenICam XML file.
virtual void SetName(const PvString &aName)=0
Sets the name of the next feature to be added to the GenICam XML file.
Messaging channel interface of the software-based GigE Vision Device.
Definition PvVirtualDeviceGEVInterfaces.h:538
virtual PvResult FireEvent(uint16_t aEventID, uint64_t aBlockID=0, uint16_t aChannelIndex=0xFFFF)=0
Fires a messaging channel event.
virtual bool IsOpened()=0
Indicates whether the messaging channel is open.
virtual PvResult FireEvent(uint16_t aEventID, uint8_t *aData, uint32_t aDataLength, uint64_t aBlockID=0, uint16_t aChannelIndex=0xFFFF)=0
Fires a messaging channel event.
virtual ~IPvMessageChannel()
Destructor.
Definition PvVirtualDeviceGEVInterfaces.h:544
Interface that is used to report the register activity of the software-based GigE Vision Device.
Definition PvVirtualDeviceGEVInterfaces.h:1702
virtual PvResult PreWrite(IPvRegister *aRegister)
Pre-write register notification.
Definition PvVirtualDeviceGEVInterfaces.h:1772
virtual void PostWrite(IPvRegister *aRegister)
Post-write register notification.
Definition PvVirtualDeviceGEVInterfaces.h:1789
virtual void PostRead(IPvRegister *aRegister)
Post-read register notification.
Definition PvVirtualDeviceGEVInterfaces.h:1744
virtual ~IPvRegisterEventSink()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:1708
virtual PvResult Persist(IPvRegister *aRegister, IPvRegisterStore *aStore)
Peristence request for selected registers for user-sets.
Definition PvVirtualDeviceGEVInterfaces.h:1817
virtual PvResult PreRead(IPvRegister *aRegister)
Pre-read register notification.
Definition PvVirtualDeviceGEVInterfaces.h:1731
Class used for register creation.
Definition PvVirtualDeviceGEVInterfaces.h:1836
virtual PvResult AddByteArray(const PvString &aName, uint32_t aAddress, uint32_t aLength, PvGenAccessMode aAccessMode, IPvRegisterEventSink *aRegisterEventSink=nullptr, void *aContext=nullptr)=0
Adds a new array of bytes (String, Register) to the PvSoftDeviceGEV register map.
virtual PvResult AddRegister(const PvString &aName, uint32_t aAddress, uint32_t aLength, PvGenAccessMode aAccessMode, IPvRegisterEventSink *aRegisterEventSink=nullptr, void *aContext=nullptr)=0
Adds a new register (Integer, Float) to the PvSoftDeviceGEV register map.
virtual ~IPvRegisterFactory()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:1842
virtual PvResult AddRegisterAuto(const PvString &aName, uint32_t &aAssignedAddress, uint32_t aLength, PvGenAccessMode aAccessMode, IPvRegisterEventSink *aRegisterEventSink, void *aContext=nullptr)=0
Automatically assigns an address and adds a new register (Integer, Float) to the PvSoftDeviceGEV regi...
Interface that is used to access the registers of the software-based GigE Vision Device.
Definition PvVirtualDeviceGEVInterfaces.h:1472
virtual ~IPvRegister()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:1478
virtual PvResult Read(uint32_t &aValue, uint32_t aOffset=0)=0
Reads the register content to a 4-byte unsigned integer.
virtual PvResult ReadDouble(double &aValue)=0
Reads the register content to a double precision floating point.
virtual PvResult Read(PvString &aValue)=0
Reads the register content to a string.
virtual PvResult AddEventSink(IPvRegisterEventSink *aEventSink)=0
Registers a IPvRegisterEventSink for register callbacks.
virtual PvResult Read(uint8_t *aData, uint32_t aByteCount, uint32_t aOffset=0)=0
Reads a register to an array of bytes.
virtual PvResult Write(const uint8_t *aData, uint32_t aByteCount, uint32_t aOffset=0)=0
Writes an array of bytes to a register.
virtual PvResult Write(uint32_t aValue, uint32_t aOffset=0)=0
Writes the register content from a 4-byte unsigned integer.
virtual PvResult RemoveEventSink(IPvRegisterEventSink *aEventSink)=0
Removes an event sink registered with AddEventSink.
virtual PvResult WriteFloat(float aValue)=0
Writes the register content from a float.
virtual PvResult WriteDouble(double aValue)=0
Writes the register content from a double precision floating point.
virtual PvResult Write(const PvString &aValue)=0
Writes the register content from a string.
virtual PvResult ReadFloat(float &aValue)=0
Reads the register content to a 4-byte float.
Interface to access basic information about a PvSoftDeviceGEV register.
Definition PvVirtualDeviceGEVInterfaces.h:1378
virtual bool IsWritable() const =0
Indicates whether the register is writable.
virtual const PvString & GetName()=0
Returns the register name.
virtual uint32_t GetAddress() const =0
Returns the register address.
virtual bool IsArrayOfBytes() const =0
Indicates whether the register is an array of bytes or plain data type.
virtual ~IPvRegisterInfo()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:1384
virtual size_t GetLength() const =0
Returns the length of the register, in bytes.
virtual bool IsReadable() const =0
Indicates whether the register is readable.
virtual void * GetContext()=0
Returns the contextual pointer provided at register creation.
virtual const void * GetContext() const =0
Returns the contextual pointer provided at register creation.
Register map interface for a software-based GigE Vision Device.
Definition PvVirtualDeviceGEVInterfaces.h:1910
virtual size_t GetRegisterCount()=0
Obtains a count of how many registers are in the PvSoftDeviceGEV register map.
virtual void Release()=0
Releases a lock acquired with Lock.
virtual PvResult Lock(uint32_t aTimeout)=0
Locks the register map for safe register access but fails on timeout.
virtual ~IPvRegisterMap()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:1916
virtual IPvRegister * GetRegisterByAddress(uint32_t aAddress)=0
Obtains a register from the register map based on the register's address.
virtual IPvRegister * GetRegisterByIndex(size_t aIndex)=0
Obtains a register from the register map based on the register's index.
virtual PvResult Lock()=0
Locks the register map for safe register access.
Class used with register persistence in the context of user-sets.
Definition PvVirtualDeviceGEVInterfaces.h:1660
virtual PvResult Persist(IPvRegister *aRegister, const PvString &aNameSuffix)=0
Persists a register to the register store using a name suffix.
Interface that is used by PvSoftDeviceGEV to query and report information from a streaming source imp...
Definition PvVirtualDeviceGEVInterfaces.h:804
virtual ~IPvStreamingChannelSource()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:810
virtual PvResult SetTestPayloadFormatMode(PvPayloadType aPayloadType)
When called, the streaming source has to ensure it can stream buffers of the specified payload type.
Definition PvVirtualDeviceGEVInterfaces.h:1360
virtual void SetMultiPartAllowed(bool aAllowed)
Sets whether the streaming source is allowed or not, but not forced, to transmit multi-part data.
Definition PvVirtualDeviceGEVInterfaces.h:1302
virtual PvPixelType GetPixelType() const =0
Returns the current pixel type.
virtual void SetLargeLeaderTrailerEnabled(bool aEnabled, uint32_t aMaxMultiPartCount)
Sets whether the streaming source which transmit multi-part data uses large data leader and trailer p...
Definition PvVirtualDeviceGEVInterfaces.h:1319
virtual uint32_t GetOffsetX() const =0
Returns the current image offset X.
virtual uint32_t GetPayloadSize() const =0
Stream channel payload size in bytes. Return zero to have it inferred from width, height and pixel fo...
virtual PvResult SetWidth(uint32_t aWidth)=0
Request from the PvSoftDeviceGEV to change the image width.
virtual PvResult SetOffsetX(uint32_t aOffsetX)=0
Request from the PvSoftDeviceGEV to change the image offset X.
virtual void CreateRegisters(IPvRegisterMap *aRegisterMap, IPvRegisterFactory *aFactory)
When called, the streaming channel source should create its custom registers if they are needed.
Definition PvVirtualDeviceGEVInterfaces.h:1193
virtual void GetWidthInfo(uint32_t &aMin, uint32_t &aMax, uint32_t &aInc) const =0
Returns the stream channel width attributes.
virtual PvResult GetSupportedChunk(int aIndex, uint32_t &aID, PvString &aName) const =0
Returns the indexed supported chunk type. Used at PvSoftDeviceGEV::Start time to create the GenICam X...
virtual void OnOpen(const PvString &aDestIP, uint16_t aDestPort)=0
Notification from the PvSoftDeviceGEV that this streaming channel has been opened.
virtual PvResult SetChunkModeActive(bool aEnabled)=0
Set the master chunk mode active state.
virtual void OnStreamingStart()=0
Notification that the GigE Vision controller has requested that the device start streaming on this ch...
virtual uint32_t GetWidth() const =0
Returns the current image width.
virtual PvResult SetPixelType(PvPixelType aPixelType)=0
Request from the PvSoftDeviceGEV to change the image pixel type.
virtual PvResult SetHeight(uint32_t aHeight)=0
Request from the PvSoftDeviceGEV to change the image height.
virtual PvScanType GetScanType() const =0
Returns the scan type that is used by the streaming source.
virtual PvResult SetOffsetY(uint32_t aOffsetY)=0
Request from the PvSoftDeviceGEV to change the image offset Y.
virtual uint32_t GetHeight() const =0
Returns the current image height.
virtual PvResult GetGevSCPSPacketSizeInfo(uint32_t &aMax) const
Get the customized max value for GevSCPSPacketSize. Used at PvSoftDeviceGEV::Start time to create the...
Definition PvVirtualDeviceGEVInterfaces.h:1028
virtual void CreateGenApiFeatures(IPvRegisterMap *aRegisterMap, IPvGenApiFactory *aFactory)
When called, the streaming channel source should create its custom GenApi parameters if they are need...
Definition PvVirtualDeviceGEVInterfaces.h:1259
virtual PvResult GetSupportedPixelType(int aIndex, PvPixelType &aPixelType) const =0
Obtains an index of supported pixel types. Used at PvSoftDeviceGEV::Start time to create the GenICam ...
virtual void OnStreamingStop()=0
Notification that the GigE Vision controller has requested that the device stop streaming on this cha...
virtual uint32_t GetOffsetY() const =0
Returns the current image offset Y.
virtual uint32_t GetChunksSize() const =0
Gets the stream channel chunk size attributes.
virtual bool GetChunkEnable(uint32_t aChunkID) const =0
Returns the current chunk enabled state.
virtual void GetHeightInfo(uint32_t &aMin, uint32_t &aMax, uint32_t &aInc) const =0
Returns the stream channel height attributes.
virtual PvResult SetChunkEnable(uint32_t aChunkID, bool aEnabled)=0
Sets the chunk enabled state for a specific chunk type.
virtual bool IsPayloadTypeSupported(PvPayloadType aPayloadType)
When called, the streaming source has to return whether the specificed payload type is supported or n...
Definition PvVirtualDeviceGEVInterfaces.h:1280
virtual void OnClose()=0
Notification from the PvSoftDeviceGEV that this streaming channel has been closed.
virtual bool GetChunkModeActive() const =0
Indicates whether the current master chunk mode is active.
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
virtual void OnApplicationDisconnect(IPvVirtualDeviceGEV *aDevice)
Notification that the GigE Vision controller has released the control channel of the PvSoftDeviceGEV.
Definition PvVirtualDeviceGEVInterfaces.h:686
virtual void OnDeviceResetNetwork(IPvVirtualDeviceGEV *aDevice)
Notification that the PvSoftDeviceGEV has reset its network stack.
Definition PvVirtualDeviceGEVInterfaces.h:714
virtual ~IPvVirtualDeviceGEVEventSink()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:637
virtual void OnCreateCustomRegisters(IPvVirtualDeviceGEV *aDevice, IPvRegisterFactory *aFactory)
Notification that the PvSoftDeviceGEV should create its custom registers, if they are needed.
Definition PvVirtualDeviceGEVInterfaces.h:730
virtual void OnApplicationConnect(IPvVirtualDeviceGEV *aDevice, const PvString &aIPAddress, uint16_t aPort, PvAccessType aAccessType)
Notification that a GigE Vision controller has taken ownership of the control channel of your PvSoftD...
Definition PvVirtualDeviceGEVInterfaces.h:647
virtual void OnCreateCustomGenApiFeatures(IPvVirtualDeviceGEV *aDevice, IPvGenApiFactory *aFactory)
Notification that the PvSoftDeviceGEV should create its custom GenApi parameters, if they are needed.
Definition PvVirtualDeviceGEVInterfaces.h:750
virtual void OnControlChannelStop(IPvVirtualDeviceGEV *aDevice)
Notification that the control channel of the PvSoftDeviceGEV has been stopped.
Definition PvVirtualDeviceGEVInterfaces.h:695
virtual void OnControlChannelStart(IPvVirtualDeviceGEV *aDevice, const PvString &aMACAddress, const PvString &aIPAddress, const PvString &aMask, const PvString &aGateway, uint16_t aPort)
Notification that the control channel of the PvSoftDeviceGEV has been started.
Definition PvVirtualDeviceGEVInterfaces.h:667
virtual void OnDeviceResetFull(IPvVirtualDeviceGEV *aDevice)
Notification that the PvSoftDeviceGEV has performed a full reset.
Definition PvVirtualDeviceGEVInterfaces.h:704
Interface to the main class of the software-based GigE Vision Device.
Definition PvVirtualDeviceGEVInterfaces.h:2929
virtual ~IPvVirtualDeviceGEV()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:2935
virtual PvResult Start(const PvString &aMACAddress)=0
Starts the PvSoftDeviceGEV.
virtual IPvVirtualDeviceGEVStatistics * GetStatistics()=0
Obtains the statistics interface of the PvSoftDeviceGEV.
virtual IPvRegisterMap * GetRegisterMap()=0
Obtains the register map interface of the PvSoftDeviceGEV.
virtual PvResult SetActionHandler(PvVirtualDeviceLib::IActionHandler *aActionHandler)=0
Sets the action handler for the PvSoftDeviceGEV.
virtual IPvVirtualDeviceGEVInfo * GetInfo()=0
Obtains the information interface of the PvSoftDeviceGEV.
virtual PvResult RegisterEventSink(IPvVirtualDeviceGEVEventSink *aEventSink)=0
Registers an event sink to receive notifications from the PvSoftDeviceGEV.
virtual IPvMessageChannel * GetMessagingChannel()=0
Obtains the messaging channel interface of the PvSoftDeviceGEV.
virtual PvResult SetUserSetCount(uint32_t aCount)=0
Sets the number of user-sets supported by 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
virtual const PvString & GetManufacturerInformation()=0
Returns the current manufacturer information string.
virtual uint16_t GetGenICamXMLVersionMinor() const =0
Returns the GenICam XML file minor version.
virtual PvResult SetGenICamXMLRegDescVendorName(const PvString &aVendorName)
Set the GenICam XML register description vendor name.
Definition PvVirtualDeviceGEVInterfaces.h:357
virtual PvResult SetManufacturerName(const PvString &aValue)=0
Updates the manufacturer name string.
virtual const PvString & GetManufacturerName()=0
Returns the current manufacturer name.
virtual PvResult SetSerialNumber(const PvString &aValue)=0
Updates the serial number string.
virtual const PvString & GetDeviceVersion()=0
Returns the current PvSoftDeviceGEV version string.
virtual PvResult SetDeviceVersion(const PvString &aValue)=0
Updates the device version string.
virtual ~IPvVirtualDeviceGEVInfo()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:79
virtual const PvString & GetModelName()=0
Returns the current model name.
virtual PvResult SetManufacturerInformation(const PvString &aValue)=0
Updates the manufacturer information string.
virtual const PvString & GetGenICamXMLRegDescVendorName()
Returns the GenICam XML Register Description vendor name.
Definition PvVirtualDeviceGEVInterfaces.h:283
virtual const PvString & GetGenICamXMLRegDescModelName()
Returns the GenICam XML Register Description model name.
Definition PvVirtualDeviceGEVInterfaces.h:274
virtual PvResult SetGenICamXMLVersion(uint16_t aMajor, uint16_t aMinor, uint16_t aSubMinor)=0
Sets the GenICam XML file version.
virtual const PvString & GetGenICamXMLVersionGUID()=0
Returns the GenICam XML file Version GUID.
virtual PvResult SetModelName(const PvString &aValue)=0
Updates the model name string.
virtual PvResult SetDeviceFirmwareVersion(const PvString &aValue)=0
Updates the device firmware version string.
virtual const PvString & GetDeviceFirmwareVersion()=0
Returns the current PvSoftDeviceGEV firmware version string.
virtual const PvString & GetGenICamXMLProductGUID()=0
Returns the GenICam XML file Product GUID.
virtual PvResult SetGenICamXMLGUIDs(const PvString &aProduct, const PvString &aVersion)=0
Sets the GenICam XML file version.
virtual PvResult SetGenICamXMLRegDescModelName(const PvString &aModelName)
Set the GenICam XML register description model name.
Definition PvVirtualDeviceGEVInterfaces.h:338
virtual uint16_t GetGenICamXMLVersionSubMinor() const =0
Returns the GenICam XML file subminor version.
virtual uint16_t GetGenICamXMLVersionMajor() const =0
Returns the GenICam XML file major version.
virtual const PvString & GetSerialNumber()=0
Returns the current serial number string.
Interface that is used to retrieve control channel statistics from a software-based GigE Vision Devic...
Definition PvVirtualDeviceGEVInterfaces.h:377
virtual uint64_t GetEventDatasIssued() const =0
GVCP messaging channel event (with data) comands (EVENTDATA_CMD) issued.
virtual uint64_t GetForceIpsReceived() const =0
GVCP force IP configuration (FORCEIP_CMD) commands received.
virtual uint64_t GetEventsIssued() const =0
GVCP messaging channel event commands (EVENT_CMD) issued.
virtual uint64_t GetWriteRegsReceived() const =0
GVCP write register (WRITEREG_CMD) commands received.
virtual uint64_t GetReadMemsReceived() const =0
GVCP read memory (READMEM_CMD) commands received.
virtual uint64_t GetEventRetriesIssued() const =0
GVCP retries issued for unacknowledged messaging channel event or event data commands.
virtual void Reset()=0
Resets all counters to zero.
virtual uint64_t GetWriteMemsReceived() const =0
GVCP write memory (WRITEMEM_CMD) commands received.
virtual uint64_t GetPacketResendRequestsReceived() const =0
GVCP packet resend (PACKETRESEND_CMD) commands received.
virtual uint64_t GetDiscoveriesReceived() const =0
GVCP discovery (DISCOVERY_CMD) commands received.
virtual uint64_t GetGVSPTestPacketsIssued() const =0
Returns the number of GVSP test packets issued.
virtual uint64_t GetReadRegsReceived() const =0
GVCP read register (READREG_CMD) commands received.
virtual ~IPvVirtualDeviceGEVStatistics()
Virtual destructor.
Definition PvVirtualDeviceGEVInterfaces.h:383
virtual uint64_t GetEventRetriesIssuedMax() const =0
virtual uint64_t GetSessionsOpened() const =0
Returns the device controller session open count.
virtual uint64_t GetRetriesReceivedMax() const =0
GVCP command retries maximum for a single command.
virtual uint64_t GetRetriesReceived() const =0
GVCP command retries received.
virtual uint64_t GetPendingAcksIssued() const =0
GVCP pending acknowledges (PENDING_ACK) issued.
virtual uint64_t GetSessionsClosed() const =0
Returns the device controller session close count.
virtual uint64_t GetHeartbeatFailedCount() const =0
Returns the device controller session close on heartbeat failure count.
virtual uint64_t GetActionCommandsReceived() const =0
GVCP action command (ACTION_CMD) received.
Result information.
Definition PvResult.h:30
String class.
Definition PvString.h:26
@ OK
Success! (Immediate.)
Definition PvResult.h:252
@ NOT_IMPLEMENTED
The requested feature or functionality is not implemented.
Definition PvResult.h:340
@ NOT_SUPPORTED
The requested feature or functionality is not supported.
Definition PvResult.h:342

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