Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



PvVirtualDeviceGEV Class Reference

Virtual GigE Vision device. More...

#include <PvVirtualDeviceGEV.h>

Public Member Functions

 PvVirtualDeviceGEV ()
 Constructor.
 
 ~PvVirtualDeviceGEV ()
 Destructor.
 
PvResult SetGEVSpecificationVersion (uint16_t aMajor, uint16_t aMinor)
 Set the version of the GigE Vision standard for the virtual device. More...
 
PvResult GetGEVSpecificationVersion (uint16_t &aMajor, uint16_t &aMinor)
 Get the current GigE Vision standard version used by the virtual device. More...
 
PvResult SetGVCPCapabilityPacketResendCommandSupported (bool aValue)
 Configure support for the packet resend command (GigE Vision 2.0+). More...
 
bool GetGVCPCapabilityPacketResendCommandSupported ()
 Get the current configuration for packet resend command support. More...
 
PvResult SetDeviceVersion (const PvString &aDeviceVersion)
 Set the device version string (first 32 bytes are used). More...
 
PvString GetDeviceVersion ()
 Get the device version. More...
 
PvResult SetSerialNumber (const PvString &aSerialNumber)
 Set the serial number string (first 16 bytes are used). More...
 
PvString GetSerialNumber ()
 Get the serial number. More...
 
PvResult SetManufacturerName (const PvString &aManufacturerName)
 Set the manufacturer name string (first 32 bytes are used). More...
 
PvString GetManufacturerName ()
 Get the manufacturer name. More...
 
PvResult SetModelName (const PvString &aModelName)
 Set the model name string (first 32 bytes are used). More...
 
PvString GetModelName ()
 Get the model name. More...
 
PvResult AddTransmitterGEV (IPvTransmitterGEV *aTransmitterGEV)
 Add the GVSP transmitter that will issue resend requests. More...
 
PvResult StartListening (PvString aIPAddress)
 Begin responding to GVCP traffic on the specified network interface. More...
 
void StopListening ()
 Stop responding to GVCP traffic and close the connection.
 
uint32_t GetDevicePortThreadPriority () const
 Get the priority of the thread used for the GigE Vision control channel. More...
 
PvResult SetDevicePortThreadPriority (uint32_t aPriority)
 Set the priority of the thread used for the GigE Vision control channel. More...
 

Detailed Description

Virtual GigE Vision device.

Used to provide basic GigE Vision device capabilities such as device discovery. Can complement the PvTransmitterGEV class by allowing one to open a data receiver connection to it using PvStream. For a full Software GigE Vision Device implementation, look at PvSoftDeviceGEV.

Remarks
Proper use of the PvVirtualDeviceGEV class is demonstrated in all transmitter samples.

Member Function Documentation

◆ AddTransmitterGEV()

PvResult PvVirtualDeviceGEV::AddTransmitterGEV ( IPvTransmitterGEV aTransmitterGEV)

Add the GVSP transmitter that will issue resend requests.

The order of addition enforces the stream index.

Parameters
[in]aTransmitterGEVInstance of PvTransmitterGEV.
Returns
Includes: PvResult::Code::OK, PvResult::Code::INVALID_PARAMETER if the argument is null, already transmitting, or the maximum count is exceeded, PvResult::Code::BUSY if the device is already listening.
Remarks
Must be set before calling StartListening.

◆ GetDevicePortThreadPriority()

uint32_t PvVirtualDeviceGEV::GetDevicePortThreadPriority ( ) const

Get the priority of the thread used for the GigE Vision control channel.

Returns
The priority of the thread.
See also
SetDevicePortThreadPriority

◆ GetDeviceVersion()

PvString PvVirtualDeviceGEV::GetDeviceVersion ( )

Get the device version.

Returns
String containing the device version.

◆ GetGEVSpecificationVersion()

PvResult PvVirtualDeviceGEV::GetGEVSpecificationVersion ( uint16_t &  aMajor,
uint16_t &  aMinor 
)

Get the current GigE Vision standard version used by the virtual device.

Parameters
[out]aMajorMajor version.
[out]aMinorMinor version.
Returns
Includes: PvResult::Code::OK.

◆ GetGVCPCapabilityPacketResendCommandSupported()

bool PvVirtualDeviceGEV::GetGVCPCapabilityPacketResendCommandSupported ( )

Get the current configuration for packet resend command support.

