HEVC Test Model (HM)  HM-16.18
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members

picture YUV buffer class More...

#include <TComPicYuv.h>

Public Member Functions

Int getWidth (const ComponentID id) const
 
Int getHeight (const ComponentID id) const
 
ChromaFormat getChromaFormat () const
 
UInt getNumberValidComponents () const
 
Int getStride (const ComponentID id) const
 
Int getTotalHeight (const ComponentID id) const
 
Int getMarginX (const ComponentID id) const
 
Int getMarginY (const ComponentID id) const
 
PelgetBuf (const ComponentID ch)
 
const PelgetBuf (const ComponentID ch) const
 
PelgetAddr (const ComponentID ch)
 
const PelgetAddr (const ComponentID ch) const
 
PelgetAddr (const ComponentID ch, const Int ctuRSAddr)
 
const PelgetAddr (const ComponentID ch, const Int ctuRSAddr) const
 
PelgetAddr (const ComponentID ch, const Int ctuRSAddr, const Int uiAbsZorderIdx)
 
const PelgetAddr (const ComponentID ch, const Int ctuRSAddr, const Int uiAbsZorderIdx) const
 
UInt getComponentScaleX (const ComponentID id) const
 
UInt getComponentScaleY (const ComponentID id) const
 
UInt getChannelTypeScaleX (const ChannelType id) const
 
UInt getChannelTypeScaleY (const ChannelType id) const
 
Void setBorderExtension (Bool b)
 
 TComPicYuv ()
 
virtual ~TComPicYuv ()
 
Void create (const Int picWidth, const Int picHeight, const ChromaFormat chromaFormatIDC, const UInt maxCUWidth, const UInt maxCUHeight, const UInt maxCUDepth, const Bool bUseMargin)
 if true, then a margin of uiMaxCUWidth+16 and uiMaxCUHeight+16 is created around the image. More...
 
Void createWithoutCUInfo (const Int picWidth, const Int picHeight, const ChromaFormat chromaFormatIDC, const Bool bUseMargin=false, const UInt maxCUWidth=0, const UInt maxCUHeight=0)
 used for margin only More...
 
Void destroy ()
 
Void copyToPic (TComPicYuv *pcPicYuvDst) const
 
Void extendPicBorder ()
 
Void dump (const std::string &fileName, const BitDepths &bitDepths, const Bool bAppend=false, const Bool bForceTo8Bit=false) const
 

Private Member Functions

Int getStride (const ChannelType id) const
 

Private Attributes

Pelm_apiPicBuf [MAX_NUM_COMPONENT]
 Buffer (including margin) More...
 
Pelm_piPicOrg [MAX_NUM_COMPONENT]
 m_apiPicBufY + m_iMarginLuma*getStride() + m_iMarginLuma More...
 
Int m_picWidth
 Width of picture in pixels. More...
 
Int m_picHeight
 Height of picture in pixels. More...
 
ChromaFormat m_chromaFormatIDC
 Chroma Format. More...
 
Intm_ctuOffsetInBuffer [MAX_NUM_CHANNEL_TYPE]
 Gives an offset in the buffer for a given CTU (and channel) More...
 
Intm_subCuOffsetInBuffer [MAX_NUM_CHANNEL_TYPE]
 Gives an offset in the buffer for a given sub-CU (and channel), relative to start of CTU. More...
 
Int m_marginX
 margin of Luma channel (chroma's may be smaller, depending on ratio) More...
 
Int m_marginY
 margin of Luma channel (chroma's may be smaller, depending on ratio) More...
 
Bool m_bIsBorderExtended
 

Detailed Description

picture YUV buffer class

Definition at line 55 of file TComPicYuv.h.

Member Function Documentation

Pel* TComPicYuv::getAddr ( const ComponentID  ch)
inline

Definition at line 139 of file TComPicYuv.h.

const Pel* TComPicYuv::getAddr ( const ComponentID  ch) const
inline

Definition at line 140 of file TComPicYuv.h.

Pel* TComPicYuv::getAddr ( const ComponentID  ch,
const Int  ctuRSAddr 
)
inline

Definition at line 143 of file TComPicYuv.h.

const Pel* TComPicYuv::getAddr ( const ComponentID  ch,
const Int  ctuRSAddr 
) const
inline

Definition at line 144 of file TComPicYuv.h.

Pel* TComPicYuv::getAddr ( const ComponentID  ch,
const Int  ctuRSAddr,
const Int  uiAbsZorderIdx 
)
inline

Definition at line 145 of file TComPicYuv.h.

const Pel* TComPicYuv::getAddr ( const ComponentID  ch,
const Int  ctuRSAddr,
const Int  uiAbsZorderIdx 
) const
inline

Definition at line 147 of file TComPicYuv.h.

Pel* TComPicYuv::getBuf ( const ComponentID  ch)
inline

Definition at line 135 of file TComPicYuv.h.

const Pel* TComPicYuv::getBuf ( const ComponentID  ch) const
inline

Definition at line 136 of file TComPicYuv.h.

UInt TComPicYuv::getChannelTypeScaleX ( const ChannelType  id) const
inline

Definition at line 153 of file TComPicYuv.h.

UInt TComPicYuv::getChannelTypeScaleY ( const ChannelType  id) const
inline

Definition at line 154 of file TComPicYuv.h.

ChromaFormat TComPicYuv::getChromaFormat ( ) const
inline

Definition at line 118 of file TComPicYuv.h.

UInt TComPicYuv::getComponentScaleX ( const ComponentID  id) const
inline

Definition at line 150 of file TComPicYuv.h.

UInt TComPicYuv::getComponentScaleY ( const ComponentID  id) const
inline

Definition at line 151 of file TComPicYuv.h.

Int TComPicYuv::getHeight ( const ComponentID  id) const
inline

Definition at line 117 of file TComPicYuv.h.

Int TComPicYuv::getMarginX ( const ComponentID  id) const
inline

Definition at line 127 of file TComPicYuv.h.

Int TComPicYuv::getMarginY ( const ComponentID  id) const
inline

Definition at line 128 of file TComPicYuv.h.

UInt TComPicYuv::getNumberValidComponents ( ) const
inline

Definition at line 119 of file TComPicYuv.h.

Int TComPicYuv::getStride ( const ComponentID  id) const
inline

Definition at line 121 of file TComPicYuv.h.

Int TComPicYuv::getStride ( const ChannelType  id) const
inlineprivate

Definition at line 123 of file TComPicYuv.h.

Int TComPicYuv::getTotalHeight ( const ComponentID  id) const
inline

Definition at line 125 of file TComPicYuv.h.

Int TComPicYuv::getWidth ( const ComponentID  id) const
inline

Definition at line 116 of file TComPicYuv.h.

Void TComPicYuv::setBorderExtension ( Bool  b)
inline

Definition at line 170 of file TComPicYuv.h.

Member Data Documentation

Pel* TComPicYuv::m_apiPicBuf[MAX_NUM_COMPONENT]
private

Buffer (including margin)

Definition at line 63 of file TComPicYuv.h.

Bool TComPicYuv::m_bIsBorderExtended
private

Definition at line 81 of file TComPicYuv.h.

ChromaFormat TComPicYuv::m_chromaFormatIDC
private

Chroma Format.

Definition at line 73 of file TComPicYuv.h.

Int* TComPicYuv::m_ctuOffsetInBuffer[MAX_NUM_CHANNEL_TYPE]
private

Gives an offset in the buffer for a given CTU (and channel)

Definition at line 75 of file TComPicYuv.h.

Int TComPicYuv::m_marginX
private

margin of Luma channel (chroma's may be smaller, depending on ratio)

Definition at line 78 of file TComPicYuv.h.

Int TComPicYuv::m_marginY
private

margin of Luma channel (chroma's may be smaller, depending on ratio)

Definition at line 79 of file TComPicYuv.h.

Int TComPicYuv::m_picHeight
private

Height of picture in pixels.

Definition at line 72 of file TComPicYuv.h.

Int TComPicYuv::m_picWidth
private

Width of picture in pixels.

Definition at line 71 of file TComPicYuv.h.

Pel* TComPicYuv::m_piPicOrg[MAX_NUM_COMPONENT]
private

m_apiPicBufY + m_iMarginLuma*getStride() + m_iMarginLuma

Definition at line 65 of file TComPicYuv.h.

Int* TComPicYuv::m_subCuOffsetInBuffer[MAX_NUM_CHANNEL_TYPE]
private

Gives an offset in the buffer for a given sub-CU (and channel), relative to start of CTU.

Definition at line 76 of file TComPicYuv.h.


The documentation for this class was generated from the following files: