26 #ifndef __TERRALIB_RASTER_INTERNAL_SYNCHRONIZEDBAND_H
27 #define __TERRALIB_RASTER_INTERNAL_SYNCHRONIZEDBAND_H
36 #include <boost/noncopyable.hpp>
42 class SynchronizedRaster;
71 void getValue(
unsigned int c,
unsigned int r,
double& value)
const;
73 void setValue(
unsigned int c,
unsigned int r,
const double value);
75 void getIValue(
unsigned int c,
unsigned int r,
double& value)
const;
77 void setIValue(
unsigned int c,
unsigned int r,
const double value);
79 void read(
int x,
int y,
void* buffer)
const;
83 void write(
int x,
int y,
void* buffer);
Utility functions for dealing with raster data blocks.
Synchronized raster raster band blocks manager.
A raster band description.
An abstract class for raster data strucutures.
Synchronized raster raster band blocks manager.
Syncrhonized raster band.
void setIValue(unsigned int c, unsigned int r, const double value)
Sets the imaginary attribute value in a complex band of a cell.
unsigned int m_blkSizeBytes
The blocks size (bytes);.
void setValue(unsigned int c, unsigned int r, const double value)
Sets the cell attribute value.
void getValue(unsigned int c, unsigned int r, double &value) const
Returns the cell attribute value.
unsigned int m_setGetBlkY
unsigned int m_blkWidth
The current band blocks width.
void * read(int x, int y)
It reads and returns a data block.
SynchronizedBand(const SynchronizedBand &other)
void write(int x, int y, void *buffer)
It writes a data block from the specified buffer.
te::rst::GetBufferValueFPtr m_getBuffI
A pointer to a function that helps to extract the imaginary part value from a specific buffer data ty...
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...
SynchronizedBandBlocksManager & m_blocksManager
The external blocks manager.
te::rst::Raster * getRaster() const
Returns the associated raster.
unsigned int m_blkHeight
The current band blocks height.
void getIValue(unsigned int c, unsigned int r, double &value) const
Returns the imaginary attribute value in a complex band of a cell.
static SynchronizedBandBlocksManager dummyBlocksManager
A global static dummy blocks manager.
te::rst::SetBufferValueFPtr m_setBuffI
A pointer to a function that helps to insert the imaginary part value into a specific buffer data typ...
void read(int x, int y, void *buffer) const
It reads a data block to the specified buffer.
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...
unsigned int m_setGetBlkX
SynchronizedRaster * m_syncRasterPtr
The synchronized raster instance (parent raster).
SynchronizedBand(SynchronizedBandBlocksManager &blocksManager, SynchronizedRaster &raster, std::size_t idx)
Constructor.
An adapter class to allow concurrent access to raster data by multiple threads.
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.
Band implementation for TerraLib 4.x.
#define TERASTEREXPORT
You can use this macro in order to export/import classes and functions from this module.
Proxy configuration file for TerraView (see terraview_config.h).