Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

C2PassScale< DataClass > Class Template Reference

#include <pl2passscale.h>

Collaboration diagram for C2PassScale< DataClass >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef DataClass::_DataType _DataType
typedef DataClass::_RowType _RowType

Public Member Functions

 C2PassScale (const PLContribDef &ContribDef, ProgressAndAbortCallBack callback=NULL)
virtual ~C2PassScale ()
_RowTypeScale (_RowType *pOrigImage, PLUINT uOrigWidth, PLUINT uOrigHeight, _RowType *pDstImage, PLUINT uNewWidth, PLUINT uNewHeight)

Private Member Functions

LineContribTypeAllocContributions (PLUINT uLineLength, PLUINT uWindowSize)
void FreeContributions (LineContribType *p)
LineContribTypeCalcContributions (PLUINT uLineSize, PLUINT uSrcSize, double dScale)
void ScaleRow (_RowType *pSrc, PLUINT uSrcWidth, _RowType *pRes, PLUINT uResWidth, PLUINT uRow, LineContribType *Contrib)
void HorizScale (_RowType *pSrc, PLUINT uSrcWidth, PLUINT uSrcHeight, _RowType *pDst, PLUINT uResWidth, PLUINT uResHeight)
void VertScale (_RowType *pSrc, PLUINT uSrcWidth, PLUINT uSrcHeight, _RowType *pDst, PLUINT uResWidth, PLUINT uResHeight)

Private Attributes

ProgressAndAbortCallBack m_Callback
bool m_bCanceled
const PLContribDefm_ContribDef

template<class DataClass>
class C2PassScale< DataClass >


Member Typedef Documentation

template<class DataClass>
typedef DataClass::_DataType C2PassScale< DataClass >::_DataType
 

Definition at line 93 of file pl2passscale.h.

Referenced by C2PassScale< DataClass >::HorizScale(), C2PassScale< DataClass >::ScaleRow(), and C2PassScale< DataClass >::VertScale().

template<class DataClass>
typedef DataClass::_RowType C2PassScale< DataClass >::_RowType
 

Definition at line 94 of file pl2passscale.h.


Constructor & Destructor Documentation

template<class DataClass>
C2PassScale< DataClass >::C2PassScale const PLContribDef ContribDef,
ProgressAndAbortCallBack  callback = NULL
[inline]
 

Definition at line 96 of file pl2passscale.h.

template<class DataClass>
virtual C2PassScale< DataClass >::~C2PassScale  )  [inline, virtual]
 

Definition at line 101 of file pl2passscale.h.


Member Function Documentation

template<class DataClass>
LineContribType * C2PassScale< DataClass >::AllocContributions PLUINT  uLineLength,
PLUINT  uWindowSize
[private]
 

Definition at line 151 of file pl2passscale.h.

References LineContribType::ContribRow, LineContribType::LineLength, PLUINT, res, ContributionType::Weights, and LineContribType::WindowSize.

template<class DataClass>
LineContribType * C2PassScale< DataClass >::CalcContributions PLUINT  uLineSize,
PLUINT  uSrcSize,
double  dScale
[private]
 

Definition at line 183 of file pl2passscale.h.

References LineContribType::ContribRow, ContributionType::Left, max, min, PLASSERT, PLUINT, res, ContributionType::Right, and ContributionType::Weights.

Referenced by C2PassScale< DataClass >::HorizScale(), and C2PassScale< DataClass >::VertScale().

template<class DataClass>
void C2PassScale< DataClass >::FreeContributions LineContribType p  )  [private]
 

Definition at line 169 of file pl2passscale.h.

References LineContribType::ContribRow, LineContribType::LineLength, and ContributionType::Weights.

Referenced by C2PassScale< DataClass >::HorizScale(), and C2PassScale< DataClass >::VertScale().

template<class DataClass>
void C2PassScale< DataClass >::HorizScale _RowType pSrc,
PLUINT  uSrcWidth,
PLUINT  uSrcHeight,
_RowType pDst,
PLUINT  uResWidth,
PLUINT  uResHeight
[private]
 

Definition at line 278 of file pl2passscale.h.

References C2PassScale< DataClass >::_DataType, C2PassScale< DataClass >::CalcContributions(), C2PassScale< DataClass >::FreeContributions(), C2PassScale< DataClass >::m_bCanceled, C2PassScale< DataClass >::m_Callback, NULL, PLBYTE, PLUINT, and C2PassScale< DataClass >::ScaleRow().

Here is the call graph for this function:

template<class DataClass>
_RowType* C2PassScale< DataClass >::Scale _RowType pOrigImage,
PLUINT  uOrigWidth,
PLUINT  uOrigHeight,
_RowType pDstImage,
PLUINT  uNewWidth,
PLUINT  uNewHeight
 

Referenced by PLFilterResizeHamming::Apply(), PLFilterResizeGaussian::Apply(), PLFilterResizeBox::Apply(), and PLFilterResizeBilinear::Apply().

template<class DataClass>
void C2PassScale< DataClass >::ScaleRow _RowType pSrc,
PLUINT  uSrcWidth,
_RowType pRes,
PLUINT  uResWidth,
PLUINT  uRow,
LineContribType Contrib
[private]
 

Definition at line 256 of file pl2passscale.h.

References C2PassScale< DataClass >::_DataType, LineContribType::ContribRow, ContributionType::Left, PLUINT, ContributionType::Right, and ContributionType::Weights.

Referenced by C2PassScale< DataClass >::HorizScale().

template<class DataClass>
void C2PassScale< DataClass >::VertScale _RowType pSrc,
PLUINT  uSrcWidth,
PLUINT  uSrcHeight,
_RowType pDst,
PLUINT  uResWidth,
PLUINT  uResHeight
[private]
 

Definition at line 322 of file pl2passscale.h.

References C2PassScale< DataClass >::_DataType, C2PassScale< DataClass >::CalcContributions(), LineContribType::ContribRow, C2PassScale< DataClass >::FreeContributions(), ContributionType::Left, C2PassScale< DataClass >::m_bCanceled, C2PassScale< DataClass >::m_Callback, NULL, PLBYTE, PLUINT, ContributionType::Right, and ContributionType::Weights.

Here is the call graph for this function:


Member Data Documentation

template<class DataClass>
bool C2PassScale< DataClass >::m_bCanceled [private]
 

Definition at line 114 of file pl2passscale.h.

Referenced by C2PassScale< DataClass >::HorizScale(), and C2PassScale< DataClass >::VertScale().

template<class DataClass>
ProgressAndAbortCallBack C2PassScale< DataClass >::m_Callback [private]
 

Definition at line 113 of file pl2passscale.h.

Referenced by C2PassScale< DataClass >::HorizScale(), and C2PassScale< DataClass >::VertScale().

template<class DataClass>
const PLContribDef& C2PassScale< DataClass >::m_ContribDef [private]
 

Definition at line 146 of file pl2passscale.h.


The documentation for this class was generated from the following file:
Generated on Wed Dec 15 21:20:55 2004 for vuVolume by  doxygen 1.3.9.1