21 #ifndef NLEdgeControlBuilder_h 22 #define NLEdgeControlBuilder_h 87 const std::string& streetName,
const std::string& edgeType,
int priority);
103 virtual MSLane*
addLane(
const std::string&
id,
double maxSpeed,
105 double width,
SVCPermissions permissions,
int index,
bool isRampAccel);
113 virtual void addNeigh(
const std::string
id);
134 const std::string& streetName,
const std::string& edgeType,
const int priority);
virtual MSEdge * closeEdge()
Closes the building of an edge; The edge is completely described by now and may not be opened again...
int SVCPermissions
bitset where each bit declares whether a certain SVC may use this edge/lane
MSEdgeVector myEdges
Temporary, internal storage for built edges.
virtual MSEdge * buildEdge(const std::string &id, const SumoXMLEdgeFunc function, const std::string &streetName, const std::string &edgeType, const int priority)
Builds an edge instance (MSEdge in this case)
MSEdge * myActiveEdge
pointer to the currently chosen edge
The simulated network and simulation perfomer.
A road/street connecting two junctions.
NLEdgeControlBuilder & operator=(const NLEdgeControlBuilder &s)
invalidated assignment operator
MSEdgeControl * build()
builds the MSEdgeControl-class which holds all edges
std::vector< MSLane * > * myLaneStorage
pointer to a temporary lane storage
NLEdgeControlBuilder()
Constructor.
Stores edges and lanes, performs moving of vehicle.
virtual ~NLEdgeControlBuilder()
Destructor.
int myCurrentNumericalEdgeID
A running number for edge numbering.
virtual void addNeigh(const std::string id)
Adds a neighbor to the current lane.
virtual MSLane * addLane(const std::string &id, double maxSpeed, double length, const PositionVector &shape, double width, SVCPermissions permissions, int index, bool isRampAccel)
Adds a lane to the current edge.
SumoXMLEdgeFunc
Numbers representing special SUMO-XML-attribute values for representing edge functions used in netbui...
void beginEdgeParsing(const std::string &id, const SumoXMLEdgeFunc function, const std::string &streetName, const std::string &edgeType, int priority)
Begins building of an MSEdge.
int myCurrentNumericalLaneID
A running number for lane numbering.
Static storage of an output device and its base (abstract) implementation.
virtual void addCrossingEdges(const std::vector< std::string > &)
add the crossingEdges in a crossing edge if present
std::vector< MSEdge * > MSEdgeVector
Representation of a lane in the micro simulation.
Interface for building edges.