/usr/include/terralib/kernel/TeSTElementSet.h is in libterralib-dev 4.3.0+dfsg.2-11.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | /************************************************************************************
TerraLib - a library for developing GIS applications.
Copyright 2001-2007 INPE and Tecgraf/PUC-Rio.
This code is part of the TerraLib library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
You should have received a copy of the GNU Lesser General Public
License along with this library.
The authors reassure the license terms regarding the warranties.
They specifically disclaim any warranties, including, but not limited to,
the implied warranties of merchantability and fitness for a particular purpose.
The library provided hereunder is on an "as is" basis, and the authors have no
obligation to provide maintenance, support, updates, enhancements, or modifications.
In no event shall INPE and Tecgraf / PUC-Rio be held liable to any party for direct,
indirect, special, incidental, or consequential damages arising out of the use
of this library and its documentation.
*************************************************************************************/
/*! \file TeSTElementSet.h
\brief This file contains structures to deal with a set of spatio-temporal
instances. These instances can belong to a specific layer or theme.
*/
#ifndef __TERRALIB_INTERNAL_STELEMENTSET_H
#define __TERRALIB_INTERNAL_STELEMENTSET_H
#include "TeBaseSTInstanceSet.h"
#include "TeSTInstance.h"
#include "TeTimeInterval.h"
#include "TeMultiGeometry.h"
class TeQuerier;
class TeTheme;
class TeLayer;
/*! \class TeSTElementSet
\brief A class that represents a set of spatial temporal instances.
This class specializes the abstract class TeBaseSTInstanceSet representing
each spatial temporal instance of the set as a TeSTInstance type. That is, the
geometries of each instance in this set is represented as multi geometries
(TeMultiGeometry class)and its valid time as a time interval (TeTimeInterval class).
\sa TeBaseSTInstanceSet TeSTInstance TeMultiGeometry TeTimeInterval TeTheme TeLayer
*/
class TL_DLL TeSTElementSet : public TeBaseSTInstanceSet<TeMultiGeometry, TeTimeInterval, TeSTInstance>
{
protected:
//! Builds the set using a given querier and a specific slice
bool buildImpl(TeQuerier* querier, const int& slide = -1);
public:
//! Constructor
TeSTElementSet() : TeBaseSTInstanceSet<TeMultiGeometry, TeTimeInterval, TeSTInstance>()
{ }
//! Constructor
TeSTElementSet(TeTheme* theme, TeAttributeList attList = TeAttributeList()) :
TeBaseSTInstanceSet<TeMultiGeometry, TeTimeInterval, TeSTInstance>(theme, attList)
{ }
//! Constructor
TeSTElementSet(TeLayer* layer, TeAttributeList attList = TeAttributeList()) :
TeBaseSTInstanceSet<TeMultiGeometry, TeTimeInterval, TeSTInstance>(layer, attList)
{ }
//! Constructor
TeSTElementSet(const TeBox& box, const TeAttributeList& attrList) :
TeBaseSTInstanceSet<TeMultiGeometry, TeTimeInterval, TeSTInstance>(box, attrList)
{ }
//! Returns the valid time interval for all ST instances
TeTimeInterval totalTime();
//! Sets the valid time interval for all ST instances
void totalTime(TeTimeInterval t);
//! Deprecated: Verifies if there is a specific element or object in the set
bool hasElement(const string& objId);
//! Sets a polygon set and its valid time interval to a specific object or element
bool setGeometry(const string& object_id, const TePolygonSet& geomSet, TeTimeInterval time = TeTimeInterval());
//! Sets a line set and its valid time interval to a specific object or element
bool setGeometry(const string& object_id, const TeLineSet& geomSet, TeTimeInterval time = TeTimeInterval());
//! Sets a point set and its valid time interval to a specific object or element
bool setGeometry(const string& object_id, const TePointSet& geomSet, TeTimeInterval time = TeTimeInterval());
//! Sets a cell set and its valid time interval to a specific object or element
bool setGeometry(const string& object_id, const TeCellSet& geomSet, TeTimeInterval time = TeTimeInterval());
//! Sets a text set and its valid time interval to a specific object or element
bool setGeometry(const string& object_id, const TeTextSet& geomSet, TeTimeInterval time = TeTimeInterval());
//! Gets a polygon set of an element or object and its valid time interval
bool getGeometry(const string& object_id, TePolygonSet& geomSet, TeTimeInterval time = TeTimeInterval());
//! Gets a line set of an element or object and its valid time interval
bool getGeometry(const string& object_id, TeLineSet& geomSet, TeTimeInterval time = TeTimeInterval());
//! Gets a point set of an element or object and its valid time interval
bool getGeometry(const string& object_id, TePointSet& geomSet, TeTimeInterval time = TeTimeInterval());
//! Gets a cell set of an element or object and its valid time interval
bool getGeometry(const string& object_id, TeCellSet& geomSet, TeTimeInterval time = TeTimeInterval());
//! Gets a text set of an element or object and its valid time interval
bool getGeometry(const string& object_id, TeTextSet& geomSet, TeTimeInterval time = TeTimeInterval());
};
/*! \example createSTElementSetFromLayer.cpp
Shows how to create a spatio-temporal element set from a layer.
*/
/*! \example createSTElementSetFromShapeFile.cpp
Shows how to create aspatio-temporal element set from a shapefile.
*/
/*! \example createSTElementSetFromTheme.cpp
Shows how to create aspatio-temporal element set from a theme.
*/
#endif
|