Pleora Technologies Inc. eBUS SDK v6.5.4.7277 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 
59 
64 {
67 
69 
70 
89 class PV_BUFFER_API PvBufferConverter
90 {
91 public:
92 
102  PvBufferConverter( int32_t aMaxNumberOfThreads = -1 );
103 
107  virtual ~PvBufferConverter();
108 
126  static bool IsConversionSupported( PvPixelType aSource, PvPixelType aDestination );
127 
147  PvResult Convert( const PvBuffer *aSource, PvBuffer *aDestination, bool aReallocIfNeeded = true, bool aFlipY = false );
148 
168  PvResult Convert( const IPvImage *aSource, PvBuffer *aDestination, bool aReallocIfNeeded = true, bool aFlipY = false );
169 
177  PvBayerFilterType GetBayerFilter() const;
178 
192  PvResult SetBayerFilter( PvBayerFilterType aFilter );
193 
201  PvBiColorFilterType GetBiColorFilter() const;
202 
216  PvResult SetBiColorFilter( PvBiColorFilterType aFilter );
217 
225  PvResult ResetRGBFilter();
226 
236  PvResult SetRGBFilter( PvBufferConverterRGBFilter &aFilter );
237 
245  uint32_t GetConversionThreadsPriority() const;
246 
266  PvResult SetConversionThreadsPriority( uint32_t aPriority );
267 
268 protected:
269 
270 private:
271 
272  // Not implemented
274  const PvBufferConverter &operator=( const PvBufferConverter & );
275 
276  PvBufferLib::BufferConverter *mThis;
277 };
278 
279 #endif
Used to convert a PvBuffer to another pixel type.
Definition: PvBufferConverter.h:89
Result information.
Definition: PvResult.h:29
PvPixelType
Definition: PvPixelType.h:57
Generic image interface.
Definition: PvImage.h:20
Contains a RGB filter configuration that can be used with a PvBufferConverter.
Definition: PvBufferConverterRGBFilter.h:34
PvBiColorFilterType
Filter settings for PvBufferConverter::SetBiColorFilter.
Definition: PvBufferConverter.h:63
2x2 nearest neighbor used when converting from Bayer.
Definition: PvBufferConverter.h:39
Represents a block of GigE Vision or USB3 Vision data in memory.
Definition: PvBuffer.h:95
1x3 kernel considered when converting from BiColor.
Definition: PvBufferConverter.h:66
PvBayerFilterType
Filter settings for PvBufferConverter::SetBayerFilter.
Definition: PvBufferConverter.h:37
1x2 kernel considered when converting from BiColor.
Definition: PvBufferConverter.h:65
Definition: PvBuffer.h:19
3x3 kernel considered when converting from Bayer.
Definition: PvBufferConverter.h:40

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