25#ifndef __TERRALIB_RP_INTERNAL_FEEDERSRASTER_H
26#define __TERRALIB_RP_INTERNAL_FEEDERSRASTER_H
30#include "../raster/Raster.h"
31#include "../geometry/Geometry.h"
55 virtual bool moveTo(
const unsigned int index ) = 0;
92 bool moveTo(
const unsigned int index );
120 const std::vector< std::map< std::string, std::string > >& rInfos );
136 std::vector< std::map< std::string, std::string > >
m_rInfos;
158 const std::vector< const te::rst::Raster* > rastersPtrsVec,
159 const std::vector< std::string >& rTypes,
160 const std::vector< std::map< std::string, std::string > >& rInfos );
179 std::vector< std::map< std::string, std::string > >
m_rInfos;
203 const bool recursive,
204 const std::string& rType,
205 const bool sortFileNames,
206 const std::vector< std::string >& fileExtensions );
219 const bool recursive,
220 const std::string& rType,
221 const bool sortFileNames,
222 const std::vector< std::string >& fileExtensions,
224 const bool ignoreInvalidRasterFiles );
272 const bool recursive,
273 const std::string& rType,
274 const bool sortFileNames,
275 const std::vector< std::string >& fileExtensions,
277 const bool ignoreInvalidRasterFiles );
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
A feeder from an input directory name.
~FeederConstRasterDirectory()
bool moveTo(const unsigned int index)
Jump to the given object index.
std::vector< te::gm::Polygon > m_allRastersBoundingBoxes
unsigned int getCurrentOffset() const
Return the index of the current object.
unsigned int getObjsCount() const
Return the total number of feeder objects.
void applyGeometryRestriction(const te::gm::Geometry &restrictionGeom)
Apply a new geometry intersect restriction selecting only those rasters intersecting the given geomet...
const std::string & getCurrentRasterFileName()
Returns the current raster file name.
std::unique_ptr< te::gm::Geometry > m_restrictionGeomPtr
std::vector< unsigned int > m_selectedRastersIndexes
bool moveNext()
Advances to the next sequence obeject.
std::unique_ptr< te::rst::Raster > m_currentRasterPtr
FeederConstRasterDirectory()
bool initialize(const std::string &directoryName, const bool recursive, const std::string &rType, const bool sortFileNames, const std::vector< std::string > &fileExtensions, te::gm::Geometry const *const restrictionGeomPtr, const bool ignoreInvalidRasterFiles)
Initialize this instance.
std::vector< unsignedint >::size_type m_selectedRasterIndexesOffset
void reset()
Reset the feeder to the first position (subsequent accesses will start from the first sequence obejct...
bool m_ignoreInvalidRasterFiles
If true, invalid raster files will be ignored.
FeederConstRasterDirectory(const std::string &directoryName, const bool recursive, const std::string &rType, const bool sortFileNames, const std::vector< std::string > &fileExtensions, te::gm::Geometry const *const restrictionGeomPtr, const bool ignoreInvalidRasterFiles)
Constructor from an input directory name with a restriction geometry.
std::vector< std::string > m_allRasterFileNames
te::rst::Raster const * getCurrentObj() const
Return the current sequence object.
FeederConstRasterDirectory(const std::string &directoryName, const bool recursive, const std::string &rType, const bool sortFileNames, const std::vector< std::string > &fileExtensions)
Constructor from an input directory name.
bool moveTo(const unsigned int index)
Jump to the given object index.
te::rst::Raster const * getCurrentObj() const
Return the current sequence object.
unsigned int getObjsCount() const
Return the total number of feeder objects.
std::vector< const te::rst::Raster * > m_rasters
FeederConstRasterInfoAndVector(const std::vector< const te::rst::Raster * > rastersPtrsVec, const std::vector< std::string > &rTypes, const std::vector< std::map< std::string, std::string > > &rInfos)
Constructor from a vector of input rasters infos;.
bool moveNext()
Advances to the next sequence obeject.
void reset()
Reset the feeder to the first position (subsequent accesses will start from the first sequence obejct...
~FeederConstRasterInfoAndVector()
std::vector< constte::rst::Raster * >::size_type m_CurrentRasterOffset
unsigned int getCurrentOffset() const
Return the index of the current object.
FeederConstRasterInfoAndVector()
std::vector< std::map< std::string, std::string > > m_rInfos
std::unique_ptr< te::rst::Raster > m_currentRasterHandler
std::vector< std::string > m_rTypes
te::rst::Raster const * m_currentRasterNakedPtr
std::vector< std::string >::size_type m_currentOffset
void reset()
Reset the feeder to the first position (subsequent accesses will start from the first sequence obejct...
unsigned int getObjsCount() const
Return the total number of feeder objects.
bool moveNext()
Advances to the next sequence obeject.
bool moveTo(const unsigned int index)
Jump to the given object index.
unsigned int getCurrentOffset() const
Return the index of the current object.
std::unique_ptr< te::rst::Raster > m_currentRasterPtr
std::vector< std::string > m_rTypes
std::vector< std::map< std::string, std::string > > m_rInfos
te::rst::Raster const * getCurrentObj() const
Return the current sequence object.
FeederConstRasterInfo(const std::vector< std::string > &rTypes, const std::vector< std::map< std::string, std::string > > &rInfos)
Constructor from a vector of input rasters infos;.
A feeder from a input rasters vector;.
te::rst::Raster const * getCurrentObj() const
Return the current sequence object.
void reset()
Reset the feeder to the first position (subsequent accesses will start from the first sequence obejct...
unsigned int getCurrentOffset() const
Return the index of the current object.
FeederConstRasterVector(const std::vector< const te::rst::Raster * > rasters)
Constructor from a vector of input rasters pointers;.
std::vector< constte::rst::Raster * >::size_type m_currentOffset
bool moveTo(const unsigned int index)
Jump to the given object index.
bool moveNext()
Advances to the next sequence obeject.
FeederConstRasterVector()
unsigned int getObjsCount() const
Return the total number of feeder objects.
~FeederConstRasterVector()
std::vector< const te::rst::Raster * > m_rasters
Feeder from a input rasters.
virtual te::rst::Raster const * getCurrentObj() const =0
Return the current sequence object.
virtual unsigned int getObjsCount() const =0
Return the total number of feeder objects.
virtual unsigned int getCurrentOffset() const =0
Return the index of the current object.
virtual bool moveNext()=0
Advances to the next sequence obeject.
void getRasterNames(std::vector< std::string > &rasterNames)
Returns a vector of all rasters names.
virtual ~FeederConstRaster()
virtual void reset()=0
Reset the feeder to the first position (subsequent accesses will start from the first sequence obejct...
virtual bool moveTo(const unsigned int index)=0
Jump to the given object index.
An abstract class for raster data strucutures.
#define TERPEXPORT
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).