Eclipse SUMO - Simulation of Urban MObility
NIVissimConflictArea Class Reference

A temporary storage for conflict areas imported from Vissim. More...

#include <NIVissimConflictArea.h>

Public Member Functions

std::string getFirstLink ()
 Returns the first link of the conflic area. More...
 
int getID ()
 Returns the ID of the conflic area. More...
 
std::string getSecondLink ()
 Returns the second link of the conflic area. More...
 
std::string getStatus ()
 Returns the priority regulation of the conflic area. More...
 
 NIVissimConflictArea (int id, const std::string &link1, const std::string &link2, const std::string &status)
 Constructor. More...
 
 ~NIVissimConflictArea ()
 Destructor. More...
 

Static Public Member Functions

static void clearDict ()
 Clears the dictionary. More...
 
static NIVissimConflictAreadict_findByLinks (const std::string &link1, const std::string &link2)
 
static NIVissimConflictAreadictionary (int id)
 Returns the named dictionary. More...
 
static bool dictionary (int id, const std::string &link1, const std::string &link2, const std::string &status)
 Adds the described item to the dictionary Builds the conflict area first. More...
 
static bool dictionary (int id, NIVissimConflictArea *ca)
 Adds the conflict area to the dictionary. More...
 
static std::map< int, NIVissimConflictArea * > getConflictAreas ()
 Returns the dictionary including all conflict areas. More...
 
static void setPriorityRegulation (NBEdgeCont &ec)
 Sets the priority regulation according to the VISSIM conflict area data. More...
 

Private Types

typedef std::map< int, NIVissimConflictArea * > DictType
 Definition of the dictionary type. More...
 

Private Attributes

int myConflictID
 The id of the conflict area. More...
 
std::string myFirstLink
 The first link of the conflict area. More...
 
std::string mySecondLink
 The second link of the conflict area. More...
 
std::string myStatus
 The priority regulation of the conflict area. More...
 

Static Private Attributes

static DictType myDict
 The dictionary. More...
 

Detailed Description

A temporary storage for conflict areas imported from Vissim.

Definition at line 46 of file NIVissimConflictArea.h.

Member Typedef Documentation

◆ DictType

typedef std::map<int, NIVissimConflictArea*> NIVissimConflictArea::DictType
private

Definition of the dictionary type.

Definition at line 122 of file NIVissimConflictArea.h.

Constructor & Destructor Documentation

◆ NIVissimConflictArea()

NIVissimConflictArea::NIVissimConflictArea ( int  id,
const std::string &  link1,
const std::string &  link2,
const std::string &  status 
)

Constructor.

Definition at line 43 of file NIVissimConflictArea.cpp.

Referenced by dictionary().

Here is the caller graph for this function:

◆ ~NIVissimConflictArea()

NIVissimConflictArea::~NIVissimConflictArea ( )

Destructor.

Definition at line 51 of file NIVissimConflictArea.cpp.

Member Function Documentation

◆ clearDict()

void NIVissimConflictArea::clearDict ( )
static

Clears the dictionary.

Definition at line 107 of file NIVissimConflictArea.cpp.

References myDict.

Referenced by NIImporter_Vissim::~NIImporter_Vissim().

Here is the caller graph for this function:

◆ dict_findByLinks()

NIVissimConflictArea * NIVissimConflictArea::dict_findByLinks ( const std::string &  link1,
const std::string &  link2 
)
static

Returns the conflict area from the dictionary, which defines the priority rule of the two given links

Definition at line 94 of file NIVissimConflictArea.cpp.

References myDict.

◆ dictionary() [1/3]

NIVissimConflictArea * NIVissimConflictArea::dictionary ( int  id)
static

Returns the named dictionary.

Definition at line 83 of file NIVissimConflictArea.cpp.

References myDict.

◆ dictionary() [2/3]

bool NIVissimConflictArea::dictionary ( int  id,
const std::string &  link1,
const std::string &  link2,
const std::string &  status 
)
static

Adds the described item to the dictionary Builds the conflict area first.

Definition at line 57 of file NIVissimConflictArea.cpp.

References NIVissimConflictArea().

Referenced by NIImporter_Vissim::NIVissimXMLHandler_ConflictArea::myStartElement().

Here is the caller graph for this function:

◆ dictionary() [3/3]

bool NIVissimConflictArea::dictionary ( int  id,
NIVissimConflictArea ca 
)
static

Adds the conflict area to the dictionary.

Definition at line 71 of file NIVissimConflictArea.cpp.

References myDict.

◆ getConflictAreas()

static std::map<int, NIVissimConflictArea*> NIVissimConflictArea::getConflictAreas ( )
inlinestatic

Returns the dictionary including all conflict areas.

Definition at line 78 of file NIVissimConflictArea.h.

References myDict.

◆ getFirstLink()

std::string NIVissimConflictArea::getFirstLink ( )
inline

Returns the first link of the conflic area.

Definition at line 88 of file NIVissimConflictArea.h.

References myFirstLink.

Referenced by setPriorityRegulation().

Here is the caller graph for this function:

◆ getID()

int NIVissimConflictArea::getID ( )
inline

Returns the ID of the conflic area.

Definition at line 83 of file NIVissimConflictArea.h.

References myConflictID.

◆ getSecondLink()

std::string NIVissimConflictArea::getSecondLink ( )
inline

Returns the second link of the conflic area.

Definition at line 93 of file NIVissimConflictArea.h.

References mySecondLink.

Referenced by setPriorityRegulation().

Here is the caller graph for this function:

◆ getStatus()

std::string NIVissimConflictArea::getStatus ( )
inline

Returns the priority regulation of the conflic area.

Definition at line 98 of file NIVissimConflictArea.h.

References myStatus.

Referenced by setPriorityRegulation().

Here is the caller graph for this function:

◆ setPriorityRegulation()

void NIVissimConflictArea::setPriorityRegulation ( NBEdgeCont ec)
static

Sets the priority regulation according to the VISSIM conflict area data.

Definition at line 116 of file NIVissimConflictArea.cpp.

References NBNode::addSortedLinkFoes(), NIVissimConnection::dictionary(), getFirstLink(), NIVissimConnection::getFromEdgeID(), getSecondLink(), getStatus(), NIVissimConnection::getToEdgeID(), NBEdge::getToNode(), myDict, NBEdgeCont::retrievePossiblySplit(), and StringUtils::toInt().

Referenced by NIImporter_Vissim::postLoadBuild().

Here is the caller graph for this function:

Field Documentation

◆ myConflictID

int NIVissimConflictArea::myConflictID
private

The id of the conflict area.

Definition at line 109 of file NIVissimConflictArea.h.

Referenced by getID().

◆ myDict

NIVissimConflictArea::DictType NIVissimConflictArea::myDict
staticprivate

The dictionary.

Definition at line 125 of file NIVissimConflictArea.h.

Referenced by clearDict(), dict_findByLinks(), dictionary(), getConflictAreas(), and setPriorityRegulation().

◆ myFirstLink

std::string NIVissimConflictArea::myFirstLink
private

The first link of the conflict area.

Definition at line 112 of file NIVissimConflictArea.h.

Referenced by getFirstLink().

◆ mySecondLink

std::string NIVissimConflictArea::mySecondLink
private

The second link of the conflict area.

Definition at line 115 of file NIVissimConflictArea.h.

Referenced by getSecondLink().

◆ myStatus

std::string NIVissimConflictArea::myStatus
private

The priority regulation of the conflict area.

Definition at line 118 of file NIVissimConflictArea.h.

Referenced by getStatus().


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