Pleora Technologies Inc. eBUS SDK v6.5.1.6797 API



PvDecompressionFilter Class Reference

#include <PvDecompressionFilter.h>

Public Member Functions

 PvDecompressionFilter ()
 Constructor.
 
virtual ~PvDecompressionFilter ()
 Destructor.
 
PvResult Execute (const PvBuffer *aIn, PvBuffer *aOut)
 Decompresses aIn into aOut. More...
 
PvResult SetThreadCount (uint32_t aCount)
 Sets the maximum of threads to use for decompression. More...
 
uint32_t GetThreadCount () const
 Returns how many threads are used for decompression. More...
 
PvResult GetThreadsPriority (uint32_t &aPriority) const
 Gets the thread priority of the filter's worker threads. More...
 
PvResult SetThreadsPriority (uint32_t aPriority)
 Sets the thread priority of the filter's worker threads. More...
 
- Public Member Functions inherited from IPvFilter
 IPvFilter ()
 Constructor.
 
virtual ~IPvFilter ()
 Destructor.
 

Static Public Member Functions

static bool IsCompressed (const PvBuffer *aIn)
 Returns true if the buffer can be decompressed using an object of this class. More...
 
static PvResult GetOutputFormatFor (const PvBuffer *aIn, PvPixelType &aPixelType, uint32_t &aWidth, uint32_t &aHeight)
 Returns the output format for a compressed buffer. More...
 

Detailed Description

Filter used for image decompression.

Member Function Documentation

◆ Execute()

PvResult PvDecompressionFilter::Execute ( const PvBuffer aIn,
PvBuffer aOut 
)
virtual

Decompresses aIn into aOut.

If aOut is not an image or does not match the required output pixel type, width or height it is automatically re-allocated to match the output requirements.

Parameters
aIn[in] Input buffer.
aOut[in] Output buffer.
Returns
Includes:

Implements IPvFilter.

◆ GetOutputFormatFor()

PvResult PvDecompressionFilter::GetOutputFormatFor ( const PvBuffer aIn,
PvPixelType aPixelType,
uint32_t &  aWidth,
uint32_t &  aHeight 
)
static

Returns the output format for a compressed buffer.

Parameters
aIn[in] Buffer to inspect.
aPixelType[out] Pixel type the buffer is uncompressed to.
aWidth[out] Width of the uncompressed buffer, in pixels.
aHeight[out] Height of the uncompressed buffer, in pixels.
Returns
Includes:

◆ GetThreadCount()

uint32_t PvDecompressionFilter::GetThreadCount ( ) const
virtual

Returns how many threads are used for decompression.

Returns
How many threads are used for decompression.

Implements IPvFilter.

◆ GetThreadsPriority()

PvResult PvDecompressionFilter::GetThreadsPriority ( uint32_t &  aPriority) const
virtual

Gets the thread priority of the filter's worker threads.

Parameters
aPriority[out] Output reference to the worker threads priority.
Returns
Includes:

Implements IPvFilter.

◆ IsCompressed()

bool PvDecompressionFilter::IsCompressed ( const PvBuffer aIn)
static

Returns true if the buffer can be decompressed using an object of this class.

Parameters
aIn[in] Buffer to inspect.
Returns
True if the buffer can be decompressed.

◆ SetThreadCount()

PvResult PvDecompressionFilter::SetThreadCount ( uint32_t  aCount)
virtual

Sets the maximum of threads to use for decompression.

Parameters
aCount[in] How many threads to use for decompression. Min: 1, Max: 64.
Returns
Includes:

Implements IPvFilter.

◆ SetThreadsPriority()

PvResult PvDecompressionFilter::SetThreadsPriority ( uint32_t  aPriority)
virtual

Sets the thread priority of the filter's worker threads.

The default is 3 - THREAD_PRIORITY_NORMAL, see PvPipeline::SetBufferHandlingThreadPriority(). We only allow setting priority for the threads of one converter object as a group. By default one worker thread is created for half of the total number of logical CPUs of the system.

If you change the thread priorities, it may alterate the stability of the system. For this reason, if you report a bug to Pleora, ensure to clearly mention that you change threads priorities.

Returns
Includes:

Implements IPvFilter.


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

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