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

vrvis::ImageBand< DataTypeT > Class Template Reference

Class representing one band/layer of an image. More...

#include <ImageBand.hpp>

Inheritance diagram for vrvis::ImageBand< DataTypeT >:

vrvis::RasterData List of all members.

Public Member Functions

Constructor & Destructor
 ImageBand (Image< DataTypeT > *pParentImage, const int cBandIndex)
 Constructor.
 ~ImageBand (void)
 Destructor.
Data loading/unloading
void load (void)
 Loads the data from file into the member data structure.
void unload (void)
 Unloads the member data structure.
Accessors
void getSizeInPixels (int &rPixelsX, int &rPixelsY) const
 Get band size (x, y) in pixels.
double * getValues (void) const
 Get pointer to the value storage.
DataTypeT getMinValue (void) const
 Get minimum band value.
DataTypeT getMaxValue (void) const
 Get maximum band value.
GDALRasterBand * getGDALRasterBand (void)
 Get GDAL representation of the band.

Detailed Description

template<class DataTypeT>
class vrvis::ImageBand< DataTypeT >

Represents one band of a multi-band Image. Implements RasterData, therefore eligible to be displayed in a LayerComponent. Templated to suit any type of contained data.
See also:
RasterData, LayerComponent


Constructor & Destructor Documentation

template<class DataTypeT>
vrvis::ImageBand< DataTypeT >::ImageBand Image< DataTypeT > *  pParentImage,
const int  cBandIndex
[inline]
 

Constructor.

Parameters:
pParentImage Pointer to the Image, out of which the Band will be extracted.
cBandIndex Index iof this Band within the Image [0 <= i <= No. of Bands].

template<class DataTypeT>
vrvis::ImageBand< DataTypeT >::~ImageBand void   )  [inline]
 

Destructor. Unloads the band.


Member Function Documentation

template<class DataTypeT>
GDALRasterBand * vrvis::ImageBand< DataTypeT >::getGDALRasterBand void   )  [inline]
 

Get the GDALRasterBand representation of this band.

Returns:
Pointer to the GDALRasterBand member.

template<class DataTypeT>
DataTypeT vrvis::ImageBand< DataTypeT >::getMaxValue void   )  const [inline]
 

Get maximum Band value.

Returns:
Maximal band value (still in the original data type, not normalized).

template<class DataTypeT>
DataTypeT vrvis::ImageBand< DataTypeT >::getMinValue void   )  const [inline]
 

Get minimum Band value.

Returns:
Minimal band value (still in the original data type, not normalized).

template<class DataTypeT>
void vrvis::ImageBand< DataTypeT >::getSizeInPixels int &  rPixelsX,
int &  rPixelsY
const [inline, virtual]
 

Get band size in pixels.

Parameters:
rPixelsX Returns width in pixels.
rPixelsY Returns height in pixels.

Implements vrvis::RasterData.

template<class DataTypeT>
double * vrvis::ImageBand< DataTypeT >::getValues void   )  const [inline, virtual]
 

Get pointer to the storage of the normalized data.

Returns:
Pointer to data storage.

Implements vrvis::RasterData.

template<class DataTypeT>
void vrvis::ImageBand< DataTypeT >::load void   )  [inline, virtual]
 

Loads the image data from file into the floating-point data storage member. In the course of loading, the data is normalized in the following way:

[ MinImageDataValue, MaxImageDataValue ] => [ 0.0, 1.0 ]

with MinImageDataValue being the minimum band value and MaxImageDataValue being the maximum data value in the containing Image(!). This way, all bands of an Image are normalized using the same factor. Once loaded, another attempt to load the Band is without effect.

Implements vrvis::RasterData.

template<class DataTypeT>
void vrvis::ImageBand< DataTypeT >::unload void   )  [inline, virtual]
 

Unload the Band, if it was loaded previously. All resources allocated in load() are freed.

Implements vrvis::RasterData.


The documentation for this class was generated from the following files:
Generated on Tue Sep 21 07:31:11 2004 for VRVis by doxygen 1.3.8