Eclipse SUMO - Simulation of Urban MObility
NIImporter_DlrNavteq::EdgesHandler Class Reference

Importer of edges stored in unsplit elmar format. More...

#include <NIImporter_DlrNavteq.h>

Inheritance diagram for NIImporter_DlrNavteq::EdgesHandler:
[legend]
Collaboration diagram for NIImporter_DlrNavteq::EdgesHandler:
[legend]

Public Member Functions

 EdgesHandler (NBNodeCont &nc, NBEdgeCont &ec, NBTypeCont &tc, const std::string &file, std::map< std::string, PositionVector > &geoms, std::map< std::string, std::string > &streetNames)
 Constructor. More...
 
bool report (const std::string &result)
 Parsing method. More...
 
 ~EdgesHandler ()
 Destructor. More...
 

Protected Types

enum  ColumnName {
  LINK_ID = 0 , NODE_ID_FROM , NODE_ID_TO , BETWEEN_NODE_ID ,
  LENGTH , VEHICLE_TYPE , FORM_OF_WAY , BRUNNEL_TYPE ,
  FUNCTIONAL_ROAD_CLASS , SPEED_CATEGORY , NUMBER_OF_LANES , SPEED_LIMIT ,
  SPEED_RESTRICTION , NAME_ID1_REGIONAL , NAME_ID2_LOCAL , HOUSENUMBERS_RIGHT ,
  HOUSENUMBERS_LEFT , ZIP_CODE , AREA_ID , SUBAREA_ID ,
  THROUGH_TRAFFIC , SPECIAL_RESTRICTIONS , EXTENDED_NUMBER_OF_LANES , ISRAMP ,
  CONNECTION
}
 

Protected Member Functions

std::string getColumn (const StringTokenizer &st, ColumnName name, const std::string fallback="")
 

Protected Attributes

std::vector< int > myColumns
 the version number of the edge file being parsed More...
 
NBEdgeContmyEdgeCont
 The edge container to store loaded edges into. More...
 
const std::string myFile
 the file being parsed More...
 
std::map< std::string, PositionVector > & myGeoms
 Previously read edge geometries (manipulated during use) More...
 
NBNodeContmyNodeCont
 The node container to get the referenced nodes from. More...
 
std::map< std::string, std::string > & myStreetNames
 Previously read streat names (non-const because operate[] is more convenient) More...
 
bool myTryIgnoreNodePositions
 Whether node positions shall not be added to the edge's geometry. More...
 
NBTypeContmyTypeCont
 The type container to retrieve type info from. More...
 
double myVersion
 version number of current file More...
 

Static Protected Attributes

static const int MISSING_COLUMN = std::numeric_limits<int>::max()
 

Private Member Functions

 EdgesHandler (const EdgesHandler &)
 Invalidated copy constructor. More...
 
std::string getStreetNameFromIDs (const std::string &regionalID, const std::string &localID) const
 build the street name for the given ids More...
 
EdgesHandleroperator= (const EdgesHandler &)
 Invalidated assignment operator. More...
 

Detailed Description

Importer of edges stored in unsplit elmar format.

Being a LineHandler, this class retrieves each line from a LineReader and parses these information assuming they contain edge definitions in DLRNavteq's unsplit format.

Definition at line 140 of file NIImporter_DlrNavteq.h.

Member Enumeration Documentation

◆ ColumnName

Enumerator
LINK_ID 
NODE_ID_FROM 
NODE_ID_TO 
BETWEEN_NODE_ID 
LENGTH 
VEHICLE_TYPE 
FORM_OF_WAY 
BRUNNEL_TYPE 
FUNCTIONAL_ROAD_CLASS 
SPEED_CATEGORY 
NUMBER_OF_LANES 
SPEED_LIMIT 
SPEED_RESTRICTION 
NAME_ID1_REGIONAL 
NAME_ID2_LOCAL 
HOUSENUMBERS_RIGHT 
HOUSENUMBERS_LEFT 
ZIP_CODE 
AREA_ID 
SUBAREA_ID 
THROUGH_TRAFFIC 
SPECIAL_RESTRICTIONS 
EXTENDED_NUMBER_OF_LANES 
ISRAMP 
CONNECTION 

Definition at line 203 of file NIImporter_DlrNavteq.h.

