Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



Loading...
Searching...
No Matches
PvStreamingChannelSourceDefault.h
1// *****************************************************************************
2//
3// Copyright (c) 2018, Pleora Technologies Inc., All rights reserved.
4//
5// *****************************************************************************
6
7#ifndef __PVSTREAMINGCHANNELSOURCEDEFAULT_H__
8#define __PVSTREAMINGCHANNELSOURCEDEFAULT_H__
9
10#include <PvSoftDeviceGEVInterfaces.h>
11#include <PvSoftDeviceGEVLib.h>
12
29class PV_SOFT_DEVICE_GEV_API PvStreamingChannelSourceDefault
31{
32public:
33
42 PvStreamingChannelSourceDefault( uint32_t aWidth = 640, uint32_t aHeight = 480, PvPixelType aPixelType = PvPixelMono8, size_t aBufferCount = 16 );
43
48
56 virtual uint32_t GetWidth() const;
57
65 virtual uint32_t GetHeight() const;
66
74 virtual uint32_t GetOffsetX() const;
75
83 virtual uint32_t GetOffsetY() const;
84
92 virtual PvPixelType GetPixelType() const;
93
105 virtual void GetWidthInfo( uint32_t &aMin, uint32_t &aMax, uint32_t &aInc ) const;
106
118 virtual void GetHeightInfo( uint32_t &aMin, uint32_t &aMax, uint32_t &aInc ) const;
119
136 virtual uint32_t GetChunksSize() const;
137
152 virtual uint32_t GetPayloadSize() const;
153
162 virtual PvScanType GetScanType() const;
163
172 virtual bool GetChunkModeActive() const;
173
188 virtual bool GetChunkEnable( uint32_t aChunkID ) const;
189
215 virtual PvResult GetSupportedPixelType( int aIndex, PvPixelType &aPixelType ) const;
216
245 virtual PvResult GetSupportedChunk( int aIndex, uint32_t &aID, PvString &aName ) const;
246
264 virtual PvResult SetWidth( uint32_t aWidth );
265
283 virtual PvResult SetHeight( uint32_t aHeight );
284
298 virtual PvResult SetOffsetX( uint32_t aOffsetX );
299
313 virtual PvResult SetOffsetY( uint32_t aOffsetY );
314
332 virtual PvResult SetPixelType( PvPixelType aPixelType );
333
348 virtual PvResult SetChunkModeActive( bool aEnabled );
349
365 virtual PvResult SetChunkEnable( uint32_t aChunkID, bool aEnabled );
366
373 virtual void OnOpen( const PvString &aDestIP, uint16_t aDestPort );
374
378 virtual void OnClose();
379
383 virtual void OnStreamingStart();
384
388 virtual void OnStreamingStop();
389
411
420 virtual void FreeBuffer( PvBuffer *aBuffer );
421
450 virtual PvResult GetTxNumBuffersToUse( uint32_t &aNumBuffer );
451
452
462 virtual void AbortQueuedBuffers();
463
480 virtual void CreateRegisters( IPvRegisterMap *aRegisterMap, IPvRegisterFactory *aFactory );
481
542 virtual void CreateGenApiFeatures( IPvRegisterMap *aRegisterMap, IPvGenApiFactory *aFactory );
543
559 virtual bool IsPayloadTypeSupported( PvPayloadType aPayloadType );
560
577 virtual void SetMultiPartAllowed( bool aAllowed );
578
596 virtual void SetLargeLeaderTrailerEnabled( bool aEnabled, uint32_t aMaxMultiPartCount );
597
633
634private:
635
636 size_t mBufferCount;
637 size_t mBufferAllocated;
638
639 uint32_t mStaticWidth;
640 uint32_t mStaticHeight;
641 PvPixelType mStaticPixelType;
642
643};
644
645
646#endif // __PVSTREAMINGCHANNELSOURCEDEFAULT_H__
PvPayloadType
GVSP payload type.
Definition PvPayloadType.h:20
PvPixelType
Definition PvPixelType.h:51
@ PvPixelMono8
Pixel type is Mono8.
Definition PvPixelType.h:55
GenApi factory used to add custom GenApi parameters to a software-based GigE Vision Device GenICam XM...
Definition PvVirtualDeviceGEVInterfaces.h:2025
Class used for register creation.
Definition PvVirtualDeviceGEVInterfaces.h:1836
Register map interface for a software-based GigE Vision Device.
Definition PvVirtualDeviceGEVInterfaces.h:1910
Definition PvSoftDeviceGEVInterfaces.h:66
Represents a block of GigE Vision or USB3 Vision data in memory.
Definition PvBuffer.h:111
Result information.
Definition PvResult.h:30
A default implementation for the IPvStreamingSourceChannelSource interface.
Definition PvStreamingChannelSourceDefault.h:31
virtual uint32_t GetOffsetX() const
Returns the current image offset X.
virtual void AbortQueuedBuffers()
Request by the PvSoftDeviceGEV to abort all buffers queued for acquisition.
virtual void OnStreamingStart()
Notification that the GigE Vision controller has requested that the device start streaming on this ch...
virtual void SetMultiPartAllowed(bool aAllowed)
Sets whether the streaming source is allowed or not, but not forced, to transmit multi-part data.
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...
virtual PvResult SetOffsetY(uint32_t aOffsetY)
Request from the PvSoftDeviceGEV to change the image offset Y.
virtual PvResult GetSupportedChunk(int aIndex, uint32_t &aID, PvString &aName) const
Returns the indexed supported chunk type. Used at PvSoftDeviceGEV::Start time to create the GenICam X...
virtual void OnClose()
Notification from the PvSoftDeviceGEV that this streaming channel has been closed.
virtual bool IsPayloadTypeSupported(PvPayloadType aPayloadType)
When called, the streaming source has to return whether the specificed payload type is supported or n...
virtual PvBuffer * AllocBuffer()
Request by the PvSoftDeviceGEV to allocate a PvBuffer.
virtual void FreeBuffer(PvBuffer *aBuffer)
Request by the PvSoftDeviceGEV to free or release a buffer allocated with AllocBuffer.
virtual PvResult SetPixelType(PvPixelType aPixelType)
Request from the PvSoftDeviceGEV to change the image pixel type.
virtual void CreateRegisters(IPvRegisterMap *aRegisterMap, IPvRegisterFactory *aFactory)
When called, the streaming channel source should create its custom registers if they are needed.
virtual PvResult SetWidth(uint32_t aWidth)
Request from the PvSoftDeviceGEV to change the image width.
virtual void OnOpen(const PvString &aDestIP, uint16_t aDestPort)
Notification from the PvSoftDeviceGEV that this streaming channel has been opened.
virtual uint32_t GetChunksSize() const
Gets the stream channel chunk size attributes.
PvStreamingChannelSourceDefault(uint32_t aWidth=640, uint32_t aHeight=480, PvPixelType aPixelType=PvPixelMono8, size_t aBufferCount=16)
Default constructor.
virtual PvResult SetChunkModeActive(bool aEnabled)
Set the master chunk mode active state.
virtual PvPixelType GetPixelType() const
Returns the current pixel type.
virtual void GetHeightInfo(uint32_t &aMin, uint32_t &aMax, uint32_t &aInc) const
Returns the stream channel height attributes.
virtual PvScanType GetScanType() const
Returns the scan type that is used by the streaming source.
virtual void GetWidthInfo(uint32_t &aMin, uint32_t &aMax, uint32_t &aInc) const
Returns the stream channel width attributes.
virtual void CreateGenApiFeatures(IPvRegisterMap *aRegisterMap, IPvGenApiFactory *aFactory)
When called, the streaming channel source should create its custom GenApi parameters if they are need...
virtual PvResult GetTxNumBuffersToUse(uint32_t &aNumBuffer)
This method is requested by PvSoftDeviceGEV to limit the number of buffers used by the transmitter....
virtual ~PvStreamingChannelSourceDefault()
Destructor.
virtual uint32_t GetHeight() const
Returns the current image height.
virtual PvResult SetHeight(uint32_t aHeight)
Request from the PvSoftDeviceGEV to change the image height.
virtual bool GetChunkEnable(uint32_t aChunkID) const
Returns the current chunk enabled state.
virtual uint32_t GetPayloadSize() const
Stream channel payload size in bytes. Return zero to have it inferred from width, height and pixel fo...
virtual PvResult GetSupportedPixelType(int aIndex, PvPixelType &aPixelType) const
Obtains an index of supported pixel types. Used at PvSoftDeviceGEV::Start time to create the GenICam ...
virtual PvResult SetOffsetX(uint32_t aOffsetX)
Request from the PvSoftDeviceGEV to change the image offset X.
virtual PvResult SetChunkEnable(uint32_t aChunkID, bool aEnabled)
Sets the chunk enabled state for a specific chunk type.
virtual void OnStreamingStop()
Notification that the GigE Vision controller has requested that the device stop streaming on this cha...
virtual uint32_t GetWidth() const
Returns the current image width.
virtual bool GetChunkModeActive() const
Indicates whether the current master chunk mode is active.
virtual PvResult SetTestPayloadFormatMode(PvPayloadType aPayloadType)
When called, the streaming source has to ensure it can stream buffers of the specified payload type.
virtual uint32_t GetOffsetY() const
Returns the current image offset Y.
String class.
Definition PvString.h:26

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