te::da::ST_Difference Class Referenceabstract

Spatial difference operator. More...

#include <ST_Difference.h>

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

Public Types

typedef void 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...
 
ExpressiongetFirst () const
 It returns the first 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...
 
ExpressiongetSecond () const
 It returns the second function argument. More...
 
ST_Differenceoperator= (const ST_Difference &rhs)
 
Expressionoperator[] (std::size_t i) const
 It returns the i-th function argument. More...
 
void setFirst (Expression *arg)
 It sets the first function argument. More...
 
void setSecond (Expression *arg)
 It sets the second function argument. More...
 
TE_DEFINE_VISITABLE ST_Difference (Expression *arg1, Expression *arg2)
 Constructor. More...
 
 ST_Difference (const Expression &arg1, const Expression &arg2)
 Constructor. More...
 
 ST_Difference (const ST_Difference &rhs)
 Copy constructor. More...
 
 ~ST_Difference ()
 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 difference operator.

This function is just a syntatic-suggar.

See also
BinaryFunction

Definition at line 46 of file ST_Difference.h.

Member Typedef Documentation

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

Definition at line 58 of file BaseVisitable.h.

Definition at line 57 of file BaseVisitable.h.

Constructor & Destructor Documentation

TE_DEFINE_VISITABLE te::da::ST_Difference::ST_Difference ( Expression arg1,
Expression arg2 
)
inline

Constructor.

Parameters
arg1The first argument.
arg2The second argument.
Note
The operator will take the ownership of the given arguments.

Definition at line 60 of file ST_Difference.h.

te::da::ST_Difference::ST_Difference ( const Expression arg1,
const Expression arg2 
)
inline

Constructor.

Parameters
arg1The first argument.
arg2The second argument.

Definition at line 68 of file ST_Difference.h.

te::da::ST_Difference::ST_Difference ( const ST_Difference rhs)

Copy constructor.

te::da::ST_Difference::~ST_Difference ( )
inline

Destructor.

Definition at line 74 of file ST_Difference.h.

Member Function Documentation

virtual ReturnType te::common::BaseVisitable< QueryVisitor , void >::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.
Expression* te::da::ST_Difference::clone ( ) const
virtual

It creates a new copy of this expression.

Reimplemented from te::da::BinaryFunction.

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.
Expression* te::da::BinaryFunction::getFirst ( ) const
inherited

It returns the first function argument.

Returns
The first function argument.
const std::string& te::da::Function::getName ( ) const
inlineinherited

It returns the function name.

Returns
The function name.

Definition at line 79 of file Function.h.

std::size_t te::da::Function::getNumArgs ( ) const
inherited

It returns the number of arguments informed to the function.

Returns
The number of parameters.
Expression* te::da::BinaryFunction::getSecond ( ) const
inherited

It returns the second function argument.

Returns
The second function argument.
ST_Difference& te::da::ST_Difference::operator= ( const ST_Difference rhs)

Assignment operator.

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.
void te::da::BinaryFunction::setFirst ( Expression arg)
inherited

It sets the first function argument.

Parameters
argThe first function argument.
Note
The BinaryFunction will take the ownership of the given argument.
void te::da::BinaryFunction::setSecond ( Expression arg)
inherited

It sets the second function argument.

Parameters
argThe second function argument.
Note
The BinaryFunction will take the ownership of the given argument.

Member Data Documentation

std::vector<Expression*> te::da::Function::m_args
protectedinherited

The list of arguments.

Definition at line 118 of file Function.h.

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.


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