Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



PvBufferConverter.h
Go to the documentation of this file.
1 // *****************************************************************************
2 //
3 // Copyright (c) 2008, Pleora Technologies Inc., All rights reserved.
4 //
5 // *****************************************************************************
6 
7 #ifndef __PVBUFFERCONVERTER_H__
8 #define __PVBUFFERCONVERTER_H__
9 
10 #include <PvBuffer.h>
11 #include <PvBufferReceiveLib.h>
12 #include <PvBufferConverterRGBFilter.h>
13 
14 
15 namespace PvBufferLib
16 {
17  class BufferConverter;
18 }
19 
22 
26 typedef enum
27 {
32 
34 
38 typedef enum
39 {
44 
46 
47 
66 class PV_BUFFER_API PvBufferConverter
67 {
68 public:
69 
79  PvBufferConverter( int32_t aMaxNumberOfThreads = -1 );
80 
84  virtual ~PvBufferConverter();
85 
103  static bool IsConversionSupported( PvPixelType aSource, PvPixelType aDestination );
104 
124  PvResult Convert( const PvBuffer *aSource, PvBuffer *aDestination, bool aReallocIfNeeded = true, bool aFlipY = false );
125 
145  PvResult Convert( const IPvImage *aSource, PvBuffer *aDestination, bool aReallocIfNeeded = true, bool aFlipY = false );
146 
155 
170 
179 
194 
203 
214 
223 
243  PvResult SetConversionThreadsPriority( uint32_t aPriority );
244 
245 protected:
246 
247 private:
248 
249  // Not implemented
251  const PvBufferConverter &operator=( const PvBufferConverter & );
252 
253  PvBufferLib::BufferConverter *mThis;
254 };
255 
256 #endif
PvBiColorFilterType
Filter settings for PvBufferConverter::SetBiColorFilter.
Definition: PvBufferConverter.h:39
@ PvBiColorFilter1X3
1x3 kernel considered when converting from BiColor.
Definition: PvBufferConverter.h:43
@ PvBiColorFilter1X2
1x2 kernel considered when converting from BiColor.
Definition: PvBufferConverter.h:41
PvBayerFilterType
Filter settings for PvBufferConverter::SetBayerFilter.
Definition: PvBufferConverter.h:27
@ PvBayerFilter3X3
3x3 kernel considered when converting from Bayer.
Definition: PvBufferConverter.h:31
@ PvBayerFilterSimple
2x2 nearest neighbor used when converting from Bayer.
Definition: PvBufferConverter.h:29
PvPixelType
Definition: PvPixelType.h:51
Generic image interface.
Definition: PvImage.h:21
Used to convert a PvBuffer to another pixel type.
Definition: PvBufferConverter.h:67
PvBiColorFilterType GetBiColorFilter() const
Retrieves current optional BiColor filtering.
PvBufferConverter(int32_t aMaxNumberOfThreads=-1)
Constructor.
uint32_t GetConversionThreadsPriority() const
Get the priority of the threads doing the conversion in background.
PvResult ResetRGBFilter()
Resets the RGB filter used for conversion (if any)
PvResult SetConversionThreadsPriority(uint32_t aPriority)
Set the priority of the threads doing the conversion.
PvResult Convert(const IPvImage *aSource, PvBuffer *aDestination, bool aReallocIfNeeded=true, bool aFlipY=false)
Convert a buffer from one format to another.
PvResult SetRGBFilter(PvBufferConverterRGBFilter &aFilter)
Assigns a RGB filter to be used during conversion.
PvResult SetBiColorFilter(PvBiColorFilterType aFilter)
Set the optional BiColor filtering for this converter.
PvResult Convert(const PvBuffer *aSource, PvBuffer *aDestination, bool aReallocIfNeeded=true, bool aFlipY=false)
Convert a buffer from one format to another.
PvBayerFilterType GetBayerFilter() const
Retrieves current optional Bayer filtering.
static bool IsConversionSupported(PvPixelType aSource, PvPixelType aDestination)
Test if a pixel type can be converted to another type.
virtual ~PvBufferConverter()
Destructor.
PvResult SetBayerFilter(PvBayerFilterType aFilter)
Set the optional Bayer filtering for this converter.
Contains a RGB filter configuration that can be used with a PvBufferConverter.
Definition: PvBufferConverterRGBFilter.h:35
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