Constructor & Destructor Documentation

◆ EdgesHandler() [1/2]

NIImporter_DlrNavteq::EdgesHandler::EdgesHandler ( NBNodeCont nc,
NBEdgeCont ec,
NBTypeCont tc,
const std::string &  file,
std::map< std::string, PositionVector > &  geoms,
std::map< std::string, std::string > &  streetNames 
)

Constructor.

Parameters
[in]ncThe node control to retrieve nodes from
[in,filled]ec The edge control to insert loaded edges into
[in]tcThe type control to retrieve types from
[in]fileThe name of the parsed file
[in]geomsThe previously read edge geometries
[in]streetNamesThe previously read street names

Definition at line 255 of file NIImporter_DlrNavteq.cpp.

◆ ~EdgesHandler()

NIImporter_DlrNavteq::EdgesHandler::~EdgesHandler ( )

Destructor.

Definition at line 269 of file NIImporter_DlrNavteq.cpp.

◆ EdgesHandler() [2/2]

NIImporter_DlrNavteq::EdgesHandler::EdgesHandler ( const EdgesHandler )
private

Invalidated copy constructor.

Member Function Documentation

◆ getColumn()

std::string NIImporter_DlrNavteq::EdgesHandler::getColumn ( const StringTokenizer st,
ColumnName  name,
const std::string  fallback = "" 
)
protected

◆ getStreetNameFromIDs()

std::string NIImporter_DlrNavteq::EdgesHandler::getStreetNameFromIDs ( const std::string &  regionalID,
const std::string &  localID 
) const
private

build the street name for the given ids

Definition at line 454 of file NIImporter_DlrNavteq.cpp.

◆ operator=()

EdgesHandler& NIImporter_DlrNavteq::EdgesHandler::operator= ( const EdgesHandler )
private

Invalidated assignment operator.

◆ report()

bool NIImporter_DlrNavteq::EdgesHandler::report ( const std::string &  result)
virtual

Field Documentation

◆ MISSING_COLUMN

const int NIImporter_DlrNavteq::EdgesHandler::MISSING_COLUMN = std::numeric_limits<int>::max()
staticprotected

Definition at line 201 of file NIImporter_DlrNavteq.h.

◆ myColumns

std::vector<int> NIImporter_DlrNavteq::EdgesHandler::myColumns
protected

the version number of the edge file being parsed

Definition at line 196 of file NIImporter_DlrNavteq.h.

◆ myEdgeCont

NBEdgeCont& NIImporter_DlrNavteq::EdgesHandler::myEdgeCont
protected

The edge container to store loaded edges into.

Definition at line 178 of file NIImporter_DlrNavteq.h.

◆ myFile

const std::string NIImporter_DlrNavteq::EdgesHandler::myFile
protected

the file being parsed

Definition at line 199 of file NIImporter_DlrNavteq.h.

◆ myGeoms

std::map<std::string, PositionVector>& NIImporter_DlrNavteq::EdgesHandler::myGeoms
protected

Previously read edge geometries (manipulated during use)

Definition at line 184 of file NIImporter_DlrNavteq.h.

◆ myNodeCont

NBNodeCont& NIImporter_DlrNavteq::EdgesHandler::myNodeCont
protected

The node container to get the referenced nodes from.

Definition at line 175 of file NIImporter_DlrNavteq.h.

◆ myStreetNames

std::map<std::string, std::string>& NIImporter_DlrNavteq::EdgesHandler::myStreetNames
protected

Previously read streat names (non-const because operate[] is more convenient)

Definition at line 187 of file NIImporter_DlrNavteq.h.

◆ myTryIgnoreNodePositions

bool NIImporter_DlrNavteq::EdgesHandler::myTryIgnoreNodePositions
protected

Whether node positions shall not be added to the edge's geometry.

Definition at line 190 of file NIImporter_DlrNavteq.h.

◆ myTypeCont

NBTypeCont& NIImporter_DlrNavteq::EdgesHandler::myTypeCont
protected

The type container to retrieve type info from.

Definition at line 181 of file NIImporter_DlrNavteq.h.

◆ myVersion

double NIImporter_DlrNavteq::EdgesHandler::myVersion
protected

version number of current file

Definition at line 193 of file NIImporter_DlrNavteq.h.


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