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

Spatial Distance Buffer operator. More...

#include <ST_DistanceBuffer.h>

Inheritance diagram for te::da::ST_DistanceBuffer:
te::da::Function te::da::Expression te::common::BaseVisitable< QueryVisitor > te::da::ST_Beyond te::da::ST_DWithin

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...
 
te::common::DistancegetDistance () const
 It returns the distance. More...
 
te::gm::GeometrygetGeometry () const
 It returns the geometry. 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_DistanceBufferoperator= (const ST_DistanceBuffer &rhs)
 
Expressionoperator[] (std::size_t i) const
 It returns the i-th function argument. More...
 
void setDistance (te::common::Distance *d)
 It sets the distance. More...
 
void setGeometry (te::gm::Geometry *g)
 It sets the geometry. More...
 
TE_DEFINE_VISITABLE ST_DistanceBuffer (const std::string &name, Expression *e, te::gm::Geometry *g, te::common::Distance *d)
 Constructor. More...
 
 ST_DistanceBuffer (const std::string &name, const Expression &e, const te::gm::Geometry &g, const te::common::Distance &d)
 Constructor. More...
 
 ST_DistanceBuffer (const ST_DistanceBuffer &rhs)
 Copy constructor. More...
 
 ~ST_DistanceBuffer ()
 Destructor. More...
 

Protected Attributes

std::vector< Expression * > m_args
 The list of arguments. More...
 
std::auto_ptr
< te::common::Distance
m_d
 Distance. More...
 
std::auto_ptr< te::gm::Geometrym_geom
 Geometry literal. 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 Distance Buffer operator.

This function is just a syntatic-suggar.

See also
Function

Definition at line 52 of file ST_DistanceBuffer.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_DistanceBuffer::ST_DistanceBuffer ( const std::string &  name,
Expression e,
te::gm::Geometry g,
te::common::Distance d 
)

Constructor.

Parameters
nameThe distance buffer operator name.
eThe expression.
gThe geometry literal.
dDistance.
Note
The operator will take the ownership of the given arguments.

Definition at line 31 of file ST_DistanceBuffer.cpp.

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

te::da::ST_DistanceBuffer::ST_DistanceBuffer ( const std::string &  name,
const Expression e,
const te::gm::Geometry g,
const te::common::Distance d 
)

Constructor.

Parameters
nameThe distance buffer operator name.
eThe expression.
gThe geometry literal.
dDistance.

Definition at line 42 of file ST_DistanceBuffer.cpp.

References te::da::Expression::clone(), te::dt::AbstractData::clone(), te::da::Function::m_args, m_d, and m_geom.

te::da::ST_DistanceBuffer::ST_DistanceBuffer ( const ST_DistanceBuffer rhs)

Copy constructor.

Definition at line 55 of file ST_DistanceBuffer.cpp.

References m_d, and m_geom.

te::da::ST_DistanceBuffer::~ST_DistanceBuffer ( )

Destructor.

Definition at line 64 of file ST_DistanceBuffer.cpp.

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_DistanceBuffer::clone ( ) const
virtual

It creates a new copy of this expression.

Reimplemented from te::da::Function.

Reimplemented in te::da::ST_DWithin.

Definition at line 81 of file ST_DistanceBuffer.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::common::Distance * te::da::ST_DistanceBuffer::getDistance ( ) const

It returns the distance.

Returns
The distance.

Definition at line 101 of file ST_DistanceBuffer.cpp.

te::gm::Geometry * te::da::ST_DistanceBuffer::getGeometry ( ) const

It returns the geometry.

Returns
The geometry.

Definition at line 91 of file ST_DistanceBuffer.cpp.

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

Assignment operator.

Definition at line 68 of file ST_DistanceBuffer.cpp.

References m_d, m_geom, and te::da::Function::operator=().

Referenced by te::da::ST_Beyond::operator=(), and te::da::ST_DWithin::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.

void te::da::ST_DistanceBuffer::setDistance ( te::common::Distance d)

It sets the distance.

Parameters
dThe distance.
Note
It will take the ownership of the distance.

Definition at line 96 of file ST_DistanceBuffer.cpp.

void te::da::ST_DistanceBuffer::setGeometry ( te::gm::Geometry g)

It sets the geometry.

Parameters
gThe geometry.
Note
It will take the ownership of the geometry.

Definition at line 86 of file ST_DistanceBuffer.cpp.

Member Data Documentation

std::auto_ptr<te::common::Distance> te::da::ST_DistanceBuffer::m_d
protected

Distance.

Definition at line 127 of file ST_DistanceBuffer.h.

Referenced by operator=(), and ST_DistanceBuffer().

std::auto_ptr<te::gm::Geometry> te::da::ST_DistanceBuffer::m_geom
protected

Geometry literal.

Definition at line 126 of file ST_DistanceBuffer.h.

Referenced by operator=(), and ST_DistanceBuffer().

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: