Changeset 1191 in 3DVCSoftware for branches/HTM-14.0-MV-draft-3/source/Lib/TLibRenderer/TRenImage.h
- Timestamp:
- 15 Apr 2015, 11:36:33 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HTM-14.0-MV-draft-3/source/Lib/TLibRenderer/TRenImage.h
r1179 r1191 39 39 #include "../TLibCommon/TComPicYuv.h" 40 40 #include "TRenImagePlane.h" 41 #if H_3D42 43 44 #define PelImage TRenImage<Pel>45 #define DoubleImage TRenImage<Double>46 #define IntImage TRenImage<Int>47 48 49 template<typename T>50 class TRenImage51 {52 public:53 54 // Construction55 TRenImage( TRenImage& rcInputImage );56 TRenImage();57 // TRenImage( TRenImagePlane<T>** ppcYPlanes, UInt uiNumberOfFullPlanes, UInt uiNumberOfQuaterPlanes );58 59 TRenImage( UInt uiWidth, UInt uiHeight, UInt uiNumPlanes, UInt uiNumQPlanes );60 TRenImage( TComPicYuv* pcPicYuvIn, Bool bFirstPlaneOnly = false );61 62 Void allocatePlanes(UInt uiWidth, UInt uiHeight, UInt uiNumFullPlanes, UInt uiNumQuaterPlanes);63 ~TRenImage();64 65 TRenImage* create();66 Void init();67 68 // Get Planes and data69 TRenImagePlane<T>* getPlane(UInt uiPlaneNumber) const;70 TRenImagePlane<T>** getPlanes() const;71 72 Void getDataAndStrides( T** pptData, Int* piStrides );73 Void getWidthAndHeight( Int* piWidths, Int* piHeights );74 75 UInt getNumberOfPlanes() const;76 UInt getNumberOfQuaterPlanes() const;77 UInt getNumberOfFullPlanes() const;78 Bool is420() {return m_uiNumberOfFullPlanes == 1 && m_uiNumberOfQuaterPlanes == 2; };79 Bool is444() {return m_uiNumberOfFullPlanes == 3 && m_uiNumberOfQuaterPlanes == 0; };80 Bool is400() {return m_uiNumberOfFullPlanes == 1 && m_uiNumberOfQuaterPlanes == 0; };81 82 // Assign83 Void assign(Int iVal);84 template<typename S> Void assign(TRenImage<S>* pcSrcImage);85 Void setData( TRenImage* pcInputImage, Bool bClean );86 87 Void extendMargin();88 // Operators89 Void devide( Double dDevisor );90 91 92 private:93 94 UInt m_uiNumberOfFullPlanes;95 UInt m_uiNumberOfQuaterPlanes;96 UInt m_uiNumberOfPlanes;97 TRenImagePlane<T> ** m_apcPlanes; // First Full Planes, then Quater Planes98 99 Void xDeletePlanes();100 };101 102 #endif // H_3D103 41 #endif // __TRENIMAGE__ 104 42
Note: See TracChangeset for help on using the changeset viewer.