Pleora Technologies Inc. eBUS SDK v7.0.1.7536 API



PvCudaBufferConverter.h
Go to the documentation of this file.
1 // *****************************************************************************
2 //
3 // Copyright (c) 2025, Pleora Technologies Inc., All rights reserved.
4 //
5 // *****************************************************************************
6 
7 #ifndef __PVCUDABUFFERCONVERTER_H__
8 #define __PVCUDABUFFERCONVERTER_H__
9 
10 #include <PvBuffer.h>
11 #include <PvCudaBuffer.h>
12 
13 
14 namespace PvBufferLib
15 {
16 class CudaBufferConverter;
17 }
18 
21 
25 
29 
33 
35 {
38 
39 };
40 
41 
66 
67 class PV_BUFFER_API PvCudaBufferConverter
68 {
69 public:
74 
78  virtual ~PvCudaBufferConverter();
79 
97  static bool IsConversionSupported( PvPixelType aSource, PvPixelType aDestination );
98 
106  PvCudaBayerFilterType GetCudaBayerFilter() const;
107 
121  PvResult SetCudaBayerFilter( PvCudaBayerFilterType aFilter );
122 
137  PvResult Convert( const PvBuffer* aSource, PvBuffer* aDestination, bool aEnableCudaUVM );
138 
153  PvResult Convert( const PvBuffer* aSource,
154  PvCudaBuffer* aCudaDestination,
155  bool aEnableCudaUVM );
156 
157 
158 private:
159  // Not implemented
161  const PvCudaBufferConverter& operator=( const PvCudaBufferConverter& );
162 
163  // Not implemented
164  PvResult Convert( const PvCudaBuffer* aCudaSource,
165  PvCudaBuffer* aCudaDestination,
166  bool aEnableCudaUVM );
167 
168  PvBufferLib::CudaBufferConverter* mThis;
169 
170  // Default block size for CUDA
171  uint32_t mBlockSize = 16;
172 }; // End of PvCudaBufferConverter
173 
174 #endif
PvResult
Result information.
Definition: PvResult.h:29
PvCudaBayerFilterType::PvCudaBayerFilter3X3
@ PvCudaBayerFilter3X3
3x3 kernel considered when converting from Bayer.
PvCudaBuffer
Represents a block of Cuda data in memory either on host, device side or both if using UVM.
Definition: PvCudaBuffer.h:43
PvCudaBayerFilterType
PvCudaBayerFilterType
Filter settings for PvBufferConverter::SetBayerFilter.
Definition: PvCudaBufferConverter.h:34
PvPixelType
PvPixelType
Definition: PvPixelType.h:50
PvBuffer
Represents a block of GigE Vision or USB3 Vision data in memory.
Definition: PvBuffer.h:110
PvCudaBufferConverter
Used to convert a PvBuffer to another pixel type.
Definition: PvCudaBufferConverter.h:67
PvCudaBayerFilterType::PvCudaBayerFilterSimple
@ PvCudaBayerFilterSimple
2x2 nearest neighbor used when converting from Bayer.

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