Class PvPipeline
Helper class for receiving data from a GigE Vision or USB3 Vision transmitter.
Implements
Inherited Members
Namespace: eBUSDotNetReceive
Assembly: eBUSDotNetReceive.dll
Syntax
public class PvPipeline : IDisposable
Remarks
The process of receiving data from a GigE Vision or USB3 Vision transmitter involves queuing buffers into the data receiver ensuring that there are always buffers available for the incoming data. PvPipeline partners with a PvStream object to allocate and push buffers into the data receiver as needed.
For further information on how PvPipeline fits in with the process of receiving data from a GigE Vision transmitter, refer to the
receiving data from a transmitter page.
Constructors
View SourcePvPipeline(PvStream)
Constructor.
Declaration
public PvPipeline(PvStream aStream)
Parameters
| Type | Name | Description |
|---|---|---|
| PvStream | aStream | The object responsible for receiving data from a GEV transmitter; a #PvStream object. |
Fields
View SourceswigCMemOwn
Determines who is responsible for deleting the underlying C++ object.
Declaration
protected bool swigCMemOwn
Field Value
| Type | Description |
|---|---|
| bool |
Properties
View SourceBufferCount
Gets or sets the number of buffers owned and used by the pipeline.
Declaration
public uint BufferCount { get; set; }
Property Value
| Type | Description |
|---|---|
| uint |
BufferHandlingThreadPriority
Gets or sets the priority of the pipeline thread.
Declaration
public uint BufferHandlingThreadPriority { get; set; }
Property Value
| Type | Description |
|---|---|
| uint |
BufferSize
Gets or sets the size for all managed buffers in bytes.
Declaration
public uint BufferSize { get; set; }
Property Value
| Type | Description |
|---|---|
| uint |
HandleBufferTooSmall
Gets or sets whether the pipeline handles BUFFER_TOO_SMALL operation results automatically.
Declaration
public uint HandleBufferTooSmall { get; set; }
Property Value
| Type | Description |
|---|---|
| uint |
IsStarted
Gets whether the pipeline has been started.
Declaration
public bool IsStarted { get; }
Property Value
| Type | Description |
|---|---|
| bool |
OutputQueueSize
Gets the number of buffers currently available in the output queue.
Declaration
public uint OutputQueueSize { get; }
Property Value
| Type | Description |
|---|---|
| uint |
Methods
View SourceDispose()
Dispose.
Declaration
public void Dispose()
Dispose(bool)
Dispose
Declaration
protected virtual void Dispose(bool disposing)
Parameters
| Type | Name | Description |
|---|---|---|
| bool | disposing |
~PvPipeline()
Destructor.
Declaration
protected ~PvPipeline()
RegisterEventSink(PvPipelineEventSink)
Register an event sink used for callbacks.
Declaration
public PvResult RegisterEventSink(PvPipelineEventSink aEventSink)
Parameters
| Type | Name | Description |
|---|---|---|
| PvPipelineEventSink | aEventSink | A pointer to the event sink. |
Returns
| Type | Description |
|---|---|
| PvResult | Includes:
|
ReleaseBuffer(PvBuffer)
Return a buffer to the pipeline.
Declaration
public PvResult ReleaseBuffer(PvBuffer aBuffer)
Parameters
| Type | Name | Description |
|---|---|---|
| PvBuffer | aBuffer | A pointer to the buffer to return to the queue. |
Returns
| Type | Description |
|---|---|
| PvResult | Includes:
|
Reset()
Resets the pipeline.
Declaration
public PvResult Reset()
Returns
| Type | Description |
|---|---|
| PvResult | Includes:
|
RetrieveNextBuffer(out PvBuffer)
Retrieve the next acquired block.
Declaration
public PvResult RetrieveNextBuffer(out PvBuffer aBuffer)
Parameters
| Type | Name | Description |
|---|---|---|
| PvBuffer | aBuffer | A pointer to the pointer to the buffer. |
Returns
| Type | Description |
|---|---|
| PvResult | Includes:
|
RetrieveNextBuffer(out PvBuffer, uint)
Retrieve the next acquired block.
Declaration
public PvResult RetrieveNextBuffer(out PvBuffer aBuffer, uint aTimeout)
Parameters
| Type | Name | Description |
|---|---|---|
| PvBuffer | aBuffer | A pointer to the pointer to the buffer. |
| uint | aTimeout | The maximum time, in ms, to wait for a buffer to be received. The default value is 0xFFFFFFFF milliseconds |
Returns
| Type | Description |
|---|---|
| PvResult | Includes:
|
RetrieveNextBuffer(out PvBuffer, uint, ref PvResult)
Retrieve the next acquired block.
Declaration
public PvResult RetrieveNextBuffer(out PvBuffer aBuffer, uint aTimeout, ref PvResult aOperationResult)
Parameters
| Type | Name | Description |
|---|---|---|
| PvBuffer | aBuffer | A pointer to the pointer to the buffer. |
| uint | aTimeout | The maximum time, in ms, to wait for a buffer to be received. The default value is 0xFFFFFFFF milliseconds |
| PvResult | aOperationResult | A pointer to the result of the acquisition operation on aBuffer, see #PvBuffer::GetOperationResult. |
Returns
| Type | Description |
|---|---|
| PvResult | Includes:
|
Start()
Starts the #PvPipeline.
Declaration
public PvResult Start()
Returns
| Type | Description |
|---|---|
| PvResult | Includes:
|
Stop()
Stops the #PvPipeline.
Declaration
public PvResult Stop()
Returns
| Type | Description |
|---|---|
| PvResult | Includes:
|
UnregisterEventSink(PvPipelineEventSink)
Unregister an event sink
Declaration
public PvResult UnregisterEventSink(PvPipelineEventSink aEventSink)
Parameters
| Type | Name | Description |
|---|---|---|
| PvPipelineEventSink | aEventSink | A pointer to the event sink. |
Returns
| Type | Description |
|---|---|
| PvResult | Includes:
|
Events
View SourceOnBufferCreated
Called whenever a PvBuffer is allocated by the pipeline.
Declaration
public event OnBufferCreated OnBufferCreated
Event Type
| Type | Description |
|---|---|
| OnBufferCreated |
OnBufferDeleted
Called whenever a PvBuffer is deleted by the pipeline.
Declaration
public event OnBufferDeleted OnBufferDeleted
Event Type
| Type | Description |
|---|---|
| OnBufferDeleted |
OnBufferTooSmall
Invoked when the pipeline retrieves a buffer from the stream object which failed with an operation result set to BUFFER_TOO_SMALL.
Declaration
public event OnBufferTooSmall OnBufferTooSmall
Event Type
| Type | Description |
|---|---|
| OnBufferTooSmall |
OnReset
Invoked after the pipeline has been reset.
Declaration
public event OnReset OnReset
Event Type
| Type | Description |
|---|---|
| OnReset |
OnStart
Invoked just before the pipeline starts.
Declaration
public event OnStart OnStart
Event Type
| Type | Description |
|---|---|
| OnStart |
OnStop
Invoked right after the pipeline has been stopped.
Declaration
public event OnStop OnStop
Event Type
| Type | Description |
|---|---|
| OnStop |