Returns
True if packet resend is supported.

◆ GetManufacturerName()

PvString PvVirtualDeviceGEV::GetManufacturerName ( )

Get the manufacturer name.

Returns
String containing the manufacturer name.

◆ GetModelName()

PvString PvVirtualDeviceGEV::GetModelName ( )

Get the model name.

Returns
String containing the model name.

◆ GetSerialNumber()

PvString PvVirtualDeviceGEV::GetSerialNumber ( )

Get the serial number.

Returns
String containing the serial number.

◆ SetDevicePortThreadPriority()

PvResult PvVirtualDeviceGEV::SetDevicePortThreadPriority ( uint32_t  aPriority)

Set the priority of the thread used for the GigE Vision control channel.

This thread handles reads, device discoveries, etc. Changing priorities may impact stability.

Parameters
[in]aPrioritySupported values described in PvPipeline::SetBufferHandlingThreadPriority.
Returns
Includes: PvResult::Code::OK, PvResult::Code::INVALID_PARAMETER, PvResult::Code::THREAD_ERROR.
See also
GetDevicePortThreadPriority

◆ SetDeviceVersion()

PvResult PvVirtualDeviceGEV::SetDeviceVersion ( const PvString aDeviceVersion)

Set the device version string (first 32 bytes are used).

Parameters
[in]aDeviceVersionNew version string.
Returns
Includes: PvResult::Code::OK, PvResult::Code::BUSY if the device is already listening.
Remarks
Must be set before calling StartListening.

◆ SetGEVSpecificationVersion()

PvResult PvVirtualDeviceGEV::SetGEVSpecificationVersion ( uint16_t  aMajor,
uint16_t  aMinor 
)

Set the version of the GigE Vision standard for the virtual device.

By default, version 2.0 is used, providing access to the latest features, including extended chunk data.

Parameters
[in]aMajorMajor version number of the GigE Vision standard.
[in]aMinorMinor version number of the GigE Vision standard.
Returns
Includes: PvResult::Code::OK, PvResult::Code::INVALID_PARAMETER if the major/minor is out of range, PvResult::Code::BUSY if the device is already listening.
Remarks
Must be set before calling StartListening.

◆ SetGVCPCapabilityPacketResendCommandSupported()

PvResult PvVirtualDeviceGEV::SetGVCPCapabilityPacketResendCommandSupported ( bool  aValue)

Configure support for the packet resend command (GigE Vision 2.0+).

Parameters
[in]aValueTrue to support packet resend commands.
Returns
Includes: PvResult::Code::OK, PvResult::Code::BUSY if the device is already listening.
Remarks
Must be set before calling StartListening.

◆ SetManufacturerName()

PvResult PvVirtualDeviceGEV::SetManufacturerName ( const PvString aManufacturerName)

Set the manufacturer name string (first 32 bytes are used).

Parameters
[in]aManufacturerNameManufacturer name string.
Returns
Includes: PvResult::Code::OK, PvResult::Code::INVALID_PARAMETER if the string is too long, PvResult::Code::BUSY if the device is already listening.
Remarks
Must be set before calling StartListening.

◆ SetModelName()

PvResult PvVirtualDeviceGEV::SetModelName ( const PvString aModelName)

Set the model name string (first 32 bytes are used).

Parameters
[in]aModelNameModel name string.
Returns
Includes: PvResult::Code::OK, PvResult::Code::INVALID_PARAMETER if the string is too long, PvResult::Code::BUSY if the device is already listening.
Remarks
Must be set before calling StartListening.

◆ SetSerialNumber()

PvResult PvVirtualDeviceGEV::SetSerialNumber ( const PvString aSerialNumber)

Set the serial number string (first 16 bytes are used).

Parameters
[in]aSerialNumberSerial number string.
Returns
Includes: PvResult::Code::OK, PvResult::Code::INVALID_PARAMETER if the string is too long, PvResult::Code::BUSY if the device is already listening.
Remarks
Must be set before calling StartListening.

◆ StartListening()

PvResult PvVirtualDeviceGEV::StartListening ( PvString  aIPAddress)

Begin responding to GVCP traffic on the specified network interface.

Parameters
[in]aIPAddressIP address the virtual device listens on (e.g. 192.168.1.114).
Returns
Includes: PvResult::Code::OK on success.
See also
StopListening

The documentation for this class was generated from the following files:

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