20#ifndef __TERRALIB_RASTER_INTERNAL_GAINOFFSETPROXYBAND_H
21#define __TERRALIB_RASTER_INTERNAL_GAINOFFSETPROXYBAND_H
51 const double gain,
const double offset,
const double& noDataValue );
58 void getValue(
unsigned int c,
unsigned int r,
double& value)
const;
59 void setValue(
unsigned int c,
unsigned int r,
const double value);
60 void getIValue(
unsigned int c,
unsigned int r,
double& value)
const;
61 void setIValue(
unsigned int c,
unsigned int r,
const double value);
62 void read(
int x,
int y,
void* buffer)
const;
64 void write(
int x,
int y,
void* buffer);
Utility functions for dealing with raster data blocks.
A raster band description.
Band(BandProperty *p, std::size_t idx)
Constructor.
void * m_internalBufferPtr
A pointer to the internal data block buffer.
te::rst::GainOffsetProxyRaster * m_proxyRasterPtr
The proxy raster instance (parent raster).
int m_blkPixelsNumber
The blocks number of pixels;.
te::rst::Raster * getRaster() const
Returns the associated raster.
double m_externalBandNoDataValue
External band no-data value.
void setIValue(unsigned int c, unsigned int r, const double value)
Sets the imaginary attribute value in a complex band of a cell.
GainOffsetProxyBand(const GainOffsetProxyBand &other)
double m_newNoDataValue
External value to be interpreted as No-data values.
void setValue(unsigned int c, unsigned int r, const double value)
Sets the cell attribute value.
te::rst::GetBufferValueFPtr m_getBuff
A pointer to a function that helps to extract a double or complex value from a specific buffer data t...
void getValue(unsigned int c, unsigned int r, double &value) const
Returns the cell attribute value.
void write(int x, int y, void *buffer)
It writes a data block from the specified buffer.
void getIValue(unsigned int c, unsigned int r, double &value) const
Returns the imaginary attribute value in a complex band of a cell.
te::rst::SetBufferValueFPtr m_setBuffI
A pointer to a function that helps to insert the imaginary part value into a specific buffer data typ...
double m_setValue_auxValue
GainOffsetProxyBand(te::rst::Raster &raster, GainOffsetProxyRaster &proxyRaster, std::size_t idx, const double gain, const double offset, const double &noDataValue)
Default Constructor.
te::rst::GetBufferValueFPtr m_getBuffI
A pointer to a function that helps to extract the imaginary part value from a specific buffer data ty...
double m_gain
Gain to be applied to this band values.
te::rst::Raster * m_externalRasterPtr
The original external raster instance.
double m_setIValue_auxValue
double m_offset
Offset to applied to this band values.
void * read(int x, int y)
It reads and returns a data block.
Band * m_externalBandPtr
Pointers the external bands.
te::rst::SetBufferValueFPtr m_setBuff
A pointer to a function that helps to insert a double or complex value into a specific buffer data ty...
void read(int x, int y, void *buffer) const
It reads a data block to the specified buffer.
A proxy class to dynamically apply gains/offsets to/from each input raster band.
An abstract class for raster data strucutures.
Namespace for the Raster module of TerraLib.
void(* SetBufferValueFPtr)(int index, void *buffer, const double *value)
The type of function used to extract data from a buffer.
void(* GetBufferValueFPtr)(int index, void *buffer, double *value)
The type of function used to extract data from a buffer.
It gives access to values in one band (dimension) of a raster.
Configuration flags for the Raster module of TerraLib.
#define TERASTEREXPORT
You can use this macro in order to export/import classes and functions from this module.