All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
te::da::ST_Relate Class Referenceabstract

Spatial relation function. More...

#include <ST_Relate.h>

Inheritance diagram for te::da::ST_Relate:
te::da::Function te::da::Expression te::common::BaseVisitable< QueryVisitor >

Public Types

typedef R ReturnType
 
typedef QueryVisitor VisitorType
 

Public Member Functions

virtual ReturnType accept (VisitorType &guest) const =0
 It call the visit method from the guest object. More...
 
void add (Expression *arg)
 It adds the argument to the function list of arguments. More...
 
Expressionclone () const
 It creates a new copy of this expression. More...
 
ExpressiongetArg (std::size_t i) const
 It returns the i-th function argument. More...
 
const std::string & getName () const
 It returns the function name. More...
 
std::size_t getNumArgs () const
 It returns the number of arguments informed to the function. More...
 
ST_Relateoperator= (const ST_Relate &rhs)
 
Expressionoperator[] (std::size_t i) const
 It returns the i-th function argument. More...
 
TE_DEFINE_VISITABLE ST_Relate (Expression *g1, Expression *g2, LiteralString *intersectionMatrix=0)
 Constructor. More...
 
 ST_Relate (const Expression &g1, const Expression &g2, const std::string &intersectionMatrix=std::string(""))
 Constructor. More...
 
 ST_Relate (const ST_Relate &rhs)
 Copy constructor. More...
 
 ~ST_Relate ()
 Destructor. More...
 

Protected Attributes

std::vector< Expression * > m_args
 The list of arguments. More...
 
std::string m_name
 The function name. May be an operator symbol or just a regular name like ST_Intersects. More...
 

Detailed Description

Spatial relation function.

This function is just a syntatic-suggar.

See also
Function

Definition at line 48 of file ST_Relate.h.

Member Typedef Documentation

typedef R te::common::BaseVisitable< QueryVisitor , R >::ReturnType
inherited

Definition at line 58 of file BaseVisitable.h.

Definition at line 57 of file BaseVisitable.h.

Constructor & Destructor Documentation

te::da::ST_Relate::ST_Relate ( Expression g1,
Expression g2,
LiteralString intersectionMatrix = 0 
)

Constructor.

Parameters
g1The first geometric argument.
g2The second geometric argument.
intersectionMatrixA intersection matrix.
Note
The third parameter is optional. If omitted the function result is a intersection matrix otherwise the result is a boolean.
The operator will take the ownership of the given arguments.

Definition at line 31 of file ST_Relate.cpp.

References te::da::Function::m_args.

te::da::ST_Relate::ST_Relate ( const Expression g1,
const Expression g2,
const std::string &  intersectionMatrix = std::string("") 
)

Constructor.

Parameters
g1The first geometric argument.
g2The second geometric argument.
intersectionMatrixA intersection matrix.
Note
The third parameter is optional. If omitted the function result is a intersection matrix otherwise the result is a boolean.

Definition at line 41 of file ST_Relate.cpp.

References te::da::Expression::clone(), and te::da::Function::m_args.

te::da::ST_Relate::ST_Relate ( const ST_Relate rhs)

Copy constructor.

Definition at line 51 of file ST_Relate.cpp.

te::da::ST_Relate::~ST_Relate ( )
inline

Destructor.

Definition at line 82 of file ST_Relate.h.

Member Function Documentation

virtual ReturnType te::common::BaseVisitable< QueryVisitor , R >::accept ( VisitorType guest) const
pure virtualinherited

It call the visit method from the guest object.

Parameters
guestThe guest or visitor.
Returns
Any valid value define by the template type R.
void te::da::Function::add ( Expression arg)
inherited

It adds the argument to the function list of arguments.

Parameters
argThe argument to be added.
Note
The Function will take the ownership of the given argument.

Definition at line 79 of file Function.cpp.

Referenced by te::map::QueryEncoder::getExpression(), te::da::ObjectIdSet::getExpressionByInClause(), te::da::ObjectIdSet::setExpressionByInClause(), and te::map::QueryEncoder::visit().

te::da::Expression * te::da::ST_Relate::clone ( ) const
virtual

It creates a new copy of this expression.

Reimplemented from te::da::Function.

Definition at line 62 of file ST_Relate.cpp.

te::da::Expression * te::da::Function::getArg ( std::size_t  i) const
inherited

It returns the i-th function argument.

Parameters
iThe argument position.
Returns
The it-th function argument.

Definition at line 67 of file Function.cpp.

Referenced by te::da::SpatialRestrictionVisitor::getGeometryRestriction(), te::da::SpatialRestrictionVisitor::getPropertyName(), te::da::SpatialRestrictionVisitor::isFromEnvelope(), and te::serialize::xml::Save().

te::da::ST_Relate & te::da::ST_Relate::operator= ( const ST_Relate rhs)

Assignment operator.

Definition at line 56 of file ST_Relate.cpp.

References te::da::Function::operator=().

te::da::Expression * te::da::Function::operator[] ( std::size_t  i) const
inherited

It returns the i-th function argument.

Parameters
iThe argument position.
Returns
The it-th function argument.

Definition at line 73 of file Function.cpp.

Member Data Documentation

std::string te::da::Function::m_name
protectedinherited

The function name. May be an operator symbol or just a regular name like ST_Intersects.

Definition at line 117 of file Function.h.

Referenced by te::da::Function::operator=().


The documentation for this class was generated from the following files: