26 #ifndef __TERRALIB_MEMORY_INTERNAL_CACHEDRASTER_H
27 #define __TERRALIB_MEMORY_INTERNAL_CACHEDRASTER_H
30 #include "../raster/Raster.h"
66 const unsigned int dataPrefetchThreshold );
78 const unsigned int dataPrefetchThreshold );
84 std::map<std::string, std::string>
getInfo()
const;
88 return m_bands.size();
93 assert( m_blocksManager.getRaster() );
94 return m_blocksManager.getRaster()->getBandDataType( i );
99 assert( i < m_bands.size() );
105 assert( i < m_bands.size() );
111 assert( i < m_bands.size() );
112 return *(m_bands[ i ]);
117 assert( i < m_bands.size() );
118 return *(m_bands[ i ]);
RAM cached and tiled raster band blocks manager.
RAM cached and tiled raster band.
A base class for values that can be retrieved from the data access module.
RAM cached and tiled raster band blocks manager.
A RAM cache adaptor to an external existent raster that must always be avaliable.
CachedRaster(te::rst::Grid *grid, te::common::AccessPolicy p=te::common::RAccess)
te::dt::AbstractData * clone() const
It returns a clone of this object.
bool removeMultiResolution()
Remove/Destroy a sub-sampled multi-resolution pyramid, if there is one.
CachedRaster(const te::rst::Raster &rhs, const unsigned char maxMemPercentUsed, const unsigned int dataPrefetchThreshold)
Constructor.
CachedBandBlocksManager m_blocksManager
Internal blocks manager.
CachedRaster(const unsigned int maxNumberOfCacheBlocks, const te::rst::Raster &rhs, const unsigned int dataPrefetchThreshold)
Constructor.
const te::rst::Band & operator[](std::size_t i) const
Access band in i position.
void updateRasterInfo()
update This instance raster info.
unsigned int getMultiResLevelsCount() const
Returns the current number of multi-resolution pyramid levels.
bool createMultiResolution(const unsigned int levels, const te::rst::InterpolationMethod interpMethod)
Create a sub-sampled multi-resolution pyramid.
std::size_t getNumberOfBands() const
Returns the number of bands (dimension of cells attribute values) in the raster.
void free()
Free all allocated internal resources and go back to the initial state.
te::rst::Band * getBand(std::size_t i)
Returns the raster i-th band.
te::rst::Raster * getMultiResLevel(const unsigned int level) const
Returns the required level of a multi-resolution pyramid or NULL if that level does not exists.
std::map< std::string, std::string > getInfo() const
It returns additional information about the raster.
void open(const std::map< std::string, std::string > &rinfo, te::common::AccessPolicy p=te::common::RAccess)
Opens a raster.
te::rst::Band & operator[](std::size_t i)
Access band in i position.
const te::rst::Band * getBand(std::size_t i) const
Returns the raster i-th band.
int getBandDataType(std::size_t i) const
Returns the data type in a particular band (or dimension).
std::vector< CachedBand * > m_bands
Internal raster bands.
std::map< std::string, std::string > m_rasterInfo
This instance info.
A raster band description.
A rectified grid is the spatial support for raster data.
An abstract class for raster data strucutures.
AccessPolicy
Supported data access policies (can be used as bitfield).
InterpolationMethod
Allowed interpolation methods.
#define TEMEMORYEXPORT
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).