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