26 #ifndef __TERRALIB_ST_INTERNAL_OBSERVATIONDATASETTYPE_H
27 #define __TERRALIB_ST_INTERNAL_OBSERVATIONDATASETTYPE_H
30 #include "../../Config.h"
37 #include <boost/ptr_container/ptr_vector.hpp>
40 namespace te {
namespace da {
class DataSetType; } }
41 namespace te {
namespace dt {
class DateTimeProperty;
class DateTime;
42 class DateTimeInstant;
class DateTimePeriod;} }
43 namespace te {
namespace gm {
class GeometryProperty;
class Geometry; } }
494 std::unique_ptr<te::gm::Geometry>
m_geom;
An abstract class to represent an instant of date and time.
An abstract class to represent a period of date and time.
The type for date and time types: date, date period, date duration, time duration,...
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
A class that contains complemental DataSetType information about a DataSet that holds observations.
bool hasTwoVlTimeProp() const
std::unique_ptr< te::gm::GeometryProperty > m_geomPropInfo
Geometry: information about the property that has the observation spatial location.
const te::dt::DateTimeProperty * getVlEndTimePropInfo() const
It returns the DataSet property information that contains the valid end time.
std::string getGeomPropName() const
It returns the name of the property that is a geometry property.
void setGeomPropInfo(te::gm::GeometryProperty *prop)
It sets the info about the property that contains the observation location.
void setObsPropInfo(const std::vector< std::string > &props)
It sets the names of the DataSet properties that are observed over time.
void setRsTime(te::dt::DateTimeInstant *t)
It sets the result time associated to all observations.
std::unique_ptr< te::gm::Geometry > m_spatialExtent
Spatial extent.
void setVlTimePropInfo(te::dt::DateTimeProperty *tpInfo)
It sets the property info that contains the valid time.
void setDataSetName(const std::string &dsName)
It sets the DataSet name that contains the observations.
std::unique_ptr< te::dt::DateTimeInstant > m_resultTime
Result time: the result time, when the time is not inside a DataSet.
std::string getDataSetName() const
It returns the DataSet name.
std::unique_ptr< te::dt::DateTimeProperty > m_resultTimePropInfo
Result time: information about the DataSet property that contains the result time.
const te::dt::DateTime * getTime() const
It returns the phenomenon time.
void setObsPropInfo(const std::vector< int > &props)
It sets the indexes of the DataSet properties that are observed over time.
ObservationDataSetType(const ObservationDataSetType &obs)
Copy constructor.
boost::ptr_vector< te::dt::DateTimeProperty > m_validTimePropInfo
Valid time: information about the DataSet properties that contain the valid time.
std::vector< int > m_observedPropIdx
Observed properties: the indexes of DataSet properties that are observed.
ObservationDataSetType(const std::string &dsName)
Constructor.
void setTime(te::dt::DateTime *t)
It sets the phenomenon time associated to all observations.
std::string m_idPropName
Id: the name of DataSet property that contain the id of each group of observation.
void setVlTimePropInfo(te::dt::DateTimeProperty *tpInfo1, te::dt::DateTimeProperty *tpInfo2)
It sets the property info that contains the valid time.
bool hasTemporalExtent() const
void setTemporalExtent(te::dt::DateTimePeriod *te)
It sets the temporal extent of all observations.
const ObservationDataSetType & operator=(const ObservationDataSetType &rhs)
Assignment operator.
const std::vector< std::string > & getObsPropNames() const
It returns the names of the DataSet properties that are observed over time.
const te::dt::DateTimeProperty * getRsTimePropInfo() const
It returns the DataSet property information that contains the result time.
const te::dt::DateTimeProperty * getEndTimePropInfo() const
It returns the DataSet property information that contains the phenomenon end time.
const te::gm::Geometry * getSpatialExtent() const
It returns the spatial extent of the observations.
void setIdPropInfo(const std::string &idProp)
It sets the name of the DataSet property that contains identifiers that groups the observations.
void setGeometry(te::gm::Geometry *geom)
It sets the geometry associated to all observations.
virtual ~ObservationDataSetType()
Virtual destructor.
void setTimePropInfo(te::dt::DateTimeProperty *tpInfo)
It sets the property info that contains the phenomenon beginning time.
std::string getBeginTimePropName() const
It returns the name of the DataSet property that contains the phenomenon beginning time.
int m_idPropIndex
Id: the index of DataSet property that contain the id of each group of observation.
std::string getEndTimePropName() const
It returns the name of the DataSet property that contains the phenomenon end time.
bool hasSpatialExtent() const
std::unique_ptr< te::dt::DateTimePeriod > m_temporalExtent
Temporal extent.
std::string getObsId() const
It returns the identifier associated to all observations.
bool hasTwoTimeProp() const
const te::dt::DateTimePeriod * getVlTime() const
It returns the valid time.
std::unique_ptr< te::dt::DateTime > m_phTime
Phenomenon time: the phenomenon time, when the time is not inside a DataSet.
std::string m_dsName
The DataSet name.
const te::gm::GeometryProperty * getGeomPropInfo() const
It returns the DataSet property information that contains the geometry.
const te::dt::DateTimeProperty * getBeginTimePropInfo() const
It returns the DataSet property information that contains the phenomenon beginning time.
boost::ptr_vector< te::dt::DateTimeProperty > m_phTimePropInfo
Phenomenon time: information about the DataSet properties that contain the phenomenon time.
const te::dt::DateTimePeriod * getTemporalExtent() const
It returns the temporal extent of the observations.
void setRsTimePropInfo(te::dt::DateTimeProperty *tpInfo)
It sets the property info that contains the result time.
void setVlTime(te::dt::DateTimePeriod *t)
It sets the valid time associated to all observations.
std::vector< std::string > m_observedPropName
Observed properties: the names of DataSet properties that are observed.
void setIdPropInfo(int idProp)
It sets the index of the DataSet property that contains identifiers that groups the observations.
std::unique_ptr< te::gm::Geometry > m_geom
Geometry: the geometry, when the spatial location of the observations are not in the DataSet.
void setId(const std::string &id)
It sets the identifier associated to all observations.
const te::dt::DateTimeInstant * getRsTime() const
It returns the result time.
const te::dt::DateTimeProperty * getVlBeginTimePropInfo() const
It returns the DataSet property information that contains the valid beginning time.
std::string m_id
Id: the id associated to all observations.
std::string getIdPropName() const
It returns the name of the property that contains identifiers that groups observations.
const std::vector< int > & getObsPropIdxs() const
It returns the indexes of the DataSet properties that are observed over time.
std::unique_ptr< te::dt::DateTimePeriod > m_validTime
Valid time: the valid time, when the time is not inside a DataSet.
const te::gm::Geometry * getGeometry() const
It returns the geometry associated to all observations.
int getIdPropIdx() const
It returns the index of the property that contains identifiers that groups observations.
void setSpatialExtent(te::gm::Geometry *se)
It sets the spatial extent of all observations.
bool hasVlTimeProp() const
bool hasRsTimeProp() const
void setTimePropInfo(te::dt::DateTimeProperty *tpInfo1, te::dt::DateTimeProperty *tpInfo2)
It sets the property info that contains the phenomenon time.
#define TESTEXPORT
You can use this macro in order to export/import classes and functions from this module.