27 #include "../dataaccess/query_h.h"
29 #include "../gml/Envelope.h"
56 for(
size_t i = 0; i < nids; ++i)
121 size_t n = visited.
size();
122 for(
size_t i = 0; i < n; ++i)
166 m_expression = dbuffer;
185 m_expression = and_op;
192 std::string pattern = l->
getValue();
It models the inequality operator greater than (>).
const std::string & getName() const
It returns the property name.
static const char * sm_propertyIsLessThan
static const char * sm_touches
static const char * sm_mul
void add(Expression *arg)
It adds the argument to the function list of arguments.
const char * getName() const
It returns the operator name.
te::gm::Envelope * getCoordinates() const
te::gm::Geometry * getGeometry() const
It returns the geometry.
te::common::Distance * getDistance() const
It returns the distance.
static const char * sm_dWithin
const std::string & getId() const
It returns the feature identification value.
static const std::string sm_Add
PropertyName * getPropertyName() const
It returns the property name.
static const std::string sm_LessThan
Distance buffer operator.
Spatial intersects operator.
static const std::string sm_ST_Equals
static const std::string sm_ST_Overlaps
ObjectId * getOid(size_t i) const
It returns a specified object identifier.
te::gm::Geometry * getGeometry() const
It returns the geometry.
static const char * sm_propertyIsGreaterThanOrEqualTo
static const char * sm_propertyIsGreaterThan
A class that models the name of any property of an object.
static const char * sm_crosses
static const std::string sm_ST_Touches
static const std::string sm_ST_Intersects
static const char * sm_or
A convenient and more compact way of encoding the very common bounding box constraint based on an env...
A spatial operator determines whether its geometric arguments satisfy the stated spatial relationship...
PropertyName * getPropertyName() const
It returns the property name.
const std::string & getWildCard() const
It returns the wild character.
A visitor that converts a OGC Filter Expression to TerraLib Expression.
static const char * sm_intersects
A class for binary spatial operators.
~QueryEncoder()
Virtual destructor.
It models the inequality operator less than (<).
static const char * sm_disjoint
The PropertyIsBetween element is defined as a compact way of encoding a range check.
static const char * sm_within
A comparison operator is used to form expressions that evaluate the mathematical comparison between t...
te::da::Expression * getExpression(const te::fe::Filter *f)
It converts the OGC Filter Expression to a TerraLib Expression.
AbstractOp * getOp() const
It returns main filter operation.
static const std::string sm_EqualTo
PropertyName * getProperty() const
It returns the property name.
std::size_t size() const
It returns the number of operands.
static const char * sm_propertyIsEqualTo
A logical operator that can be used to combine one conditional expressions.
The PropertyIsNull class encodes an operator that checks to see if the value of its content is NULL...
Boolean logic operator: AND.
This is an abstract class that models a query expression.
te::gml::Envelope * getEnvelope() const
It returns the envelope.
Literal * getLiteral() const
It returns the literal value.
QueryEncoder()
Default constructor.
static const char * sm_div
static std::map< std::string, std::string > sm_fnameMap
A map that associates Filter Operator names to Query Functions names.
const std::string & getSingleChar() const
It returns the single wild character.
Spatial Distance Buffer operator.
static const std::string sm_GreaterThanOrEqualTo
Expression * getUpperBoundary() const
It returns the upper boundary expression.
static const std::string sm_ST_Crosses
A function is a named procedure that performs a distinct computation.
It is intended to encode a character string comparison operator with pattern matching.
This class can be used to represent binary operation expressions.
static const std::string sm_Mul
This class models a literal value.
This class is used to encode the name of any property of an object.
size_t getNumberOfOids() const
It returns the size of the list of object identifiers.
PropertyName * getProperty() const
It returns the property name.
static const char * sm_beyond
This is an abstract class that models a Filter Encoding expression.
Expression * getSecond() const
It returns the second operand.
Expression * getFirst() const
It returns the first operand.
It is intended to encode a character string comparison operator with pattern matching.
AbstractOp * getOp(std::size_t i) const
It returns a specified operand.
An object identifier is meant to represent a unique identifier for an object instance within the cont...
static const std::string sm_And
static void initialize()
Static method to initialize the QueryEncoder.
static const std::string sm_ST_Beyond
Expression * getSecond() const
It returns the second operand.
A class that models a Function expression.
const std::string & getEscapeChar() const
It returns the escape character.
Tells if a value is NULL.
A filter is any valid predicate expression.
AbstractOp * getOp() const
It returns the operand.
static const std::string sm_Div
Envelope defines an extent using a pair of positions defining opposite corners in arbitrary dimension...
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
static const std::string sm_LessThanOrEqualTo
static const std::string sm_Sub
static const char * sm_add
An abstract interface for operators.
PropertyName * getProperty() const
It returns the property name.
A class for binary comparison operators.
static const std::string sm_ST_Disjoint
static const char * sm_and
te::gml::Envelope * getEnvelope() const
It returns the envelope.
This class can be used to represent literal values.
static const char * sm_sub
A logical operator can be used to combine one or more conditional expressions.
virtual ReturnType accept(VisitorType &guest) const =0
It call the visit method from the guest object.
static const std::string sm_ST_Within
static const char * sm_equals
A class that models a literal for Envelope values.
A base class for unary operators.
void visit(const te::fe::AbstractOp &visited)
A logical operator can be used to combine two or more conditional expressions.
A class that represents the IN operator.
static const char * sm_overlaps
const std::string & getValue() const
It returns the literal value.
static const char * sm_not
Expression * getFirst() const
It returns the first operand.
static const std::string sm_Not
static const std::string sm_Or
const char * getName() const
It returns the operator name.
static const std::string sm_ST_DWithin
static const std::string sm_GreaterThan
Expression * getLowerBoundary() const
It returns the lower boundary expression.
A base class for binary functions.
static const char * sm_propertyIsLessThanOrEqualTo
A class that models a literal for Geometry values.
Expression * getExpression() const
It returns the between expression.
A given distance has a measurement and a unit-of-measure.
This class models a string Literal value.