DiRotateTemplate< T > Class Template Reference

Template class to rotate images (on pixel data level). More...

Inheritance diagram for DiRotateTemplate< T >:

DiTransTemplate< T > DiColorRotateTemplate< T > DiMonoRotateTemplate< T > List of all members.

Public Member Functions

 DiRotateTemplate (DiPixel *pixel, const Uint16 src_cols, const Uint16 src_rows, const Uint16 dest_cols, const Uint16 dest_rows, const Uint32 frames, const int degree)
 constructor.
 DiRotateTemplate (const int planes, const Uint16 src_cols, const Uint16 src_rows, const Uint16 dest_cols, const Uint16 dest_rows, const Uint32 frames)
 constructor.
virtual ~DiRotateTemplate ()
 destructor
void rotateData (const T *src[], T *dest[], const int degree)
 choose algorithm depending on rotation angle

Protected Member Functions

void rotateLeft (const T *src[], T *dest[])
 rotate source image left and store result in destination image
void rotateRight (const T *src[], T *dest[])
 rotate source image right and store result in destination image
void rotateTopDown (const T *src[], T *dest[])
 rotate source image top-down and store result in destination image

Private Member Functions

void rotateLeft (T *data[])
 rotate image left and store result in the same storage area
void rotateRight (T *data[])
 rotate image right and store result in the same storage area
void rotateTopDown (T *data[])
 rotate image top-down and store result in the same storage area

Detailed Description

template<class T>
class DiRotateTemplate< T >

Template class to rotate images (on pixel data level).

by steps of 90 degrees

Definition at line 53 of file dirotat.h.


Constructor & Destructor Documentation

template<class T>
DiRotateTemplate< T >::DiRotateTemplate DiPixel pixel,
const Uint16  src_cols,
const Uint16  src_rows,
const Uint16  dest_cols,
const Uint16  dest_rows,
const Uint32  frames,
const int  degree
[inline]
 

constructor.

This method is used to rotate an image and store the result in the same storage area.

Parameters:
pixel pointer to object where the pixel data are stored
src_cols original width of the image
src_rows original height of the image
dest_cols new width of the image
dest_rows new height of the image
frames number of frames
degree angle by which the image should be rotated

Definition at line 70 of file dirotat.h.

References DicomImageClass::checkDebugLevel(), DicomImageClass::DL_Warnings, DiPixel::getCount(), DiPixel::getDataArrayPtr(), DiPixel::getPlanes(), DiTransTemplate< T >::Planes, DiRotateTemplate< T >::rotateLeft(), DiRotateTemplate< T >::rotateRight(), and DiRotateTemplate< T >::rotateTopDown().

template<class T>
DiRotateTemplate< T >::DiRotateTemplate const int  planes,
const Uint16  src_cols,
const Uint16  src_rows,
const Uint16  dest_cols,
const Uint16  dest_rows,
const Uint32  frames
[inline]
 

constructor.

This method is used to perform only the preparation and to start rotation later with method 'rotateData()'

Parameters:
planes number of planes (1 or 3)
src_cols original width of the image
src_rows original height of the image
dest_cols new width of the image
dest_rows new height of the image
frames number of frames

Definition at line 111 of file dirotat.h.


Member Function Documentation

template<class T>
void DiRotateTemplate< T >::rotateData const T *  src[],
T *  dest[],
const int  degree
[inline]
 

choose algorithm depending on rotation angle

Parameters:
src array of pointers to source image pixels
dest array of pointers to destination image pixels
degree angle by which the image should be rotated

Definition at line 133 of file dirotat.h.

References DiTransTemplate< T >::copyPixel(), DiRotateTemplate< T >::rotateLeft(), DiRotateTemplate< T >::rotateRight(), and DiRotateTemplate< T >::rotateTopDown().

template<class T>
void DiRotateTemplate< T >::rotateLeft T *  data[]  )  [inline, private]
 

rotate image left and store result in the same storage area

Parameters:
data array of pointers to source/destination image pixels

Definition at line 259 of file dirotat.h.

References OFBitmanipTemplate< T >::copyMem(), DiTransTemplate< T >::Dest_X, and DiTransTemplate< T >::Planes.

template<class T>
void DiRotateTemplate< T >::rotateLeft const T *  src[],
T *  dest[]
[inline, protected]
 

rotate source image left and store result in destination image

Parameters:
src array of pointers to source image pixels
dest array of pointers to destination image pixels

Definition at line 155 of file dirotat.h.

References DiTransTemplate< T >::Dest_X, and DiTransTemplate< T >::Planes.

Referenced by DiRotateTemplate< T >::DiRotateTemplate(), and DiRotateTemplate< T >::rotateData().

template<class T>
void DiRotateTemplate< T >::rotateRight T *  data[]  )  [inline, private]
 

rotate image right and store result in the same storage area

Parameters:
data array of pointers to source/destination image pixels

Definition at line 297 of file dirotat.h.

References OFBitmanipTemplate< T >::copyMem(), DiTransTemplate< T >::Dest_X, and DiTransTemplate< T >::Planes.

template<class T>
void DiRotateTemplate< T >::rotateRight const T *  src[],
T *  dest[]
[inline, protected]
 

rotate source image right and store result in destination image

Parameters:
src array of pointers to source image pixels
dest array of pointers to destination image pixels

Definition at line 192 of file dirotat.h.

References DiTransTemplate< T >::Dest_X, and DiTransTemplate< T >::Planes.

Referenced by DiRotateTemplate< T >::DiRotateTemplate(), and DiRotateTemplate< T >::rotateData().

template<class T>
void DiRotateTemplate< T >::rotateTopDown T *  data[]  )  [inline, private]
 

rotate image top-down and store result in the same storage area

Parameters:
data array of pointers to source/destination image pixels

Definition at line 335 of file dirotat.h.

References DiTransTemplate< T >::Planes.

template<class T>
void DiRotateTemplate< T >::rotateTopDown const T *  src[],
T *  dest[]
[inline, protected]
 

rotate source image top-down and store result in destination image

Parameters:
src array of pointers to source image pixels
dest array of pointers to destination image pixels

Definition at line 229 of file dirotat.h.

References DiTransTemplate< T >::Planes.

Referenced by DiRotateTemplate< T >::DiRotateTemplate(), and DiRotateTemplate< T >::rotateData().


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


Generated on 20 Dec 2005 for OFFIS DCMTK Version 3.5.4 by Doxygen 1.4.5