te::srs::WKTParser< Iterator > Class Template Reference

A class that implements the Grammar Rules for well known text (WKT) format of Spatial Reference Systems. More...

#include <WKTParser.h>

Inheritance diagram for te::srs::WKTParser< Iterator >:

Public Member Functions

void reset ()
 This method resets the Parser to original state. More...
 
Constructor

Initilizer methods.

 WKTParser ()
 Default constructor. More...
 
Access method.

Method to access the SRS generated.

SpatialReferenceSystemgetSRS ()
 It returns the SRS generated by the parser process. More...
 

Private Member Functions

Initializer methods.

Methods to initialize the grammar rules.

void initTags ()
 
void initSpatialReferenceSystems ()
 
void initDatum ()
 
void initToWGS84 ()
 
void initProjection ()
 
void initParameter ()
 
void initSpheroid ()
 
void initPrimeMeridian ()
 
void initUnits ()
 
void initQuotedNames ()
 
void initDoubleValues ()
 
void initAuthority ()
 
void initAxis ()
 
void initDelimiters ()
 

Private Attributes

WKTActions m_a
 
Rules of WKT Grammar.
qi::rule< Iterator, ascii::space_type > srs
 
qi::rule< Iterator, ascii::space_type > projectedCS
 
qi::rule< Iterator, ascii::space_type > geographicCS
 
qi::rule< Iterator, ascii::space_type > projectedCSTag
 
qi::rule< Iterator, ascii::space_type > geographicCSTag
 
qi::rule< Iterator, ascii::space_type > datumTag
 
qi::rule< Iterator, ascii::space_type > spheroidTag
 
qi::rule< Iterator, ascii::space_type > projectionTag
 
qi::rule< Iterator, ascii::space_type > parameterTag
 
qi::rule< Iterator, ascii::space_type > primeMeridianTag
 
qi::rule< Iterator, ascii::space_type > unitTag
 
qi::rule< Iterator, ascii::space_type > toWGS84Tag
 
qi::rule< Iterator, ascii::space_type > authorityTag
 
qi::rule< Iterator, ascii::space_type > axisTag
 
qi::rule< Iterator, ascii::space_type > northTag
 
qi::rule< Iterator, ascii::space_type > southTag
 
qi::rule< Iterator, ascii::space_type > eastTag
 
qi::rule< Iterator, ascii::space_type > westTag
 
qi::rule< Iterator, ascii::space_type > upTag
 
qi::rule< Iterator, ascii::space_type > downTag
 
qi::rule< Iterator, ascii::space_type > otherTag
 
qi::rule< Iterator, ascii::space_type > datum
 
qi::rule< Iterator, ascii::space_type > toWGS84
 
qi::rule< Iterator, ascii::space_type > sevenParams
 
qi::rule< Iterator, ascii::space_type > dx
 
qi::rule< Iterator, ascii::space_type > dy
 
qi::rule< Iterator, ascii::space_type > dz
 
qi::rule< Iterator, ascii::space_type > ex
 
qi::rule< Iterator, ascii::space_type > ey
 
qi::rule< Iterator, ascii::space_type > ez
 
qi::rule< Iterator, ascii::space_type > ppm
 
qi::rule< Iterator, ascii::space_type > projection
 
qi::rule< Iterator, ascii::space_type > parameter
 
qi::rule< Iterator, ascii::space_type > spheroid
 
qi::rule< Iterator, ascii::space_type > primeMeridian
 
qi::rule< Iterator, ascii::space_type > unit
 
qi::rule< Iterator, ascii::space_type > axis
 
qi::rule< Iterator, ascii::space_type > axisValue
 
qi::rule< Iterator, ascii::space_type > value
 
qi::rule< Iterator, ascii::space_type > semiMajorAxis
 
qi::rule< Iterator, ascii::space_type > longitude
 
qi::rule< Iterator, ascii::space_type > invFlattening
 
qi::rule< Iterator, ascii::space_type > conversionFactor
 
qi::rule< Iterator > unitName
 
qi::rule< Iterator > spheroidName
 
qi::rule< Iterator > projectionName
 
qi::rule< Iterator > primeMeridianName
 
qi::rule< Iterator > parameterName
 
qi::rule< Iterator > datumName
 
qi::rule< Iterator > csName
 
qi::rule< Iterator > axisName
 
qi::rule< Iterator, ascii::space_type > authority
 
qi::rule< Iterator, ascii::space_type > authorityCode
 
qi::rule< Iterator > authorityName
 
qi::rule< Iterator, ascii::space_type > leftDelimiter
 
qi::rule< Iterator, ascii::space_type > rigthDelimiter
 

Detailed Description

template<typename Iterator>
class te::srs::WKTParser< Iterator >

A class that implements the Grammar Rules for well known text (WKT) format of Spatial Reference Systems.

Definition at line 64 of file WKTParser.h.

Constructor & Destructor Documentation

◆ WKTParser()

Member Function Documentation

◆ getSRS()

