7 #ifndef __PVTRANSMITTERGEV_H__ 8 #define __PVTRANSMITTERGEV_H__ 10 #include <IPvTransmitterGEV.h> 20 class AcquisitionManager;
28 friend class PvVirtualDeviceLib::AcquisitionManager;
33 PvString aSourceIPAddress =
"", uint16_t aSourcePort = 0,
bool aDontFrag =
true,
34 bool aExtendedIDs =
false, uint32_t aBuffersCapacity = 64,
bool aTimestampWhenSending =
false,
35 uint32_t aNumberOfPendingResendRequests = 32, uint32_t aNumberOfBuffersHoldForResends = 0 );
39 PvResult RetrieveFreeBuffer(
PvBuffer ** aBuffer, uint32_t aTimeout = 0xFFFFFFFF );
40 PvResult AbortQueuedBuffers( uint32_t aTimeout = 0xFFFFFFFF,
bool* aPartialTransmission = NULL );
43 uint32_t GetQueuedBufferCount();
44 uint32_t GetPacketSize();
45 PvResult SetPacketSize( uint32_t aPacketSize );
47 float GetMaxPayloadThroughput();
48 PvResult SetMaxPayloadThroughput(
float aMaxPayloadThroughput );
49 uint16_t GetSourcePort();
50 uint16_t GetDestinationPort();
56 uint64_t GetBlocksTransmitted()
const;
57 uint64_t GetSamplingTime()
const;
58 uint64_t GetPayloadBytesTransmitted()
const;
59 float GetInstantaneousPayloadThroughput()
const;
60 float GetAveragePayloadThroughput()
const;
61 float GetInstantaneousTransmissionRate()
const;
62 float GetAverageTransmissionRate()
const;
63 uint64_t GetNumberOfResendRequests()
const;
65 PvResult SetSentBuffersTimeout( uint32_t aTimeout );
66 uint32_t GetSentBuffersTimeout()
const;
68 virtual bool IsOpen()
const;
69 virtual bool IsTransmitting()
const;
70 virtual bool GetExtendedIDs()
const;
71 virtual PvResult SetExtendedIDs(
bool aExtendedID );
72 virtual void QueuePacketResend( uint64_t aBlockID, uint32_t aFirstPacketID, uint32_t aLastPacketID );
74 uint32_t GetUserModeTransmitterThreadPriority()
const;
75 PvResult SetUserModeTransmitterThreadPriority( uint32_t aPriority );
76 uint32_t GetBufferPoolThreadPriority()
const;
77 PvResult SetBufferPoolThreadPriority( uint32_t aPriority );
81 PvTransmitterLib::TransmitterGEV *mThis;
String class.
Definition: PvString.h:21
Result information.
Definition: PvResult.h:13
Definition: PvBuffer.h:29
Definition: PvTransmitterGEV.h:13
Represents a block of GigE Vision or USB3 Vision data in memory.
Definition: PvBuffer.h:47
Interface to expose the transmitter GEV to the GEV virtual device.
Class for transmitting blocks using the GigE Vision streaming protocol.
Definition: PvTransmitterGEV.h:24