26 #ifndef __TERRALIB_RASTER_INTERNAL_SYNCHRONIZEDRASTER_H
27 #define __TERRALIB_RASTER_INTERNAL_SYNCHRONIZEDRASTER_H
79 std::map<std::string, std::string>
getInfo()
const;
83 return m_bands.size();
90 assert( i < m_bands.size() );
96 assert( i < m_bands.size() );
102 assert( i < m_bands.size() );
103 return *(m_bands[ i ]);
108 assert( i < m_bands.size() );
109 return *(m_bands[ i ]);
An access synchronizer to be used in SynchronizedRaster raster instances.
Synchronized raster raster band blocks manager.
Syncrhonized raster band.
A base class for values that can be retrieved from the data access module.
A raster band description.
A rectified grid is the spatial support for raster data.
An access synchronizer to be used in SynchronizedRaster raster instances.
An abstract class for raster data strucutures.
Synchronized raster raster band blocks manager.
An adapter class to allow concurrent access to raster data by multiple threads.
te::rst::Band & operator[](std::size_t i)
Access band in i position.
SynchronizedRaster(RasterSynchronizer &sync, const unsigned char maxMemPercentUsed)
Constructor.
void free()
Free all allocated internal resources and go back to the initial state.
bool removeMultiResolution()
Remove/Destroy a sub-sampled multi-resolution pyramid, if there is one.
const te::rst::Band & operator[](std::size_t i) const
Access band in i position.
SynchronizedRaster(te::rst::Grid *grid, te::common::AccessPolicy p=te::common::RAccess)
te::rst::Band * getBand(std::size_t i)
Returns the raster i-th band.
unsigned int getMultiResLevelsCount() const
Returns the current number of multi-resolution pyramid levels.
void open(const std::map< std::string, std::string > &rinfo, te::common::AccessPolicy p=te::common::RAccess)
Opens a raster.
std::size_t getNumberOfBands() const
Returns the number of bands (dimension of cells attribute values) in the raster.
std::map< std::string, std::string > m_rasterInfo
This instance info.
Raster * getMultiResLevel(const unsigned int level) const
Returns the required level of a multi-resolution pyramid or NULL if that level does not exists.
SynchronizedRaster(const unsigned int maxNumberOfCacheBlocks, RasterSynchronizer &sync)
Constructor.
bool createMultiResolution(const unsigned int levels, const InterpolationMethod interpMethod)
Create a sub-sampled multi-resolution pyramid.
te::dt::AbstractData * clone() const
It returns a clone of this object.
void updateRasterInfo()
update This instance raster info.
const te::rst::Band * getBand(std::size_t i) const
Returns the raster i-th band.
std::vector< SynchronizedBand * > m_bands
Internal raster bands.
int getBandDataType(std::size_t i) const
Returns the data type in a particular band (or dimension).
SynchronizedBandBlocksManager m_blocksManager
Internal blocks manager.
std::map< std::string, std::string > getInfo() const
It returns additional information about the raster.
AccessPolicy
Supported data access policies (can be used as bitfield).
InterpolationMethod
Allowed interpolation methods.
Raster implementaton 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).