template<typename Iterator >
SpatialReferenceSystem* te::srs::WKTParser< Iterator >::getSRS ( )
inline

It returns the SRS generated by the parser process.

Note
The caller of this method will take the ownership of the SRS.

Definition at line 332 of file WKTParser.h.

References te::srs::WKTActions::getSRS(), and te::srs::WKTParser< Iterator >::m_a.

◆ initAuthority()

◆ initAxis()

◆ initDatum()

◆ initDelimiters()

template<typename Iterator >
void te::srs::WKTParser< Iterator >::initDelimiters ( )
inlineprivate

◆ initDoubleValues()

◆ initParameter()

◆ initPrimeMeridian()

◆ initProjection()

◆ initQuotedNames()

◆ initSpatialReferenceSystems()

◆ initSpheroid()

◆ initTags()

◆ initToWGS84()

◆ initUnits()

◆ reset()

template<typename Iterator >
void te::srs::WKTParser< Iterator >::reset ( )
inline

This method resets the Parser to original state.

Note
Should be called case the parser processing faill.
Basically, it is responsable to free the memory.

Definition at line 342 of file WKTParser.h.

References te::srs::WKTParser< Iterator >::m_a, and te::srs::WKTActions::reset().

Member Data Documentation

◆ authority

◆ authorityCode

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::authorityCode
private

Definition at line 384 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initAuthority().

◆ authorityName

template<typename Iterator >
qi::rule<Iterator> te::srs::WKTParser< Iterator >::authorityName
private

Definition at line 386 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initAuthority().

◆ authorityTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::authorityTag
private

◆ axis

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::axis
private

◆ axisName

template<typename Iterator >
qi::rule<Iterator> te::srs::WKTParser< Iterator >::axisName
private

◆ axisTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::axisTag
private

◆ axisValue

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::axisValue
private

◆ conversionFactor

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::conversionFactor
private

◆ csName

template<typename Iterator >
qi::rule<Iterator> te::srs::WKTParser< Iterator >::csName
private

◆ datum

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::datum
private

◆ datumName

template<typename Iterator >
qi::rule<Iterator> te::srs::WKTParser< Iterator >::datumName
private

◆ datumTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::datumTag
private

◆ downTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::downTag
private

◆ dx

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::dx
private

Definition at line 364 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initToWGS84().

◆ dy

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::dy
private

Definition at line 364 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initToWGS84().

◆ dz

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::dz
private

Definition at line 364 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initToWGS84().

◆ eastTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::eastTag
private

◆ ex

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::ex
private

Definition at line 364 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initToWGS84().

◆ ey

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::ey
private

Definition at line 364 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initToWGS84().

◆ ez

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::ez
private

Definition at line 364 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initToWGS84().

◆ geographicCS

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::geographicCS
private

◆ geographicCSTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::geographicCSTag
private

◆ invFlattening

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::invFlattening
private

◆ leftDelimiter

◆ longitude

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::longitude
private

◆ m_a

◆ northTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::northTag
private

◆ otherTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::otherTag
private

◆ parameter

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::parameter
private

◆ parameterName

template<typename Iterator >
qi::rule<Iterator> te::srs::WKTParser< Iterator >::parameterName
private

◆ parameterTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::parameterTag
private

◆ ppm

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::ppm
private

Definition at line 364 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initToWGS84().

◆ primeMeridian

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::primeMeridian
private

◆ primeMeridianName

template<typename Iterator >
qi::rule<Iterator> te::srs::WKTParser< Iterator >::primeMeridianName
private

◆ primeMeridianTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::primeMeridianTag
private

◆ projectedCS

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::projectedCS
private

◆ projectedCSTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::projectedCSTag
private

◆ projection

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::projection
private

◆ projectionName

template<typename Iterator >
qi::rule<Iterator> te::srs::WKTParser< Iterator >::projectionName
private

◆ projectionTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::projectionTag
private

◆ rigthDelimiter

◆ semiMajorAxis

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::semiMajorAxis
private

◆ sevenParams

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::sevenParams
private

Definition at line 362 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::initToWGS84().

◆ southTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::southTag
private

◆ spheroid

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::spheroid
private

◆ spheroidName

template<typename Iterator >
qi::rule<Iterator> te::srs::WKTParser< Iterator >::spheroidName
private

◆ spheroidTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::spheroidTag
private

◆ srs

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::srs
private

Definition at line 352 of file WKTParser.h.

Referenced by te::srs::WKTParser< Iterator >::WKTParser().

◆ toWGS84

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::toWGS84
private

◆ toWGS84Tag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::toWGS84Tag
private

◆ unit

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::unit
private

◆ unitName

template<typename Iterator >
qi::rule<Iterator> te::srs::WKTParser< Iterator >::unitName
private

◆ unitTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::unitTag
private

◆ upTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::upTag
private

◆ value

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::value
private

◆ westTag

template<typename Iterator >
qi::rule<Iterator, ascii::space_type> te::srs::WKTParser< Iterator >::westTag
private

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