Horus Doc || C++ Reference || Class Overview   Pixels   Images   Detector   Geometry   Registry || Doxygen's quick Index  

HxImageTem Class Template Reference

Template class for operations that are independent of image dimensionality. More...

#include <HxImageTem.h>

Inheritance diagram for HxImageTem::

HxImageData HxRcObject HxImageTem2d HxImageTem3d List of all members.

Public Types

typedef TYPENAME ImageSigT::ArithType ArithType
typedef TYPENAME ImageSigT::ArithTypeDouble ArithTypeDouble
typedef TYPENAME ImageSigT::DataPtrType DataPtrType
typedef TYPENAME ImageSigT::ArithImageSigType ArithImageSigType
typedef TYPENAME ImageSigT::ArithImageSigTypeDouble ArithImageSigTypeDouble

Public Methods

 HxImageTem ()
 HxImageTem (const HxImageTem &)
virtual ~HxImageTem ()
int dimensionality () const
 Get dimensionality. More...

int dimensionSize (int i) const
 Get image size in given dimension. More...

HxSizes sizes () const
 Get image sizes. More...

int numberOfPixels () const
 Get total number of pixels. More...

int pixelDimensionality () const
 Get dimensionality of pixels. More...

HxValueType pixelType () const
 Get type of pixel. More...

int pixelPrecision () const
 Get pixel precision. More...

HxImageSignature signature () const
 Get image signature. More...

virtual void set (double *pixels)
virtual void getValues (HxPointListConstIter first, HxPointListConstIter last, HxValueListBackInserter)=0
virtual void setAt (int x, int y, int z, const HxValue val)
virtual HxValue getAt (int x, int y, int z) const
virtual void getDoublePixels (double *pixels)
virtual STD_OSTREAM & printInfo (STD_OSTREAM &os, int doData=0) const
virtual HxImageTem< ImageSigT > * makeScratch (HxSizes border) const
virtual DataPtrType dataPtrClone () const=0

Protected Attributes

int _dimSizes [3]

Detailed Description

template<class ImageSigT>
class HxImageTem< ImageSigT >

Template class for operations that are independent of image dimensionality.


Member Function Documentation

template<class ImageSigT>
int HxImageTem< ImageSigT >::dimensionality   const [virtual]
 

Get dimensionality.

Reimplemented from HxImageData.

00046 {
00047     return ImageSigT().imageDimensionality();
00048 }

template<class ImageSigT>
int HxImageTem< ImageSigT >::dimensionSize int    i const [virtual]
 

Get image size in given dimension.

Reimplemented from HxImageData.

00053 {
00054     return ((i<1) || (i>dimensionality())) ? 1 : _dimSizes[i-1];
00055 }

template<class ImageSigT>
HxSizes HxImageTem< ImageSigT >::sizes   const [virtual]
 

Get image sizes.

Reimplemented from HxImageData.

00060 {
00061     return HxSizes(_dimSizes[0], _dimSizes[1], _dimSizes[2]);
00062 }

template<class ImageSigT>
int HxImageTem< ImageSigT >::numberOfPixels   const [virtual]
 

Get total number of pixels.

Reimplemented from HxImageData.

00067 {
00068     int dim = dimensionality();
00069     int nPix = 1;
00070     for (int i=1 ; i<=dim ; i++)
00071         nPix *= dimensionSize(i);
00072     return nPix;
00073 }

template<class ImageSigT>
int HxImageTem< ImageSigT >::pixelDimensionality   const [virtual]
 

Get dimensionality of pixels.

Reimplemented from HxImageData.

00078 {
00079     return ImageSigT().pixelDimensionality();
00080 }

template<class ImageSigT>
HxValueType HxImageTem< ImageSigT >::pixelType   const [virtual]
 

Get type of pixel.

Reimplemented from HxImageData.

00085 {
00086     return ImageSigT().pixelType();
00087 }

template<class ImageSigT>
int HxImageTem< ImageSigT >::pixelPrecision   const [virtual]
 

Get pixel precision.

Reimplemented from HxImageData.

00092 {
00093     return ImageSigT().pixelPrecision();
00094 }

template<class ImageSigT>
HxImageSignature HxImageTem< ImageSigT >::signature   const [virtual]
 

Get image signature.

Reimplemented from HxImageData.

00099 {
00100     return ImageSigT();
00101 }


The documentation for this class was generated from the following files:
Generated on Tue Feb 3 14:18:57 2004 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001