27 #include "../../../dataaccess/dataset/DataSet.h" 
   28 #include "../../../datatype/DateTime.h" 
   29 #include "../../../datatype/DateTimePeriod.h" 
   30 #include "../../../datatype/DateTimeInstant.h" 
   31 #include "../../../datatype/SimpleData.h" 
   32 #include "../../../geometry/Geometry.h" 
   33 #include "../../../geometry/Utils.h" 
   38 #include "../observation/ObservationDataSet.h" 
   39 #include "../observation/ObservationDataSetType.h" 
   43                                               int idPropIdx, 
const std::string& 
id)
 
   45   m_type(tPropIdx, vPropIdx, gPropIdx, idPropIdx, id),
 
   53   m_type(tPropIdx, vPropIdx, gPropIdx, idPropIdx, id),
 
   59                           const std::vector<int>& vPropIdxs, 
 
   60                           int gPropIdx, 
int idPropIdx, 
const std::string& 
id)
 
   62   m_type(tPropIdxs, vPropIdxs, gPropIdx, idPropIdx, id),
 
   68                           const std::vector<int>& vPropIdxs, 
int gPropIdx, 
int idPropIdx, 
 
   71   m_type(tPropIdxs, vPropIdxs, gPropIdx, idPropIdx, id),
 
  115   return m_obsDs->getData()->size();
 
  120   return m_obsDs->moveNext();
 
  125   return m_obsDs->movePrevious();
 
  130   return m_obsDs->moveFirst();
 
  135   return m_obsDs->moveBeforeFirst();
 
  140   return m_obsDs->moveLast();
 
  145   return m_obsDs->isAtBegin();
 
  150   return m_obsDs->isBeforeBegin();
 
  155   return m_obsDs->isAtEnd();
 
  160   return m_obsDs->isAfterEnd();
 
  166   int phTimePropIdx = m_type.getBeginTimePropIdx();
 
  167   return std::auto_ptr<te::dt::DateTime>(m_obsDs->getData()->getDateTime(phTimePropIdx));
 
  172   return std::auto_ptr<te::dt::AbstractData>(m_obsDs->getData()->getValue(idx));
 
  177   return std::auto_ptr<te::dt::AbstractData>(m_obsDs->getData()->getValue(m_type.getValuePropIdx()[0]));
 
  182   return m_obsDs->getData()->getDouble(idx);
 
  187   return m_obsDs->getData()->getDouble(m_type.getValuePropIdx()[0]);
 
  192   return m_obsDs->getData()->getInt32(idx);
 
  197   return m_obsDs->getData()->getInt32(m_type.getValuePropIdx()[0]);
 
  202   return std::auto_ptr<te::gm::Geometry>(m_obsDs->getData()->getGeometry(m_type.getGeomPropIdx()));
 
  207   return m_obsDs->getTemporalExtent();
 
  212   return std::auto_ptr<te::st::TimeSeries>(getTimeSeries(m_type.getValuePropIdx()[0],interp));
 
  217   std::auto_ptr<te::st::TimeSeries> result(
new TimeSeries(interp,m_id));
 
  223     if(m_type.getGeomPropIdx()>-1)
 
  225       std::auto_ptr<te::gm::Geometry> geom(ds->
getGeometry(m_type.getGeomPropIdx()));
 
  226       result->setLocation(geom.release());
 
  230     std::auto_ptr<te::dt::DateTime> time(ds->
getDateTime(m_type.getBeginTimePropIdx()));
 
  231     std::auto_ptr<te::dt::AbstractData> value(ds->
getValue(idx));
 
  232     result->add(time.release(), value.release());
 
  238     std::auto_ptr<te::dt::DateTime> time(ds->
getDateTime(m_type.getBeginTimePropIdx()));
 
  239     std::auto_ptr<te::dt::AbstractData> value(ds->
getValue(idx));
 
  240     result->add(time.release(), value.release());
 
  246                                 std::vector<te::st::TimeSeries*>& result)
 
  248   std::size_t sz = m_type.getValuePropIdx().size();
 
  249   for(
unsigned int i = 0; i<sz; ++i)
 
  252     result.push_back(ts);
 
  259     for(
unsigned int i = 0; i<sz; ++i)
 
  262       if(m_type.getGeomPropIdx()>-1)
 
  264         std::auto_ptr<te::gm::Geometry> geom(ds->
getGeometry(m_type.getGeomPropIdx()));
 
  265         result[i]->setLocation(geom.release());
 
  269       std::auto_ptr<te::dt::DateTime> time(ds->
getDateTime(m_type.getBeginTimePropIdx()));
 
  270       std::auto_ptr<te::dt::AbstractData> value(ds->
getValue(m_type.getValuePropIdx()[i]));
 
  271       result[i]->add(time.release(), value.release());
 
  277     for(
unsigned int i = 0; i<sz; ++i)
 
  280       std::auto_ptr<te::dt::DateTime> time(ds->
getDateTime(m_type.getBeginTimePropIdx()));
 
  281       std::auto_ptr<te::dt::AbstractData> value(ds->
getValue(m_type.getValuePropIdx()[i]));
 
  282       result[i]->add(time.release(), value.release());
 
  290   std::auto_ptr<te::da::DataSet> result(m_obsDs->release());
 
