26 #ifndef __TERRALIB_FE_SERIALIZATION_XML_INTERNAL_EXPRESSION_H
27 #define __TERRALIB_FE_SERIALIZATION_XML_INTERNAL_EXPRESSION_H
30 #include "../../../common/Singleton.h"
31 #include "../../../fe/Visitor.h"
32 #include "../../Config.h"
39 #include <boost/function.hpp>
A class that models a XML writer object built on top of Xerces-C++.
Template support for singleton pattern.
An abstract interface for operators.
A convenient and more compact way of encoding the very common bounding box constraint based on an env...
A class for binary comparison operators.
A logical operator can be used to combine two or more conditional expressions.
This class can be used to represent binary operation expressions.
A class for binary spatial operators.
A comparison operator is used to form expressions that evaluate the mathematical comparison between t...
Distance buffer operator.
This is an abstract class that models a Filter Encoding expression.
A function is a named procedure that performs a distinct computation.
This class can be used to represent literal values.
A logical operator can be used to combine one or more conditional expressions.
The PropertyIsBetween element is defined as a compact way of encoding a range check.
It is intended to encode a character string comparison operator with pattern matching.
The PropertyIsNull class encodes an operator that checks to see if the value of its content is NULL.
This class is used to encode the name of any property of an object.
A spatial operator determines whether its geometric arguments satisfy the stated spatial relationship...
A logical operator that can be used to combine one conditional expressions.
A visitor interface for a Filter expression.
void reg(const std::string &expName, const ExpressionReadFnctType &fnct)
void visit(const te::fe::BinaryOperator &visited)
void visit(const te::fe::BinaryLogicOp &visited)
void visit(const te::fe::Literal &visited)
boost::function< te::fe::Expression *(te::xml::Reader &)> ExpressionReadFnctType
void visit(const te::fe::PropertyIsBetween &visited)
void visit(const te::fe::SpatialOp &visited)
void visit(const te::fe::Expression &visited)
te::xml::AbstractWriter * m_writer
ExpressionFnctIdxType m_fncts
void visit(const te::fe::AbstractOp &visited)
void visit(const te::fe::BBOXOp &visited)
void visit(const te::fe::LogicOp &visited)
void visit(const te::fe::PropertyName &visited)
void visit(const te::fe::PropertyIsNull &visited)
void write(const te::fe::Expression *exp, te::xml::AbstractWriter &writer)
std::map< std::string, ExpressionReadFnctType > ExpressionFnctIdxType
te::fe::Expression * read(te::xml::Reader &reader) const
void visit(const te::fe::PropertyIsLike &visited)
void visit(const te::fe::UnaryLogicOp &visited)
void visit(const te::fe::ComparisonOp &visited)
void visit(const te::fe::Function &visited)
void visit(const te::fe::BinarySpatialOp &visited)
void visit(const te::fe::BinaryComparisonOp &visited)
void visit(const te::fe::DistanceBuffer &visited)
This class models a XML writer object.
This class models a XML reader object.
#define TEFEEXPORT
You can use this macro in order to export/import classes and functions from this module.