Go to the documentation of this file.
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 ]);
171 #endif //__TERRALIB_MEMORY_INTERNAL_CACHEDRASTER_H
void free()
Free all allocated internal resources and go back to the initial state.
const te::rst::Band & operator[](std::size_t i) const
Access band in i position.
bool createMultiResolution(const unsigned int levels, const te::rst::InterpolationMethod interpMethod)
Create a sub-sampled multi-resolution pyramid.
A raster band description.
An abstract class for raster data strucutures.
unsigned int getMultiResLevelsCount() const
Returns the current number of multi-resolution pyramid levels.
A RAM cache adaptor to an external existent raster that must always be avaliable.
CachedBandBlocksManager m_blocksManager
Internal blocks manager.
const te::rst::Band * getBand(std::size_t i) const
Returns the raster i-th band.
CachedRaster(const te::rst::Raster &rhs, const unsigned char maxMemPercentUsed, const unsigned int dataPrefetchThreshold)
Constructor.
int getBandDataType(std::size_t i) const
Returns the data type in a particular band (or dimension).
void open(const std::map< std::string, std::string > &rinfo, te::common::AccessPolicy p=te::common::RAccess)
Opens a raster.
std::vector< CachedBand * > m_bands
Internal raster bands.
std::size_t getNumberOfBands() const
Returns the number of bands (dimension of cells attribute values) in the raster.
A rectified grid is the spatial support for raster data.
InterpolationMethod
Allowed interpolation methods.
RAM cached and tiled raster band blocks manager.
bool removeMultiResolution()
Remove/Destroy a sub-sampled multi-resolution pyramid, if there is one.
void updateRasterInfo()
update This instance raster info.
te::rst::Band & operator[](std::size_t i)
Access band in i position.
CachedRaster(te::rst::Grid *grid, te::common::AccessPolicy p=te::common::RAccess)
RAM cached and tiled raster band blocks manager.
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.
A base class for values that can be retrieved from the data access module.
#define TEMEMORYEXPORT
You can use this macro in order to export/import classes and functions from this module.
std::map< std::string, std::string > getInfo() const
It returns additional information about the raster.
Proxy configuration file for TerraView (see terraview_config.h).
te::dt::AbstractData * clone() const
It returns a clone of this object.
RAM cached and tiled raster band.
AccessPolicy
Supported data access policies (can be used as bitfield).
CachedRaster(const unsigned int maxNumberOfCacheBlocks, const te::rst::Raster &rhs, const unsigned int dataPrefetchThreshold)
Constructor.
std::map< std::string, std::string > m_rasterInfo
This instance info.