te::fe::BBOXOp Class Referenceabstract

A convenient and more compact way of encoding the very common bounding box constraint based on an envelope. More...

#include <BBOXOp.h>

Inheritance diagram for te::fe::BBOXOp:
te::fe::SpatialOp te::fe::AbstractOp te::common::BaseVisitable< Visitor >

Public Types

typedef void ReturnType
 
typedef Visitor VisitorType
 

Public Member Functions

virtual ReturnType accept (VisitorType &guest) const =0
 It call the visit method from the guest object. More...
 
Initializer Methods

Methods related to instantiation and destruction.

 BBOXOp ()
 It initializes a new BBOXOp. More...
 
 BBOXOp (PropertyName *p, te::gml::Envelope *e)
 It initializes a new BBOXOp. More...
 
 ~BBOXOp ()
 Destructor. More...
 
Accessor methods

Methods used to get or set properties.

void setProperty (PropertyName *p)
 It sets property name. More...
 
PropertyNamegetProperty () const
 It returns the property name. More...
 
void setEnvelope (te::gml::Envelope *e)
 It sets the envelope. More...
 
te::gml::EnvelopegetEnvelope () const
 It returns the envelope. More...
 
Accessor methods

Methods used to get or set properties.

const char * getName () const
 It returns the operator name. More...
 
void setName (const char *opName)
 It sets the operator name. More...
 

Protected Attributes

const char * m_name
 Operator name. More...
 

Private Attributes

te::gml::Envelopem_envelope
 Bounding box constraint. (Mandatory) More...
 
PropertyNamem_property
 A geometric property. (theoretically it is optional, but it is required by the XML schema) More...
 

Detailed Description

A convenient and more compact way of encoding the very common bounding box constraint based on an envelope.

It is equivalent to the spatial operation Not Disjoint, meaning that the BBOX operator should identify all geometries that spatially interact with the box. If the optional m_property element is not specified, the calling service must determine which spatial property is the spatial key and apply the BBOX operator accordingly. For feature types that has a single spatial property, this is a trivial matter. For feature types that have multiple spatial properties, the calling service either knows which spatial property is the spatial key, or the calling service generates an exception indicating that the feature contains multiple spatial properties and the m_property element must be specified. Of course, a client application always has the options of avoiding the exceptions by calling the DescribeFeatureType operation to get a description of the feature type.

See also
SpatialOp, PropertyName

Definition at line 71 of file BBOXOp.h.

Member Typedef Documentation

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

Definition at line 58 of file BaseVisitable.h.

typedef Visitor te::common::BaseVisitable< Visitor , void >::VisitorType
inherited

Definition at line 57 of file BaseVisitable.h.

Constructor & Destructor Documentation

te::fe::BBOXOp::BBOXOp ( )

It initializes a new BBOXOp.

te::fe::BBOXOp::BBOXOp ( PropertyName p,
te::gml::Envelope e 
)

It initializes a new BBOXOp.

Parameters
pThe property name.
eThe envelope.
Note
It will take the ownership of the property name and envelope.
te::fe::BBOXOp::~BBOXOp ( )

Destructor.

Member Function Documentation

virtual ReturnType te::common::BaseVisitable< Visitor , 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.
te::gml::Envelope* te::fe::BBOXOp::getEnvelope ( ) const

It returns the envelope.

Returns
The envelope.
const char* te::fe::AbstractOp::getName ( ) const
inlineinherited

It returns the operator name.

Returns
The operator name.

Definition at line 82 of file AbstractOp.h.

PropertyName* te::fe::BBOXOp::getProperty ( ) const

It returns the property name.

Returns
The property name.
void te::fe::BBOXOp::setEnvelope ( te::gml::Envelope e)

It sets the envelope.

Parameters
eThe envelope.
Note
It will take the ownership of the envelope.
void te::fe::AbstractOp::setName ( const char *  opName)
inlineinherited

It sets the operator name.

Parameters
opNameThe operator name.

Definition at line 89 of file AbstractOp.h.

void te::fe::BBOXOp::setProperty ( PropertyName p)

It sets property name.

Parameters
pThe property name.
Note
It will take the ownership of the property name.

Member Data Documentation

te::gml::Envelope* te::fe::BBOXOp::m_envelope
private

Bounding box constraint. (Mandatory)

Definition at line 142 of file BBOXOp.h.

const char* te::fe::AbstractOp::m_name
protectedinherited

Operator name.

Definition at line 120 of file AbstractOp.h.

PropertyName* te::fe::BBOXOp::m_property
private

A geometric property. (theoretically it is optional, but it is required by the XML schema)

Definition at line 141 of file BBOXOp.h.


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