TimeSeriesDataSet(te::da::DataSet *ds, int tPropIdx, int vPropIdx, int gPropIdx, int idPropIdx, const std::string &id)
Constructor. 
 
virtual std::auto_ptr< te::dt::DateTime > getDateTime(std::size_t i) const =0
Method for retrieving a date and time attribute value. 
 
std::auto_ptr< TimeSeries > getTimeSeries(te::st::AbstractTimeSeriesInterp *interp)
It returns the time series from the DataSet. 
 
std::size_t size() const 
It returns the size of the time series observation set. 
 
A class to represent a DataSet that contains observations. 
 
ObservationDataSet * getObservationSet() const 
It returns the data set that contains the time series observations. 
 
bool isBeforeBegin() const 
 
int getInt() const 
It returns the observed value as double pointed by the internal cursor. 
 
double getDouble() const 
It returns the observed value as double pointed by the internal cursor. 
 
A class that contains complemental information about a DataSet that holds observations of a time seri...
 
This file contains a class to represent a time series data set. 
 
const TimeSeriesDataSetType & getType() const 
It returns a reference to the internal time series data set type. 
 
std::auto_ptr< te::da::DataSet > release()
It releases all internal pointers, returning its internal DataSet and invalidating itself...
 
This file contains a class to represent a time series. 
 
void setId(const std::string &id)
It sets the identifier associated to the time series. 
 
virtual bool moveNext()=0
It moves the internal pointer to the next item of the collection. 
 
std::auto_ptr< te::gm::Geometry > getGeometry() const 
It returns the geometry pointed by the internal cursor. 
 
void getTimeSeriesSet(te::st::AbstractTimeSeriesInterp *interp, std::vector< te::st::TimeSeries * > &result)
It returns all time series from the DataSet. 
 
std::auto_ptr< te::dt::DateTime > getTime() const 
 
virtual std::auto_ptr< te::gm::Geometry > getGeometry(std::size_t i) const =0
Method for retrieving a geometric attribute value. 
 
A dataset is the unit of information manipulated by the data access module of TerraLib. 
 
virtual ~TimeSeriesDataSet()
It returns the trajectory geometry property. 
 
An abstract class for an interpolation function or interpolator that estimate a value at non-observav...
 
An abstract class to represent a period of date and time. 
 
A class to represent time series. 
 
std::auto_ptr< te::dt::AbstractData > getValue() const 
It returns the observed value pointed by the internal cursor. 
 
te::dt::DateTimePeriod * getTemporalExtent() const 
It returns the temporal extent of the time series observations. 
 
std::string getId() const 
It returns the identifier associated to the time series. 
 
virtual std::auto_ptr< te::dt::AbstractData > getValue(std::size_t i) const 
Method for retrieving any other type of data value stored in the data source.