SUMO - Simulation of Urban MObility
|
Temporary storage for a lanes succeeding lanes while parsing them. More...
#include <NLSucceedingLaneBuilder.h>
Public Member Functions | |
void | addSuccLane (const std::string &laneId, LinkDirection dir, LinkState state, const std::string &tlid="", unsigned int linkNo=0) throw (InvalidArgument) |
Adds a succeeding lane. | |
void | closeSuccLane () throw (InvalidArgument) |
Ends the computation of a container holding the succeeding lanes of a lane. | |
const std::string & | getCurrentLaneName () const |
Returns the name of the lane the succeeding lanes are added to. | |
NLSucceedingLaneBuilder (NLJunctionControlBuilder &jb) | |
Constructor. | |
void | openSuccLane (const std::string &laneId) |
Begins the computation of a container holding the succeeding lanes of a lane. | |
~NLSucceedingLaneBuilder () | |
Destructor. |
Private Member Functions | |
NLSucceedingLaneBuilder (const NLSucceedingLaneBuilder &s) | |
invalid copy constructor | |
NLSucceedingLaneBuilder & | operator= (const NLSucceedingLaneBuilder &s) |
invalid assignment operator |
Private Attributes | |
std::string | myCurrentLane |
ID of the lane the succeeding lanes are added to. | |
NLJunctionControlBuilder & | myJunctionControlBuilder |
The junction control builder to obtain referenced tls from. | |
MSLinkCont * | mySuccLanes |
The list of connections. |
Temporary storage for a lanes succeeding lanes while parsing them.
Definition at line 54 of file NLSucceedingLaneBuilder.h.
NLSucceedingLaneBuilder::NLSucceedingLaneBuilder | ( | NLJunctionControlBuilder & | jb | ) |
Constructor.
[in] | jb | The junction control builder to obtain referenced tls from |
Definition at line 58 of file NLSucceedingLaneBuilder.cpp.
References mySuccLanes.
NLSucceedingLaneBuilder::~NLSucceedingLaneBuilder | ( | ) |
|
private |
invalid copy constructor
void NLSucceedingLaneBuilder::addSuccLane | ( | const std::string & | laneId, |
LinkDirection | dir, | ||
LinkState | state, | ||
const std::string & | tlid = "" , |
||
unsigned int | linkNo = 0 |
||
) | throw (InvalidArgument) |
Adds a succeeding lane.
If either the current, or the succeeding lane is not known, an InvalidArgument is thrown (with the proper message). Also if a tls-logic is referenced, but not known to the junction control builder, an InvalidArgument is thrown.
[in] | laneId | ID of the lane to add a connection to (from the last opened lane) |
[in] | viaID | The junction-internal lane to use to reach the destination lane |
[in] | pass | Theoretically: the maximum filling rate at the internal link; unused currently |
[in] | dir | The abstract direction of the link |
[in] | state | The abstract state of the link |
[in] | tlid | (optional) ID of the tls that controls the link |
[in] | linkNo | (optional) index of the link within the controlling tls |
InvalidArgument | If one of the referenced structures was not found or is invalid |
Definition at line 77 of file NLSucceedingLaneBuilder.cpp.
References MSLane::addApproachingLane(), MSLane::addIncomingLane(), MSTLLogicControl::TLSLogicVariants::addLink(), MSLane::dictionary(), MSLane::getLength(), MSLane::getShape(), MSGlobals::gUsingInternalLanes, LINKDIR_NODIR, LINKSTATE_DEADEND, and SUMOReal.
Referenced by NLHandler::addSuccLane().
void NLSucceedingLaneBuilder::closeSuccLane | ( | ) | throw (InvalidArgument) |
Ends the computation of a container holding the succeeding lanes of a lane.
The current lane is determined and the parsed connections are added to it. If the lane is not known, an InvalidArgument is thrown.
InvalidArgument | If the current lane is not known |
Definition at line 170 of file NLSucceedingLaneBuilder.cpp.
References MSLane::dictionary(), MSLane::initialize(), myCurrentLane, and mySuccLanes.
Referenced by NLHandler::closeSuccLane().
const std::string & NLSucceedingLaneBuilder::getCurrentLaneName | ( | ) | const |
Returns the name of the lane the succeeding lanes are added to.
Definition at line 184 of file NLSucceedingLaneBuilder.cpp.
References myCurrentLane.
void NLSucceedingLaneBuilder::openSuccLane | ( | const std::string & | laneId | ) |
Begins the computation of a container holding the succeeding lanes of a lane.
[in] | laneId | The id of the lane from which connections will be built |
Definition at line 71 of file NLSucceedingLaneBuilder.cpp.
References myCurrentLane.
Referenced by NLHandler::openSucc().
|
private |
invalid assignment operator
|
private |
ID of the lane the succeeding lanes are added to.
Definition at line 121 of file NLSucceedingLaneBuilder.h.
Referenced by closeSuccLane(), getCurrentLaneName(), and openSuccLane().
|
private |
The junction control builder to obtain referenced tls from.
Definition at line 128 of file NLSucceedingLaneBuilder.h.
|
private |
The list of connections.
Definition at line 125 of file NLSucceedingLaneBuilder.h.
Referenced by closeSuccLane(), NLSucceedingLaneBuilder(), and ~NLSucceedingLaneBuilder().