Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



Loading...
Searching...
No Matches
PvSoftDeviceGEVInterfaces.h
1// *****************************************************************************
2//
3// Copyright (c) 2011, Pleora Technologies Inc., All rights reserved.
4//
5// *****************************************************************************
6
7#ifndef __PVSOFTDEVICEGEVINTERFACES_H__
8#define __PVSOFTDEVICEGEVINTERFACES_H__
9
10#include <PvVirtualDeviceGEVInterfaces.h>
11#include <PvSoftDeviceGEVLib.h>
12#include <PvBuffer.h>
13
14
64class PV_SOFT_DEVICE_GEV_API IPvSWStreamingChannelSource
66{
67public:
68
73
94 virtual PvBuffer* AllocBuffer() = 0;
95
104 virtual void FreeBuffer( PvBuffer* aBuffer ) = 0;
105
134 virtual PvResult GetTxNumBuffersToUse( uint32_t &aNumBuffer ) = 0;
135
136
151 virtual PvResult QueueBuffer( PvBuffer* aBuffer ) = 0;
152
160 virtual bool PreQueueBufferProc() { return true; }
161
167 virtual void PostRetrieveBufferProc() {}
168
189 virtual PvResult RetrieveBuffer( PvBuffer **aBuffer ) = 0;
190
200 virtual void AbortQueuedBuffers() = 0;
201};
202
203
211class PV_SOFT_DEVICE_GEV_API IPvSWStreamingChannelSourceGenDC
213{
214public:
224 virtual void AssignGenDCManager( IPvGenDCManager* aManager ) = 0;
225
233 virtual void SetupGenDCContainer() = 0;
234
240 virtual bool GetGenDCStreamingMode() const = 0;
241
252 virtual PvResult SetGenDCStreamingMode( bool aEnabled ) = 0;
253
254protected:
255 IPvGenDCManager* mGDCManager;
256
257};
258
263class PV_SOFT_DEVICE_GEV_API IPvSoftDeviceGEV
264 : public IPvVirtualDeviceGEV
265{
266public:
267
272
288
307 virtual PvResult SetTCPTransportEnabled( bool aEnabled ) = 0;
308
331 virtual PvResult SetRTPProtocolEnabled( bool aEnabled ) = 0;
332
333
340 virtual PvResult SetGenDCEnabled( bool aEnabled ) = 0;
341
342};
343
344#endif // __PVSOFTDEVICEGEVINTERFACES_H__
Interface for managing GenDC (Generic Data Container) operations.
Definition PvGenDCInterfaces.h:265
Streaming channel source interface with GenDC (Generic Data Container) support.
Definition PvSoftDeviceGEVInterfaces.h:213
virtual void SetupGenDCContainer()=0
Sets up the GenDC container before device initialization.
virtual PvResult SetGenDCStreamingMode(bool aEnabled)=0
Enables or disables GenDC streaming mode.
virtual bool GetGenDCStreamingMode() const =0
Gets the current GenDC streaming mode state.
virtual void AssignGenDCManager(IPvGenDCManager *aManager)=0
Assigns the GenDC manager to the streaming channel source.
Definition PvSoftDeviceGEVInterfaces.h:66
virtual PvResult QueueBuffer(PvBuffer *aBuffer)=0
Request by the PvSoftDeviceGEV to queue a buffer for acquisition.
virtual void AbortQueuedBuffers()=0
Request by the PvSoftDeviceGEV to abort all buffers queued for acquisition.
virtual ~IPvSWStreamingChannelSource()
Virtual destructor.
Definition PvSoftDeviceGEVInterfaces.h:72
virtual PvResult RetrieveBuffer(PvBuffer **aBuffer)=0
Request by the PvSoftDeviceGEV to retrieve a buffer from the streaming source.
virtual void FreeBuffer(PvBuffer *aBuffer)=0
Request by the PvSoftDeviceGEV to free or release a buffer allocated with AllocBuffer.
virtual PvBuffer * AllocBuffer()=0
Request by the PvSoftDeviceGEV to allocate a PvBuffer.
virtual PvResult GetTxNumBuffersToUse(uint32_t &aNumBuffer)=0
This method is requested by PvSoftDeviceGEV to limit the number of buffers used by the transmitter....
Interface to the main class of the software-based GigE Vision Device.
Definition PvSoftDeviceGEVInterfaces.h:265
~IPvSoftDeviceGEV()
Virtual destructor.
Definition PvSoftDeviceGEVInterfaces.h:271
virtual PvResult AddStream(IPvSWStreamingChannelSource *aSource)=0
Adds a new stream to the PvSoftDeviceGEV.
virtual PvResult SetGenDCEnabled(bool aEnabled)=0
Enables the option of using GenDC for streaming.
virtual PvResult SetTCPTransportEnabled(bool aEnabled)=0
Enables experimental TCP transport.
virtual PvResult SetRTPProtocolEnabled(bool aEnabled)=0
Enables the option of using RTP for streaming.
Interface that is used by PvSoftDeviceGEV to query and report information from a streaming source imp...
Definition PvVirtualDeviceGEVInterfaces.h:804
Interface to the main class of the software-based GigE Vision Device.
Definition PvVirtualDeviceGEVInterfaces.h:2929
Represents a block of GigE Vision or USB3 Vision data in memory.
Definition PvBuffer.h:111
Result information.
Definition PvResult.h:30

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