26 #ifndef __TERRALIB_MEMORY_INTERNAL_EXPANSIBLERASTER_H 27 #define __TERRALIB_MEMORY_INTERNAL_EXPANSIBLERASTER_H 30 #include "../raster/BandProperty.h" 31 #include "../raster/Grid.h" 32 #include "../raster/Raster.h" 39 #include <boost/shared_ptr.hpp> 76 const std::vector<te::rst::BandProperty*> bandsProperties );
88 const std::vector<te::rst::BandProperty*> bandsProperties,
89 const unsigned int maxNumberOfRAMBlocks );
95 std::map<std::string, std::string> getInfo()
const;
99 return m_bands.size();
104 assert( i < m_bands.size() );
105 return m_bands[ i ]->getProperty()->m_type;
110 assert( i < m_bands.size() );
116 assert( i < m_bands.size() );
122 assert( i < m_bands.size() );
123 return *(m_bands[ i ]);
128 assert( i < m_bands.size() );
129 return *(m_bands[ i ]);
136 bool removeMultiResolution();
138 unsigned int getMultiResLevelsCount()
const;
149 bool addTopLines(
const unsigned int number );
158 bool addBottomLines(
const unsigned int number );
167 bool addLeftColumns(
const unsigned int number );
176 bool addRightColumns(
const unsigned int number );
185 bool addTopBands(
const unsigned int number );
194 bool addBottomBands(
const unsigned int number );
226 void dummyFillAllBlocks();
233 void dummyFillBlocks(
const std::vector<ExpansibleBandBlocksManager::BlockIndex3D>& blocksCoords );
243 #endif //__TERRALIB_MEMORY_INTERNAL_EXPANSIBLERASTER_H std::vector< ExpansibleBand * > m_bands
Internal raster bands.
#define TEMEMORYEXPORT
You can use this macro in order to export/import classes and functions from this module.
const te::rst::Band & operator[](std::size_t i) const
Access band in i position.
Configuration flags for the TerraLib In-memory Data Access driver.
std::vector< boost::shared_ptr< ExpansibleRaster > > m_multiResRasters
Pointer to Multi-resolution versions of this raster instance.
std::size_t getNumberOfBands() const
Returns the number of bands (dimension of cells attribute values) in the raster.
InterpolationMethod
Allowed interpolation methods.
te::rst::Band & operator[](std::size_t i)
Access band in i position.
AccessPolicy
Supported data access policies (can be used as bitfield).
An abstract class for raster data strucutures.
A base class for values that can be retrieved from the data access module.
A raster band description.
RAM cached and tiled raster band blocks manager.
boost::shared_ptr< ExpansibleBandBlocksManager > m_blocksManagerPtr
Internal blocks manager.
te::rst::Band * getBand(std::size_t i)
Returns the raster i-th band.
A raster (stored in memory and eventually swapped to disk) where it is possible to dynamically add li...
int getBandDataType(std::size_t i) const
Returns the data type in a particular band (or dimension).
const te::rst::Band * getBand(std::size_t i) const
Returns the raster i-th band.
A rectified grid is the spatial support for raster data.