Pleora Technologies Inc. eBUS SDK v6.6.1.7474 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 #ifndef EBUS_ENUM
11 #define EBUS_ENUM(x) typedef enum
12 #endif
13 
14 #include <PvBuffer.h>
15 #include <PvBufferConverterRGBFilter.h>
16 
17 
18 namespace PvBufferLib
19 {
20  class BufferConverter;
21 }
22 
25 
29 
33 
38 {
41 
43 
47 
51 
55 
57 {
60 
62 
63 
82 class PV_BUFFER_API PvBufferConverter
83 {
84 public:
85 
95  PvBufferConverter( int32_t aMaxNumberOfThreads = -1 );
96 
100  virtual ~PvBufferConverter();
101 
119  static bool IsConversionSupported( PvPixelType aSource, PvPixelType aDestination );
120 
140  PvResult Convert( const PvBuffer *aSource, PvBuffer *aDestination, bool aReallocIfNeeded = true, bool aFlipY = false );
141 
161  PvResult Convert( const IPvImage *aSource, PvBuffer *aDestination, bool aReallocIfNeeded = true, bool aFlipY = false );
162 
170  PvBayerFilterType GetBayerFilter() const;
171 
185  PvResult SetBayerFilter( PvBayerFilterType aFilter );
186 
194  PvBiColorFilterType GetBiColorFilter() const;
195 
209  PvResult SetBiColorFilter( PvBiColorFilterType aFilter );
210 
218  PvResult ResetRGBFilter();
219 
229  PvResult SetRGBFilter( PvBufferConverterRGBFilter &aFilter );
230 
238  uint32_t GetConversionThreadsPriority() const;
239 
259  PvResult SetConversionThreadsPriority( uint32_t aPriority );
260 
261 protected:
262 
263 private:
264 
265  // Not implemented
267  const PvBufferConverter &operator=( const PvBufferConverter & );
268 
269  PvBufferLib::BufferConverter *mThis;
270 };
271 
272 #endif
PvResult
Result information.
Definition: PvResult.h:29
PvBiColorFilter1X2
@ PvBiColorFilter1X2
1x2 kernel considered when converting from BiColor.
Definition: PvBufferConverter.h:58
IPvImage
Generic image interface.
Definition: PvImage.h:20
PvBufferConverterRGBFilter
Contains a RGB filter configuration that can be used with a PvBufferConverter.
Definition: PvBufferConverterRGBFilter.h:34
PvBayerFilter3X3
@ PvBayerFilter3X3
3x3 kernel considered when converting from Bayer.
Definition: PvBufferConverter.h:40
PvBufferConverter
Used to convert a PvBuffer to another pixel type.
Definition: PvBufferConverter.h:82
PvBayerFilterType
PvBayerFilterType
Filter settings for PvBufferConverter::SetBayerFilter.
Definition: PvBufferConverter.h:37
PvBayerFilterSimple
@ PvBayerFilterSimple
2x2 nearest neighbor used when converting from Bayer.
Definition: PvBufferConverter.h:39
PvPixelType
PvPixelType
Definition: PvPixelType.h:57
PvBiColorFilter1X3
@ PvBiColorFilter1X3
1x3 kernel considered when converting from BiColor.
Definition: PvBufferConverter.h:59
PvBuffer
Represents a block of GigE Vision or USB3 Vision data in memory.
Definition: PvBuffer.h:95
PvBiColorFilterType
PvBiColorFilterType
Filter settings for PvBufferConverter::SetBiColorFilter.
Definition: PvBufferConverter.h:56

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