IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
PythonCudaImage.h
1 // PythonCudaImage.h:
3 // --------------
4 //
12 
13 #ifndef __PYIPSDKBASE_PYTHONCUDAIMAGE_H__
14 #define __PYIPSDKBASE_PYTHONCUDAIMAGE_H__
15 
16 // suppression warnings
17 // warning C4251: 'ipsdk::python::PythonImage::_pBuffer' : class 'boost::shared_ptr<ipsdk::HybridBuffer>' needs to have dll-interface to be used by clients of class 'ipsdk::python::PythonImage'
18 //#pragma warning (push)
19 //#pragma warning (disable : 4251)
20 
22 #include <Python/PyIPSDKBase/PythonImage.h>
24 #include <boost/scoped_ptr.hpp>
25 
26 namespace ipsdk {
27 namespace python {
28 
31 
33 {
34  // declare serial class
36 
37  // friend class for protected members access
38  friend boost::shared_ptr<PythonCudaImage> boost::make_shared<PythonCudaImage>();
39 
40 // predefined public types
41 public:
43  static const image::eImageType::domain g_imageType = image::eImageType::eIT_Gpu;
44 
45 protected:
48 
49 public:
51  ~PythonCudaImage();
52 
53 // methods
54 public:
55 
57  image::eImageType getImageType() const;
58 
60  void toCPU(ipsdk::image::ImagePtr pOutImage) const;
61 
63  ipsdk::image::ImageConstPtr toCPU() const;
64 
66  ipBool isGpuImage() const;
67 
69  ipBool isDiskImage() const;
70 
71 protected:
72 
73 
74 // attributes
75 public:
76 
77 
78 };
79 
82 
83 inline image::eImageType
85 {
86  return g_imageType;
87 }
88 
91 
92 } // end of namespace python
93 } // end of namespace ipsdk
94 
95 //#pragma warning (pop)
96 
97 #endif // __PYIPSDKBASE_PYTHONCUDAIMAGE_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
boost::shared_ptr< BaseImage > ImagePtr
Definition: ImageTypes.h:139
GPU image.
Definition: ImageTypes.h:66
#define PYIPSDKBASE_API
Import/Export macro for library PyIPSDKBase.
Definition: PyIPSDKBaseExports.h:25
image::eImageType getImageType() const
retrieve image type
Definition: PythonCudaImage.h:84
#define IPSDK_DECLARE_SERIAL_WITHOUT_COPY(libraryName, className)
macro enabling serialization on class
Definition: SerializationHdrMacro.h:79
Base class for IPSDK GPU image used through python.
Definition: PythonCudaImage.h:32
eImageType
Enumerate describing image type.
Definition: ImageTypes.h:58
boost::shared_ptr< const BaseImage > ImageConstPtr
Definition: ImageTypes.h:140
bool ipBool
Base types definition.
Definition: BaseTypes.h:47
static const image::eImageType::domain g_imageType
type associated to attribute
Definition: PythonCudaImage.h:43
Definition: CudaImage.h:28
Definition of import/export macro for library.