An adapter class to allow concurrent access to raster data by multiple threads. More...
#include <SynchronizedRaster.h>
Public Member Functions | |
Raster & | callOperator (std::complex< double >(*f)(std::complex< double >, std::complex< double >), const Raster &rhs) |
It calls a parameter function f to apply in all pixels from two rasters, e.g. pixel = f(lhs, rhs);. More... | |
te::dt::AbstractData * | clone () const |
It returns a clone of this object. More... | |
bool | createMultiResolution (const unsigned int levels, const InterpolationMethod interpMethod) |
Create a sub-sampled multi-resolution pyramid. More... | |
te::common::AccessPolicy | getAccessPolicy () const |
Returns the raster access policy. More... | |
const te::rst::Band * | getBand (std::size_t i) const |
Returns the raster i-th band. More... | |
te::rst::Band * | getBand (std::size_t i) |
Returns the raster i-th band. More... | |
int | getBandDataType (std::size_t i) const |
Returns the data type in a particular band (or dimension). More... | |
te::gm::Envelope * | getExtent () |
Returns the geographic extension of the raster data. More... | |
const te::gm::Envelope * | getExtent () const |
Returns the geographic extension of the raster data. More... | |
te::gm::Envelope * | getExtent (int srid, te::gm::Envelope *roi=0) const |
Returns the geographic extension of the raster data, in a given SRS (distinct from its original one). More... | |
Grid * | getGrid () |
It returns the raster grid. More... | |
const Grid * | getGrid () const |
It returns the raster grid. More... | |
std::map< std::string, std::string > | getInfo () const |
It returns additional information about the raster. More... | |
virtual void | getIValue (unsigned int c, unsigned int r, double &value, std::size_t b=0) const |
Returns the imaginary attribute value in a complex band of a cell. More... | |
Raster * | getMultiResLevel (const unsigned int level) const |
Returns the required level of a multi-resolution pyramid or NULL if that level does not exists. More... | |
unsigned int | getMultiResLevelsCount () const |
Returns the current number of multi-resolution pyramid levels. More... | |
const std::string & | getName () const |
Returns the raster name. More... | |
std::size_t | getNumberOfBands () const |
Returns the number of bands (dimension of cells attribute values) in the raster. More... | |
unsigned int | getNumberOfColumns () const |
Returns the raster number of columns. More... | |
unsigned int | getNumberOfRows () const |
Returns the raster number of rows. More... | |
Grid * | getResampledGrid (int scale) const |
Return the raster grid for a specific scale. More... | |
double | getResolutionX () const |
Returns the raster horizontal (x-axis) resolution. More... | |
double | getResolutionY () const |
Returns the raster vertical (y-axis) resolution. More... | |
int | getSRID () const |
Returns the raster spatial reference system identifier. More... | |
int | getTypeCode () const |
It returns the data type code associated to the data value. More... | |
virtual void | getValue (unsigned int c, unsigned int r, double &value, std::size_t b=0) const |
Returns the attribute value of a band of a cell. More... | |
virtual void | getValue (unsigned int c, unsigned int r, std::complex< double > &value, std::size_t b=0) const |
Returns the imaginary attribute value in a complex band of a cell. More... | |
virtual void | getValues (unsigned int c, unsigned int r, std::vector< double > &values) const |
Returns the imaginary attribute values in all complex bands of a cell. More... | |
virtual void | getValues (unsigned int c, unsigned int r, std::vector< std::complex< double > > &values) const |
Returns the imaginary attribute values in all complex bands of a cell. More... | |
virtual Raster & | operator*= (Raster &rhs) |
It returns the raster product (pixel by pixel). More... | |
virtual Raster & | operator*= (std::complex< double > &cvalue) |
It returns the product of a constant value to all pixels in the raster. More... | |
virtual Raster & | operator+= (Raster &rhs) |
It returns the raster sum (pixel by pixel). More... | |
virtual Raster & | operator+= (std::complex< double > &cvalue) |
It returns the sum of a constant value to all pixels in the raster. More... | |
virtual Raster & | operator-= (Raster &rhs) |
It returns the raster subtraction (pixel by pixel). More... | |
virtual Raster & | operator-= (std::complex< double > &cvalue) |
It returns the difference from all pixels in the raster to a constant value (pixels - constant). More... | |
virtual Raster & | operator/= (Raster &rhs) |
It returns the raster division (pixel by pixel). More... | |
virtual Raster & | operator/= (std::complex< double > &cvalue) |
It returns the division of all pixels in the raster by a constant value (pixels / constant). More... | |
const te::rst::Band & | operator[] (std::size_t i) const |
Access band in i position. More... | |
te::rst::Band & | operator[] (std::size_t i) |
Access band in i position. More... | |
virtual void | rasterize (std::vector< te::gm::Geometry * > g, std::vector< double > vp, std::size_t b=0) |
Rasterizes a given vector of geometries. More... | |
bool | removeMultiResolution () |
Remove/Destroy a sub-sampled multi-resolution pyramid, if there is one. More... | |
virtual Raster * | resample (int method, unsigned int drow, unsigned int dcolumn, unsigned int height, unsigned int width, unsigned int newheight, unsigned int newwidth, const std::map< std::string, std::string > &rinfo) const |
Resample a subset of the raster, given a box. More... | |
virtual Raster * | resample (int method, int scale, const std::map< std::string, std::string > &rinfo) const |
Resample raster. More... | |
void | setAccessPolicy (te::common::AccessPolicy p) |
Sets the raster access policy. More... | |
virtual void | setIValue (unsigned int c, unsigned int r, const double value, std::size_t b=0) |
Sets the imaginary attribute value in a complex band of a cell. More... | |
void | setName (const std::string name) |
Sets the raster name. More... | |
virtual void | setValue (unsigned int c, unsigned int r, const double value, std::size_t b=0) |
Sets the attribute value in a band of a cell. More... | |
virtual void | setValue (unsigned int c, unsigned int r, const std::complex< double > &value, std::size_t b=0) |
Sets the imaginary attribute value in a complex band of a cell. More... | |
virtual void | setValues (unsigned int c, unsigned int r, const std::vector< double > &values) |
Sets the imaginary attribute values in all complex bands of a cell. More... | |
virtual void | setValues (unsigned int c, unsigned int r, const std::vector< std::complex< double > > &values) |
Sets the imaginary attribute values in all complex bands of a cell. More... | |
SynchronizedRaster (RasterSynchronizer &sync, const unsigned char maxMemPercentUsed) | |
Constructor. More... | |
SynchronizedRaster (const unsigned int maxNumberOfCacheBlocks, RasterSynchronizer &sync) | |
Constructor. More... | |
std::string | toString (void) const |
It returns the data value in a string notation. More... | |
virtual Raster * | transform (int srid, const std::map< std::string, std::string > &rinfo, int m=1) const |
Reprojects this raster to a distinct SRS. This method reprojects this raster to a distinct SRS. The output resolution is calculated in order to maintain the same number of pixels as in this raster. More... | |
virtual Raster * | transform (int srid, double llx, double lly, double urx, double ury, const std::map< std::string, std::string > &rinfo, int m=1) const |
Reprojects a squared portion of this raster to a distinct SRS. This method reprojects a squared portion of this raster to a distinct SRS. The output resolution is calculated in order to maintain the same number of pixels as in the desired portion of this raster. More... | |
virtual Raster * | transform (int srid, double llx, double lly, double urx, double ury, double resx, double resy, const std::map< std::string, std::string > &rinfo, int m=1) const |
Reprojects a squared portion of this raster to another SRS with a desired resolution. More... | |
virtual Raster * | trim (const te::gm::Envelope *env, const std::map< std::string, std::string > &rinfo) const |
Subsetting operation for trimming (cropping) the raster. More... | |
virtual void | vectorize (std::vector< te::gm::Geometry * > &g, std::size_t b, unsigned int mp=0) |
Vectorizes a given raster band, using GDALPolygonize function. More... | |
~SynchronizedRaster () | |
Protected Member Functions | |
double | applyScale (int i, const double &v) const |
Scales a value according to a specific resampling scale. More... | |
void | free () |
Free all allocated internal resources and go back to the initial state. More... | |
Protected Attributes | |
std::vector< SynchronizedBand * > | m_bands |
Internal raster bands. More... | |
SynchronizedBandBlocksManager | m_blocksManager |
Internal blocks manager. More... | |
Grid * | m_grid |
The spatial support for raster data. More... | |
std::string | m_name |
The raster name. More... | |
te::common::AccessPolicy | m_policy |
The access policy, can be te::common::{NoAccess, RAccess, RWAccess, WAccess}. More... | |
Private Member Functions | |
void | open (const std::map< std::string, std::string > &rinfo, te::common::AccessPolicy p=te::common::RAccess) |
Opens a raster. More... | |
SynchronizedRaster () | |
SynchronizedRaster (te::rst::Grid *grid, te::common::AccessPolicy p=te::common::RAccess) | |
An adapter class to allow concurrent access to raster data by multiple threads.
Definition at line 51 of file SynchronizedRaster.h.
te::rst::SynchronizedRaster::SynchronizedRaster | ( | RasterSynchronizer & | sync, |
const unsigned char | maxMemPercentUsed | ||
) |
Constructor.
sync | The raster synchronizer instance. |
maxMemPercentUsed | The maximum free memory percentual to use valid range: [1:100]. |
Definition at line 46 of file SynchronizedRaster.cpp.
References te::rst::Raster::getGrid(), te::rst::Raster::getNumberOfBands(), te::sa::Grid, te::rst::SynchronizedBandBlocksManager::initialize(), m_bands, m_blocksManager, te::rst::Raster::m_grid, te::rst::RasterSynchronizer::m_mutex, te::rst::RasterSynchronizer::m_raster, and TE_TR.
te::rst::SynchronizedRaster::SynchronizedRaster | ( | const unsigned int | maxNumberOfCacheBlocks, |
RasterSynchronizer & | sync | ||
) |
Constructor.
sync | The raster synchronizer instance. |
maxNumberOfCacheBlocks | The maximum number of cache blocks. |
Definition at line 63 of file SynchronizedRaster.cpp.
References te::rst::Raster::getGrid(), te::rst::Raster::getNumberOfBands(), te::sa::Grid, te::rst::SynchronizedBandBlocksManager::initialize(), m_bands, m_blocksManager, te::rst::Raster::m_grid, te::rst::RasterSynchronizer::m_mutex, te::rst::RasterSynchronizer::m_raster, and TE_TR.
te::rst::SynchronizedRaster::~SynchronizedRaster | ( | ) |
Definition at line 80 of file SynchronizedRaster.cpp.
|
private |
Definition at line 37 of file SynchronizedRaster.cpp.
|
private |
Definition at line 41 of file SynchronizedRaster.cpp.
|
protectedinherited |
Scales a value according to a specific resampling scale.
i | The scale to apply. |
v | The value to be scaled. |
Definition at line 638 of file Raster.cpp.
|
inherited |
It calls a parameter function f to apply in all pixels from two rasters, e.g. pixel = f(lhs, rhs);.
(*f) | a function with the signature complex<double>(*f)(complex<double>, complex<double>), const Raster& rhs) |
rhs | The rhs raster to apply the function. |
|
virtual |
It returns a clone of this object.
Implements te::dt::AbstractData.
Definition at line 114 of file SynchronizedRaster.cpp.
|
inlinevirtual |
Create a sub-sampled multi-resolution pyramid.
levels | The number of pyramid levels to generate. |
interpMethod | The used interpolation method. |
Implements te::rst::Raster.
Definition at line 114 of file SynchronizedRaster.h.
|
protected |
Free all allocated internal resources and go back to the initial state.
Definition at line 121 of file SynchronizedRaster.cpp.
|
inherited |
Returns the raster access policy.
Definition at line 89 of file Raster.cpp.
Referenced by te::rp::Blender::blendIntoRaster1(), te::rp::ConvertIHS2RGB(), te::rp::ConvertRGB2IHS(), te::rst::Copy(), te::rp::Copy2DiskRaster(), te::qt::widgets::MultiResolutionWidget::createMultiRes(), te::rp::SequenceMosaic::createRasterDataSet(), te::rp::DecomposeBands(), te::rp::DirectPrincipalComponents(), te::rp::DirectWaveletAtrous(), te::rp::GeoMosaic::execute(), te::rp::TiePointsMosaic::execute(), te::rp::Contrast::execute(), te::rp::TiePointsLocator::initialize(), te::rp::Blender::initialize(), te::rp::PCAFusion::initialize(), te::rp::Register::initialize(), te::rp::IHSFusion::initialize(), te::rp::Filter::initialize(), te::rp::WisperFusion::initialize(), te::rp::Skeleton::initialize(), te::rst::Interpolator::initialize(), te::rp::MixtureModel::initialize(), te::rp::Classifier::initialize(), te::rp::Segmenter::initialize(), te::rp::Contrast::initialize(), te::rp::InverseWaveletAtrous(), te::rst::RasterSynchronizer::RasterSynchronizer(), and te::rp::RemapValues().
|
inlinevirtual |
Returns the raster i-th band.
i | The band index. |
Implements te::rst::Raster.
Definition at line 88 of file SynchronizedRaster.h.
Referenced by te::rp::Blender::blendIntoRaster1Thread().
|
inlinevirtual |
Returns the raster i-th band.
i | The band index. |
Implements te::rst::Raster.
Definition at line 94 of file SynchronizedRaster.h.
|
virtual |
Returns the data type in a particular band (or dimension).
i | The desired band. |
Implements te::rst::Raster.
Definition at line 97 of file SynchronizedRaster.cpp.
|
inherited |
Returns the geographic extension of the raster data.
Definition at line 104 of file Raster.cpp.
Referenced by te::qt::widgets::FusionWizard::adjustRasters(), te::wms::WMSLayerRenderer::drawRaster(), te::qt::widgets::RasterNavigatorWidget::drawRaster(), te::map::DrawRaster(), te::rp::Classifier::initialize(), te::rst::LineIterator< T >::LineIterator(), te::qt::widgets::MixtureModelDialog::MixtureModelDialog(), te::rst::PointSetIterator< T >::PointSetIterator(), te::rst::Reproject(), te::map::RasterLayer::setRasterInfo(), te::qt::widgets::TiePointsLocatorDialog::TiePointsLocatorDialog(), and te::tools::rastermanager::RasterManager::trim().
|
inherited |
Returns the geographic extension of the raster data.
Definition at line 109 of file Raster.cpp.
|
inherited |
Returns the geographic extension of the raster data, in a given SRS (distinct from its original one).
srid | The target SRS id. |
roi | Pointer to a region of interest. If NULL the original extenstion will be considered. |
Definition at line 114 of file Raster.cpp.
References te::gm::Envelope::getLowerLeftX(), te::gm::Envelope::getLowerLeftY(), te::gm::Envelope::getUpperRightX(), te::gm::Envelope::getUpperRightY(), te::gm::Coord2D::x, and te::gm::Coord2D::y.
|
inherited |
It returns the raster grid.
Definition at line 94 of file Raster.cpp.
Referenced by te::graph::AddRasterAttribute::AddRasterAttribute(), te::qt::widgets::ColorTransformWizard::buildOutputRaster(), te::rp::ComposeBands(), te::rst::Copy(), te::rp::Copy2DiskRaster(), te::tools::rastermanager::RasterManager::copyRaster(), te::mem::Raster::create(), te::rst::CreateCopy(), te::rp::Segmenter::createCutOffLinesTiff(), te::rp::SequenceMosaic::createDiskRasterCopy(), te::rp::SequenceMosaic::createRasterDataSet(), te::rst::CropRaster(), te::rp::DecomposeBands(), te::wms::WMSLayerRenderer::drawRaster(), te::map::DrawRaster(), te::rp::ArithmeticOperations::execBinaryOperatorRasterXRaster(), te::rp::ArithmeticOperations::execBinaryOperatorRasterXReal(), te::rp::Contrast::execDecorrelationEnhancement(), te::rp::PCAFusion::execute(), te::rp::GeoMosaic::execute(), te::rp::Register::execute(), te::rp::Filter::execute(), te::rp::TiePointsMosaic::execute(), te::rp::WisperFusion::execute(), te::rp::Skeleton::execute(), te::rp::SequenceMosaic::execute(), te::rp::Segmenter::execute(), te::rp::Contrast::execute(), te::map::GetExtentRaster(), te::rst::GetRandomPointsInRaster(), te::qt::widgets::Info::getRasterInfo(), te::map::RasterLayer::getSchema(), te::sa::GridAdaptRadiusKernel(), te::sa::GridStatRadiusKernel(), te::rp::Blender::initialize(), InterpolateIn(), te::rst::LineIterator< T >::LineIterator(), te::rp::PCAFusion::loadRessampledRaster(), te::qt::widgets::TiePointsLocatorDialog::on_autoAcquireTiePointsPushButton_clicked(), te::qt::widgets::TiePointsLocatorDialog::on_mapDisplay1_coordTracked(), te::qt::widgets::TiePointsLocatorDialog::on_mapDisplay1_extentChanged(), te::qt::widgets::TiePointsLocatorDialog::on_mapDisplay2_coordTracked(), te::qt::widgets::TiePointsLocatorDialog::on_mapDisplay2_extentChanged(), te::qt::widgets::TiePointLocatorWidget::onAutoAcquireTiePointsToolButtonClicked(), te::rst::PointSetIterator< T >::PointSetIterator(), te::rst::PolygonIterator< T >::PolygonIterator(), te::rst::ProxyRaster::ProxyRaster(), te::rp::RasterResample(), te::sa::KernelOperation::runRasterKernel(), te::serialize::xml::Save(), te::rp::IHSFusion::saveIHSData(), SynchronizedRaster(), and te::rst::Vectorizer::Vectorizer().
|
inherited |
It returns the raster grid.
Definition at line 99 of file Raster.cpp.
|
virtual |
It returns additional information about the raster.
The return of thi smethod is driver dependent.
Implements te::rst::Raster.
Definition at line 85 of file SynchronizedRaster.cpp.
|
virtualinherited |
Returns the imaginary attribute value in a complex band of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
value | The attribute value to be assigned. |
b | A particular band of the cell attribute. Default value 0. |
Exception | Subclasses may throw an exception if the data value can not be read. |
Definition at line 238 of file Raster.cpp.
|
inlinevirtual |
Returns the required level of a multi-resolution pyramid or NULL if that level does not exists.
level | Level of a multi-resolution pyramid. |
Implements te::rst::Raster.
Definition at line 126 of file SynchronizedRaster.h.
|
inlinevirtual |
Returns the current number of multi-resolution pyramid levels.
Implements te::rst::Raster.
Definition at line 121 of file SynchronizedRaster.h.
|
inherited |
Returns the raster name.
Definition at line 79 of file Raster.cpp.
Referenced by te::map::DrawRaster(), and te::serialize::xml::Save().
|
inlinevirtual |
Returns the number of bands (dimension of cells attribute values) in the raster.
Implements te::rst::Raster.
Definition at line 81 of file SynchronizedRaster.h.
|
inherited |
Returns the raster number of columns.
Definition at line 213 of file Raster.cpp.
Referenced by te::rst::AbstractBandIterator< T >::AbstractBandIterator(), te::qt::widgets::SegmenterWizardPage::apply(), te::qt::widgets::FilterWizardPage::apply(), te::qt::widgets::ContrastWizardPage::apply(), te::mem::Band::Band(), te::rst::BandIteratorWindow< T >::BandIteratorWindow(), te::rst::BandIteratorWithMask< T >::BandIteratorWithMask(), te::rp::Blender::blendIntoRaster1(), te::rp::Segmenter::calcBestBlockSize(), te::rst::Band::callOperator(), te::rp::ConvertIHS2RGB(), te::rp::ConvertRGB2IHS(), te::rst::Copy(), te::rp::Copy2DiskRaster(), te::tools::rastermanager::RasterManager::copyRaster(), te::rp::SequenceMosaic::createDiskRasterCopy(), te::rp::SequenceMosaic::createRasterDataSet(), te::rp::DecomposeBands(), te::rp::Filter::DilationFilter(), te::rp::DirectPrincipalComponents(), te::rp::DirectWaveletAtrous(), te::qt::widgets::Canvas::drawImage(), te::wms::WMSLayerRenderer::drawRaster(), te::map::DrawRaster(), te::rp::Filter::ErosionFilter(), te::rp::ArithmeticOperations::execBinaryOperatorRasterXRaster(), te::rp::ArithmeticOperations::execBinaryOperatorRasterXReal(), te::rp::Contrast::execHistogramEqualizationContrast(), te::rp::Contrast::execSetMeanAndStdContrast(), te::rp::GeoMosaic::execute(), te::rp::Register::execute(), te::rp::TiePointsMosaic::execute(), te::rp::WisperFusion::execute(), te::rp::SequenceMosaic::execute(), te::rp::Segmenter::execute(), te::rp::Contrast::execute(), te::rst::FillBand(), te::rp::Segmenter::genImageHCutOffProfile(), te::rp::Segmenter::genImageVCutOffProfile(), te::map::GetExtentRaster(), te::rp::RasterAttributes::getGLCM(), te::attributefill::RasterToVector::getPixelDistinct(), te::rp::ClassifierMAPStrategy::getPrioriProbabilities(), te::rst::GetRandomPointsInRaster(), te::qt::widgets::Info::getRasterInfo(), te::rp::IHSFusion::getRGBRange(), te::sa::GridAdaptRadiusKernel(), te::sa::GridKernelNormalize(), te::sa::GridRatioKernel(), te::sa::GridStatRadiusKernel(), te::rp::TiePointsLocator::initialize(), te::rp::Blender::initialize(), te::rp::Skeleton::initialize(), te::rp::InverseWaveletAtrous(), te::rp::Skeleton::loadData(), te::rp::IHSFusion::loadIHSData(), te::rp::PCAFusion::loadRessampledRaster(), te::rp::Filter::MeanFilter(), te::rp::Filter::MedianFilter(), te::rp::Filter::ModeFilter(), te::qt::widgets::TiePointsLocatorDialog::on_autoAcquireTiePointsPushButton_clicked(), te::qt::widgets::TiePointLocatorWidget::onAutoAcquireTiePointsToolButtonClicked(), te::rp::RasterResample(), te::idl::rp::RegionGrowingSegmenter(), te::rp::Contrast::remapBandLevels(), te::rp::RemapValues(), te::rst::Reproject(), te::rst::Raster::resample(), te::rp::Filter::RobertsFilter(), te::rp::IHSFusion::saveIHSData(), te::rp::Filter::SobelFilter(), te::rp::PCAFusion::swapBandByHighResRaster(), te::rp::IHSFusion::swapIntensity(), te::mem::TiledBand::TiledBand(), te::rp::Filter::UserDefinedFilter(), and te::rst::Vectorizer::Vectorizer().
|
inherited |
Returns the raster number of rows.
Definition at line 208 of file Raster.cpp.
Referenced by te::rst::AbstractBandIterator< T >::AbstractBandIterator(), te::qt::widgets::SegmenterWizardPage::apply(), te::qt::widgets::FilterWizardPage::apply(), te::qt::widgets::ContrastWizardPage::apply(), te::mem::Band::Band(), te::rst::BandIteratorWindow< T >::BandIteratorWindow(), te::rst::BandIteratorWithMask< T >::BandIteratorWithMask(), te::rp::Blender::blendIntoRaster1(), te::rp::Segmenter::calcBestBlockSize(), te::rst::Band::callOperator(), te::rp::ConvertIHS2RGB(), te::rp::ConvertRGB2IHS(), te::rst::Copy(), te::rp::Copy2DiskRaster(), te::tools::rastermanager::RasterManager::copyRaster(), te::rp::SequenceMosaic::createDiskRasterCopy(), te::rp::SequenceMosaic::createRasterDataSet(), te::rp::DecomposeBands(), te::rp::Filter::DilationFilter(), te::rp::DirectPrincipalComponents(), te::rp::DirectWaveletAtrous(), te::qt::widgets::Canvas::drawImage(), te::wms::WMSLayerRenderer::drawRaster(), te::map::DrawRaster(), te::rp::Filter::ErosionFilter(), te::rp::ArithmeticOperations::execBinaryOperatorRasterXRaster(), te::rp::ArithmeticOperations::execBinaryOperatorRasterXReal(), te::rp::Contrast::execHistogramEqualizationContrast(), te::rp::Contrast::execSetMeanAndStdContrast(), te::rp::GeoMosaic::execute(), te::rp::Register::execute(), te::rp::TiePointsMosaic::execute(), te::rp::WisperFusion::execute(), te::rp::SequenceMosaic::execute(), te::rp::Segmenter::execute(), te::rp::Contrast::execute(), te::rst::FillBand(), te::rp::Segmenter::genImageHCutOffProfile(), te::rp::Segmenter::genImageVCutOffProfile(), te::map::GetExtentRaster(), te::rp::RasterAttributes::getGLCM(), te::attributefill::RasterToVector::getPixelDistinct(), te::rp::ClassifierMAPStrategy::getPrioriProbabilities(), te::rst::GetRandomPointsInRaster(), te::qt::widgets::Info::getRasterInfo(), te::rp::IHSFusion::getRGBRange(), te::sa::GridAdaptRadiusKernel(), te::sa::GridKernelNormalize(), te::sa::GridRatioKernel(), te::sa::GridStatRadiusKernel(), te::rp::TiePointsLocator::initialize(), te::rp::Blender::initialize(), te::rp::Skeleton::initialize(), te::rp::InverseWaveletAtrous(), te::rp::Skeleton::loadData(), te::rp::IHSFusion::loadIHSData(), te::rp::PCAFusion::loadRessampledRaster(), te::rp::Filter::MeanFilter(), te::rp::Filter::MedianFilter(), te::rp::Filter::ModeFilter(), te::qt::widgets::TiePointsLocatorDialog::on_autoAcquireTiePointsPushButton_clicked(), te::qt::widgets::TiePointLocatorWidget::onAutoAcquireTiePointsToolButtonClicked(), te::rp::RasterResample(), te::idl::rp::RegionGrowingSegmenter(), te::rp::Contrast::remapBandLevels(), te::rp::RemapValues(), te::rst::Reproject(), te::rst::Raster::resample(), te::rp::Filter::RobertsFilter(), te::rp::IHSFusion::saveIHSData(), te::rp::Filter::SobelFilter(), te::rp::PCAFusion::swapBandByHighResRaster(), te::rp::IHSFusion::swapIntensity(), te::mem::TiledBand::TiledBand(), te::rp::Filter::UserDefinedFilter(), and te::rst::Vectorizer::Vectorizer().
|
inherited |
Return the raster grid for a specific scale.
scale | The desired sacale of interpolation (use - to shrink or + to enlarge). |
Definition at line 626 of file Raster.cpp.
References te::sa::Grid.
|
inherited |
Returns the raster horizontal (x-axis) resolution.
Definition at line 218 of file Raster.cpp.
Referenced by te::rst::CropRaster(), te::map::DrawRaster(), te::rp::SequenceMosaic::execute(), te::sa::GridKernelNormalize(), te::sa::GridRatioKernel(), InterpolateIn(), te::rst::LineIterator< T >::LineIterator(), and te::rst::Reproject().
|
inherited |
Returns the raster vertical (y-axis) resolution.
Definition at line 223 of file Raster.cpp.
Referenced by te::rst::CropRaster(), te::map::DrawRaster(), te::rp::SequenceMosaic::execute(), te::sa::GridKernelNormalize(), te::sa::GridRatioKernel(), InterpolateIn(), te::rst::LineIterator< T >::LineIterator(), and te::rst::Reproject().
|
inherited |
Returns the raster spatial reference system identifier.
Definition at line 203 of file Raster.cpp.
Referenced by te::qt::widgets::FusionWizard::adjustRasters(), te::graph::LDDGraphBuilder::build(), te::rp::ComposeBands(), te::rst::CropRaster(), te::qt::widgets::RasterNavigatorWidget::drawRaster(), te::rp::ArithmeticOperations::execBinaryOperatorRasterXRaster(), te::rp::GeoMosaic::execute(), te::rp::SequenceMosaic::execute(), te::rst::GetRandomPointsInRaster(), te::rst::LineIterator< T >::LineIterator(), te::rp::PCAFusion::loadRessampledRaster(), te::qt::widgets::MixtureModelDialog::MixtureModelDialog(), te::rst::PointSetIterator< T >::PointSetIterator(), te::rst::PolygonIterator< T >::PolygonIterator(), te::rp::RasterResample(), te::rst::Reproject(), te::map::RasterLayer::setRasterInfo(), and te::qt::widgets::TiePointsLocatorDialog::TiePointsLocatorDialog().
|
inlinevirtualinherited |
It returns the data type code associated to the data value.
Implements te::dt::AbstractData.
Definition at line 362 of file Raster.h.
References te::dt::RASTER_TYPE.
|
virtualinherited |
Returns the attribute value of a band of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
value | To return the attribute value. |
b | A particular band of the cell attribute. |
Exception | Subclasses may throw an exception if the data value can not be read. |
Definition at line 228 of file Raster.cpp.
Referenced by te::graph::AddRasterAttribute::AddRasterAttribute(), te::tools::rastermanager::RasterManager::copyRaster(), te::qt::widgets::Canvas::drawImage(), te::rp::ArithmeticOperations::execute(), te::rp::WisperFusion::execute(), te::rp::Segmenter::genImageHCutOffProfile(), te::rp::Segmenter::genImageVCutOffProfile(), te::rp::RasterAttributes::getGLCM(), te::attributefill::RasterToVector::getPixelDistinct(), te::rp::ClassifierMAPStrategy::getPrioriProbabilities(), te::qt::widgets::Info::getRasterInfo(), te::rp::RasterAttributes::getValuesFromRaster(), te::sa::GridAdaptRadiusKernel(), te::sa::GridKernelNormalize(), te::sa::GridRatioKernel(), te::rp::SegmenterRegionGrowingStrategy::initializeSegments(), te::rp::InverseWaveletAtrous(), and te::rp::RemapValues().
|
virtualinherited |
Returns the imaginary attribute value in a complex band of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
value | The complex attribute value to be assigned (real, imaginary). |
b | A particular band of the cell attribute. Default value 0. |
Exception | Subclasses may throw an exception if the data value can not be read. |
Definition at line 248 of file Raster.cpp.
|
virtualinherited |
Returns the imaginary attribute values in all complex bands of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
values | A vector of attribute values to be assigned (not complex values). |
Exception | Subclasses may throw an exception if the data value can not be read. |
Definition at line 258 of file Raster.cpp.
Referenced by te::rst::Copy(), te::tools::rastermanager::RasterManager::copyRaster(), te::map::GetExtentRaster(), te::qt::widgets::ClassifierWizardPage::getMAPSamples(), and te::qt::widgets::ClassifierWizardPage::getSAMSamples().
|
virtualinherited |
Returns the imaginary attribute values in all complex bands of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
values | A vector of complex attribute values to be assigned (real, imaginary). |
Exception | Subclasses may throw an exception if the data value can not be read. |
Definition at line 272 of file Raster.cpp.
|
privatevirtual |
Opens a raster.
rinfo | The information needed by each driver to open the raster. |
p | Access Policy. |
Implements te::rst::Raster.
Definition at line 109 of file SynchronizedRaster.cpp.
|
virtualinherited |
It returns the raster product (pixel by pixel).
rhs | The raster to be multiplied, right-hand side. |
Definition at line 370 of file Raster.cpp.
References te::rst::Raster::getNumberOfBands().
|
virtualinherited |
It returns the product of a constant value to all pixels in the raster.
cvalue | The constant value to be multiplied. |
Definition at line 380 of file Raster.cpp.
|
virtualinherited |
It returns the raster sum (pixel by pixel).
rhs | The raster to be added, right-hand side. |
Definition at line 334 of file Raster.cpp.
References te::rst::Raster::getNumberOfBands().
|
virtualinherited |
It returns the sum of a constant value to all pixels in the raster.
cvalue | The constant value to be added. |
Definition at line 344 of file Raster.cpp.
|
virtualinherited |
It returns the raster subtraction (pixel by pixel).
rhs | The raster to be subtracted, right-hand side. |
Definition at line 352 of file Raster.cpp.
References te::rst::Raster::getNumberOfBands().
|
virtualinherited |
It returns the difference from all pixels in the raster to a constant value (pixels - constant).
cvalue | The constant value to be subtracted. |
Definition at line 362 of file Raster.cpp.
|
virtualinherited |
It returns the raster division (pixel by pixel).
rhs | The raster to be divided, right-hand side. |
Definition at line 388 of file Raster.cpp.
References te::rst::Raster::getNumberOfBands().
|
virtualinherited |
It returns the division of all pixels in the raster by a constant value (pixels / constant).
cvalue | The constant value to be divided. |
Definition at line 398 of file Raster.cpp.
|
inlinevirtual |
Access band in i position.
i | The band index. |
Implements te::rst::Raster.
Definition at line 100 of file SynchronizedRaster.h.
|
inlinevirtual |
Access band in i position.
i | The band index. |
Implements te::rst::Raster.
Definition at line 106 of file SynchronizedRaster.h.
|
virtualinherited |
Rasterizes a given vector of geometries.
g | A vector of geometries to be rasterized. |
vp | A vector of pixel values for each geometry. Can have the same size of the vector of geometries, or be null. |
b | The band index to rasterize. |
Definition at line 688 of file Raster.cpp.
References te::rst::PolygonIterator< T >::begin(), te::rst::PolygonIterator< T >::end(), te::rst::PolygonIterator< T >::getColumn(), te::rst::Band::getRaster(), and te::rst::PolygonIterator< T >::getRow().
|
inlinevirtual |
Remove/Destroy a sub-sampled multi-resolution pyramid, if there is one.
Implements te::rst::Raster.
Definition at line 119 of file SynchronizedRaster.h.
|
virtualinherited |
Resample a subset of the raster, given a box.
method | The method of interpolation. |
drow | The starting row to make a subset of the image. |
dcolumn | The starting column to make a subset of the image. |
height | The height of the subset. |
width | The width of the subset. |
newheight | The resampled height of the new raster. |
newwidth | The resampled width of the new raster. |
rinfo | The parameters needed to build the output raster (see RasterFactory documentation). |
Definition at line 565 of file Raster.cpp.
References te::rst::Interpolator::getValues(), te::sa::Grid, te::rst::RasterFactory::make(), te::rst::Raster::setValues(), te::gm::Coord2D::x, and te::gm::Coord2D::y.
Referenced by te::tools::rastermanager::RasterManager::changeResolution(), te::qt::widgets::ClippingWizard::executeDimensionClipping(), and te::gdal::Raster::resample().
|
virtualinherited |
Resample raster.
method | The method of interpolation. |
scale | The scale of interpolation (use - to shrink or + to enlarge). |
rinfo | The parameters needed to build the output raster (see RasterFactory documentation). |
Reimplemented in te::gdal::Raster.
Definition at line 523 of file Raster.cpp.
References te::rst::Raster::getNumberOfColumns(), te::rst::Raster::getNumberOfRows(), te::rst::Interpolator::getValues(), te::sa::Grid, te::rst::RasterFactory::make(), and te::rst::Raster::setValues().
|
inherited |
Sets the raster access policy.
p | The new raster access policy. |
Definition at line 84 of file Raster.cpp.
|
virtualinherited |
Sets the imaginary attribute value in a complex band of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
value | The attribute value to be assigned. |
b | A particular band of the cell attribute. Default value 0. |
Exception | Subclasses may throw an exception if the data value can not be write. |
Definition at line 243 of file Raster.cpp.
|
inherited |
|
virtualinherited |
Sets the attribute value in a band of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
value | The attribute value to be assigned. |
b | A particular band of the cell attribute. |
Exception | Subclasses may throw an exception if the data value can not be write. |
Definition at line 233 of file Raster.cpp.
Referenced by te::rp::Blender::blendIntoRaster1Thread(), te::rp::ConvertRGB2IHS(), te::tools::rastermanager::RasterManager::copyRaster(), te::rp::Filter::DilationFilter(), te::rp::Filter::ErosionFilter(), te::rp::ArithmeticOperations::execute(), te::rp::WisperFusion::execute(), te::rp::SegmenterRegionGrowingStrategy::exportSegs2Tif(), te::sa::GridAdaptRadiusKernel(), te::sa::GridKernelNormalize(), te::sa::GridRatioKernel(), te::sa::GridStatRadiusKernel(), InterpolateIn(), te::rp::InverseWaveletAtrous(), te::rp::PCAFusion::loadRessampledRaster(), te::rp::Filter::MeanFilter(), te::rp::Filter::MedianFilter(), te::rp::Filter::ModeFilter(), te::rp::NormalizeRaster(), te::rp::RemapValues(), and te::rp::Filter::UserDefinedFilter().
|
virtualinherited |
Sets the imaginary attribute value in a complex band of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
value | The complex attribute value to be assigned (real, imaginary). |
b | A particular band of the cell attribute. Default value 0. |
Exception | Subclasses may throw an exception if the data value can not be write. |
Definition at line 253 of file Raster.cpp.
|
virtualinherited |
Sets the imaginary attribute values in all complex bands of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
values | A vector of attribute values to be assigned (not complex values). |
Exception | Subclasses may throw an exception if the data value can not be write. |
Definition at line 286 of file Raster.cpp.
Referenced by te::rst::Copy(), te::tools::rastermanager::RasterManager::copyRaster(), te::map::GetExtentRaster(), te::rst::Raster::resample(), and te::rst::Raster::trim().
|
virtualinherited |
Sets the imaginary attribute values in all complex bands of a cell.
c | The column location of the cell. |
r | The row location of the cell. |
values | A vector of complex attribute values to be assigned (real, imaginary). |
Exception | Subclasses may throw an exception if the data value can not be write. |
Definition at line 294 of file Raster.cpp.
|
virtualinherited |
It returns the data value in a string notation.
Implements te::dt::AbstractData.
Definition at line 302 of file Raster.cpp.
Referenced by te::tools::rastermanager::RasterManager::getRasterInfo().
|
virtualinherited |
Reprojects this raster to a distinct SRS. This method reprojects this raster to a distinct SRS. The output resolution is calculated in order to maintain the same number of pixels as in this raster.
srid | The target SRS identifier. |
rinfo | The parameters needed to build the output raster (see RasterFactory documentation). |
m | The method of interpolation to apply (default 1 = nearest neighbor). |
Definition at line 646 of file Raster.cpp.
References te::gm::Envelope::getHeight(), te::gm::Envelope::getWidth(), te::rst::Reproject(), and te::gm::Envelope::transform().
Referenced by te::qt::widgets::FusionWizard::adjustRasters().
|
virtualinherited |
Reprojects a squared portion of this raster to a distinct SRS. This method reprojects a squared portion of this raster to a distinct SRS. The output resolution is calculated in order to maintain the same number of pixels as in the desired portion of this raster.
srid | The target SRS identifier. |
llx | Lower-left X-coordinate of the portion to be reprojected (in the original SRS). |
lly | Lower-left Y-coordinate of the portion to be reprojected (in the original SRS). |
urx | Upper-Right X-coordinate of the portion to be reprojected (in the original SRS). |
url | Upper-Right Y-coordinate of the portion to be reprojected (in the original SRS). |
rinfo | The parameters needed to build the output raster (see RasterFactory documentation). |
m | The method of interpolation to apply (default 1 = nearest neighbor). |
Definition at line 669 of file Raster.cpp.
|
virtualinherited |
Reprojects a squared portion of this raster to another SRS with a desired resolution.
This method reprojects a squared portion of this raster to another SRS. The number of pixels in the output will be calculated according to the portion being reprojected and the asked resolution.
srid | The SRS id of the target SRS. |
llx | Lower-left X-coordinate of the portion to be reprojected (in the original SRS). |
lly | Lower-left Y-coordinate of the portion to be reprojected (in the original SRS). |
urx | Upper-Right X-coordinate of the portion to be reprojected (in the original SRS). |
url | Upper-Right Y-coordinate of the portion to be reprojected (in the original SRS). |
resx | The output x resolution (in units of the target SRS). |
resx | The output y resolution (in units of the target SRS). |
rinfo | The parameters needed to build the output raster (see RasterFactory documentation). |
m | The method of interpolation to apply (default 1 = nearest neighbor). |
Reimplemented in te::gdal::Raster.
Definition at line 674 of file Raster.cpp.
References te::rst::Reproject().
|
virtualinherited |
Subsetting operation for trimming (cropping) the raster.
env | The envelope (inside original extent) to crop the raster. |
rinfo | The parameters needed to build the output raster (see RasterFactory documentation). |
Definition at line 422 of file Raster.cpp.
References te::gm::Envelope::getLowerLeftX(), te::gm::Envelope::getLowerLeftY(), te::gm::Envelope::getUpperRightX(), te::gm::Envelope::getUpperRightY(), te::gm::Coord2D::getX(), te::gm::Coord2D::getY(), te::sa::Grid, te::rst::RasterFactory::make(), and te::rst::Raster::setValues().
Referenced by te::qt::widgets::FusionWizard::adjustRasters(), te::qt::widgets::ClippingWizard::executeExtentClipping(), and te::tools::rastermanager::RasterManager::trim().
|
virtualinherited |
Vectorizes a given raster band, using GDALPolygonize function.
g | A reference to a vector of geometries. Will be filled with geometries found in band. |
b | The band index to vectorize. |
Definition at line 679 of file Raster.cpp.
References te::rst::Vectorizer::run().
|
protected |
Internal raster bands.
Definition at line 148 of file SynchronizedRaster.h.
Referenced by SynchronizedRaster().
|
protected |
Internal blocks manager.
Definition at line 146 of file SynchronizedRaster.h.
Referenced by SynchronizedRaster().
|
protectedinherited |
The spatial support for raster data.
Definition at line 681 of file Raster.h.
Referenced by te::idl::IdlRaster::IdlRaster(), te::rst::Raster::operator=(), te::rst::ProxyRaster::ProxyRaster(), terralib4::Raster::Raster(), te::gdal::Raster::Raster(), te::rst::Raster::Raster(), and SynchronizedRaster().
|
protectedinherited |
The raster name.
Definition at line 680 of file Raster.h.
Referenced by te::rst::Raster::operator=().
|
protectedinherited |
The access policy, can be te::common::{NoAccess, RAccess, RWAccess, WAccess}.
Definition at line 682 of file Raster.h.
Referenced by te::idl::IdlRaster::IdlRaster(), and te::gdal::Raster::Raster().