26 #ifndef __TERRALIB_ST_INTERNAL_COVERAGESERIES_H
27 #define __TERRALIB_ST_INTERNAL_COVERAGESERIES_H
30 #include "../../../datatype/DateTimePeriod.h"
31 #include "../../../geometry/Geometry.h"
34 #include "../../Config.h"
35 #include "../../Enums.h"
36 #include "../timeseries/TimeSeries.h"
46 #include <boost/ptr_container/ptr_vector.hpp>
49 namespace te {
namespace dt {
class DateTime; } }
51 namespace te {
namespace gm {
class Point; } }
59 class AbstractCoverageSeriesInterp;
320 unsigned int p=0)
const;
This file contains an iterator that is able to traverse all observations of a coverage series.
This file contains an abstract class to represent a coverage.
An Envelope defines a 2D rectangular region.
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
A point with x and y coordinate values.
Polygon is a subclass of CurvePolygon whose rings are defined by linear rings.
An abstract class for interpolation function or interpolator that estimate coverages at non-observed ...
A class to traverse the observations of a CoverageSeries.
A class to represent a coverage series.
void getTimeSeries(const te::gm::Polygon &l, unsigned int p, const te::dt::DateTime &t, te::dt::TemporalRelation tr, boost::ptr_vector< TimeSeries > &r) const
It returns the time series of the p-th property inside the given polygon and considering a given temp...
std::size_t size() const
It returns the size of the coverage series observations.
std::unique_ptr< te::st::TimeSeries > getTimeSeries(const te::gm::Point &l, unsigned int p=0) const
It returns a time series of the p-th property associated to a given location.
void getTimeSeries(const te::gm::Point &l, const te::dt::DateTime &t, te::dt::TemporalRelation tr, boost::ptr_vector< TimeSeries > &r) const
It returns the time series associated to a given location and considering a given temporal restrictio...
std::unique_ptr< te::gm::Geometry > m_sextent
CoverageSeriesIterator begin() const
It returns an iterator that points to the first observation of the point coverage.
CoverageSeries(const CoverageSeriesObservationSet &obs, AbstractCoverageSeriesInterp *interp, te::gm::Geometry *se, CoverageType t)
A constructor.
std::unique_ptr< te::st::Coverage > getCoverage(te::dt::DateTime *t) const
It returns the coverage associated to a given date and time.
CoverageSeries()
A constructor.
const CoverageSeriesObservationSet & getObservations() const
It returns the coverage series observations.
AbstractCoverageSeriesInterp * m_interpolator
The coverage series observations.
void getTimeSeries(const te::gm::Envelope &e, unsigned int p, boost::ptr_vector< TimeSeries > &r) const
It returns the time series of the p-th property inside the given envelope.
std::unique_ptr< te::st::TimeSeries > getTimeSeries(const te::gm::Point &l, const te::dt::DateTime &t, te::dt::TemporalRelation tr=te::dt::DURING, unsigned int p=0) const
It returns a time series of the p-th property associated to a given location and considering a given ...
std::unique_ptr< CoverageSeries > getPatch(const te::dt::DateTime &dt, te::dt::TemporalRelation r=te::dt::DURING) const
It returns a subset or patch of the coverage series considering a given temporal restriction.
void getTimeSeries(const te::gm::Envelope &e, unsigned int p, const te::dt::DateTime &t, te::dt::TemporalRelation tr, boost::ptr_vector< TimeSeries > &r) const
It returns the time series of the p-th property inside the given envelope and considering a given tem...
virtual ~CoverageSeries()
Virtual destructor.
std::unique_ptr< CoverageSeries > getPatch(const te::gm::Envelope &e, te::gm::SpatialRelation sr, const te::dt::DateTime &dt, te::dt::TemporalRelation r=te::dt::DURING) const
It returns a subset or patch of the coverage series considering a given spatial and temporal restrict...
std::unique_ptr< CoverageSeries > getPatch(const te::gm::Geometry &e, te::gm::SpatialRelation sr, const te::dt::DateTime &dt, te::dt::TemporalRelation tr=te::dt::DURING) const
It returns a subset or patch of the coverage series considering a given spatial and temporal restrict...
void getTimeSeries(const te::gm::Polygon &l, boost::ptr_vector< TimeSeries > &r) const
It returns the time series inside the given polygon.
std::unique_ptr< te::dt::DateTimePeriod > getTemporalExtent() const
It returns the temporal extent of the coverage series.
std::unique_ptr< CoverageSeries > getPatch(const te::gm::Geometry &e, te::gm::SpatialRelation sr=te::gm::INTERSECTS) const
It returns a subset or patch of the coverage series considering a given spatial restriction.
CoverageSeriesIterator end() const
It returns an iterator that points to the end of the time series.
CoverageType getType() const
It returns the type of the internal coverages.
void getTimeSeries(const te::gm::Polygon &l, unsigned int p, boost::ptr_vector< TimeSeries > &r) const
It returns the time series of the p-th property inside the given polygon.
void add(te::dt::DateTime *time, te::st::Coverage *cv)
It adds an observation (time and coverage) into the coverage series.
std::unique_ptr< CoverageSeries > getPatch(const te::gm::Envelope &e, te::gm::SpatialRelation sr=te::gm::INTERSECTS) const
It returns a subset or patch of the coverage series considering a given spatial restriction.
void getTimeSeries(const te::gm::Envelope &e, boost::ptr_vector< TimeSeries > &r) const
It returns the time series inside the given envelope.
te::gm::Geometry * getSpatialExtent() const
It returns the spatial extent of the coverage series.
void getTimeSeries(const te::gm::Point &l, boost::ptr_vector< TimeSeries > &r) const
It returns the time series associated to a given location.
void getTimeSeries(const te::gm::Polygon &l, const te::dt::DateTime &t, te::dt::TemporalRelation tr, boost::ptr_vector< TimeSeries > &r) const
It returns the time series inside the given polygon and considering a given temporal restriction.
void getTimeSeries(const te::gm::Envelope &e, const te::dt::DateTime &t, te::dt::TemporalRelation tr, boost::ptr_vector< TimeSeries > &r) const
It returns the time series inside the given envelope and considering a given temporal restriction.
CoverageSeriesObservationSet m_observations
CoverageSeriesIterator at(te::dt::DateTime *t) const
It returns an iterator that points to an observation at a given time.
void add(const CoverageSeriesObservation &o)
It adds an observation (time and coverage) into the coverage series.
An abstract class to represent a coverage.
TemporalRelation
Temporal relations between date and time (Source: Allen, 1991).
SpatialRelation
Spatial relations between geometric objects.
CoverageType
An enum for the types of coverage.
std::pair< te::dt::DateTimeShrPtr, CoverageShrPtr > CoverageSeriesObservation
std::map< te::dt::DateTimeShrPtr, CoverageShrPtr, CompareShrDateTime > CoverageSeriesObservationSet
#define TESTEXPORT
You can use this macro in order to export/import classes and functions from this module.