A visitor for retrieves spatial restrictions from a Query hierarchy. More...
#include <SpatialRestrictionVisitor.h>
  
 Public Member Functions | |
| const std::vector < te::da::SpatialRestriction * > &  | getSpatialRestrictions () const | 
| bool | hasSpatialRestrictions () const | 
| SpatialRestrictionVisitor () | |
| Default constructor.  More... | |
| virtual void | visit (const Expression &visited) | 
| virtual void | visit (const DataSetName &visited) | 
| virtual void | visit (const FromItem &visited) | 
| virtual void | visit (const Function &visited) | 
| virtual void | visit (const Join &visited) | 
| virtual void | visit (const JoinCondition &visited) | 
| virtual void | visit (const JoinConditionOn &visited) | 
| virtual void | visit (const JoinConditionUsing &visited) | 
| virtual void | visit (const Literal &visited) | 
| virtual void | visit (const LiteralBool &visited) | 
| virtual void | visit (const LiteralByteArray &visited) | 
| virtual void | visit (const LiteralDateTime &visited) | 
| virtual void | visit (const LiteralDouble &visited) | 
| virtual void | visit (const LiteralEnvelope &visited) | 
| virtual void | visit (const LiteralGeom &visited) | 
| virtual void | visit (const LiteralInt16 &visited) | 
| virtual void | visit (const LiteralInt32 &visited) | 
| virtual void | visit (const LiteralInt64 &visited) | 
| virtual void | visit (const LiteralString &visited) | 
| virtual void | visit (const PropertyName &visited) | 
| virtual void | visit (const Query &visited) | 
| virtual void | visit (const Select &visited) | 
| virtual void | visit (const SubSelect &visited) | 
| virtual void | visit (const In &visited) | 
| virtual | ~SpatialRestrictionVisitor () | 
| Virtual destructor.  More... | |
Protected Member Functions | |
| void | addSpatialRestriction (const Function &f) | 
| te::gm::Geometry * | getGeometryRestriction (const Function &f) const | 
| std::string | getPropertyName (const Function &f) const | 
| te::gm::SpatialRelation | getSpatialRelation (const Function &f) const | 
| virtual void | initialize () | 
| bool | isFromEnvelope (const Function &f) const | 
| bool | isSpatialRestrictionFunction (const Function &f) const | 
Protected Attributes | |
| std::size_t | m_index | 
| An internal visitor index.  More... | |
| std::map< std::string,  te::gm::SpatialRelation >  | m_spatialFunctions | 
| A map of spatial restriction functions.  More... | |
| std::vector < te::da::SpatialRestriction * >  | m_spatialRestrictions | 
| The set of spatial restrictions.  More... | |
A visitor for retrieves spatial restrictions from a Query hierarchy.
Definition at line 77 of file SpatialRestrictionVisitor.h.
| te::da::SpatialRestrictionVisitor::SpatialRestrictionVisitor | ( | ) | 
Default constructor.
Definition at line 61 of file SpatialRestrictionVisitor.cpp.
References initialize().
      
  | 
  virtual | 
Virtual destructor.
Definition at line 67 of file SpatialRestrictionVisitor.cpp.
References te::common::FreeContents().
      
  | 
  protected | 
Definition at line 220 of file SpatialRestrictionVisitor.cpp.
References te::da::SpatialRestriction::m_function, te::da::SpatialRestriction::m_geometry, te::da::SpatialRestriction::m_index, te::da::SpatialRestriction::m_isFromEnvelope, te::da::SpatialRestriction::m_pname, te::da::SpatialRestriction::m_type, and TE_TR.
      
  | 
  protected | 
Definition at line 156 of file SpatialRestrictionVisitor.cpp.
References te::dt::AbstractData::clone(), te::da::Function::getArg(), te::gm::GetGeomFromEnvelope(), te::da::Function::getNumArgs(), te::da::LiteralEnvelope::getSRID(), te::da::Literal::getValue(), and te::da::LiteralEnvelope::getValue().
      
  | 
  protected | 
Definition at line 201 of file SpatialRestrictionVisitor.cpp.
References te::da::Function::getArg(), te::da::PropertyName::getName(), and te::da::Function::getNumArgs().
      
  | 
  protected | 
Definition at line 130 of file SpatialRestrictionVisitor.cpp.
References te::da::Function::getName().
| const std::vector< te::da::SpatialRestriction * > & te::da::SpatialRestrictionVisitor::getSpatialRestrictions | ( | ) | const | 
Definition at line 105 of file SpatialRestrictionVisitor.cpp.
Referenced by te::da::SpatialQueryProcessor::getDataSet().
| bool te::da::SpatialRestrictionVisitor::hasSpatialRestrictions | ( | ) | const | 
Definition at line 100 of file SpatialRestrictionVisitor.cpp.
Referenced by te::da::SpatialQueryProcessor::getDataSet().
      
  | 
  protectedvirtual | 
Definition at line 110 of file SpatialRestrictionVisitor.cpp.
References te::gm::CONTAINS, te::gm::CROSSES, te::gm::DISJOINT, te::gm::EQUALS, te::gm::INTERSECTS, te::gm::OVERLAPS, te::da::FunctionNames::sm_ST_Contains, te::da::FunctionNames::sm_ST_Crosses, te::da::FunctionNames::sm_ST_Disjoint, te::da::FunctionNames::sm_ST_Equals, te::da::FunctionNames::sm_ST_Intersects, te::da::FunctionNames::sm_ST_Overlaps, te::da::FunctionNames::sm_ST_Touches, te::da::FunctionNames::sm_ST_Within, te::gm::TOUCHES, and te::gm::WITHIN.
Referenced by SpatialRestrictionVisitor().
      
  | 
  protected | 
Definition at line 137 of file SpatialRestrictionVisitor.cpp.
References te::da::Function::getArg(), and te::da::Function::getNumArgs().
      
  | 
  protected | 
Definition at line 125 of file SpatialRestrictionVisitor.cpp.
References te::da::Function::getName().
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 87 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 88 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 89 of file SpatialRestrictionVisitor.h.
      
  | 
  virtual | 
Implements te::da::QueryVisitor.
Definition at line 72 of file SpatialRestrictionVisitor.cpp.
References te::common::BaseVisitable< T, R >::accept(), and te::da::Function::getNumArgs().
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 91 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 92 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 93 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 94 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 95 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 96 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 97 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 98 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 99 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 100 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 101 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 102 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 103 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 104 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 105 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 106 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 107 of file SpatialRestrictionVisitor.h.
      
  | 
  virtual | 
Implements te::da::QueryVisitor.
Definition at line 88 of file SpatialRestrictionVisitor.cpp.
References te::common::BaseVisitable< T, R >::accept(), te::da::Where::getExp(), and te::da::Select::getWhere().
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 109 of file SpatialRestrictionVisitor.h.
      
  | 
  inlinevirtual | 
Implements te::da::QueryVisitor.
Definition at line 110 of file SpatialRestrictionVisitor.h.
      
  | 
  protected | 
An internal visitor index.
Definition at line 135 of file SpatialRestrictionVisitor.h.
      
  | 
  protected | 
A map of spatial restriction functions.
Definition at line 134 of file SpatialRestrictionVisitor.h.
      
  | 
  protected | 
The set of spatial restrictions.
Definition at line 136 of file SpatialRestrictionVisitor.h.