 |
Eclipse SUMO - Simulation of Urban MObility
|
SUMOVehicleClass
Definition of vehicle classes to differ between different lane usage and authority types.
Base class for objects which have an id.
void addOutgoingLane(ROLane *lane, ROEdge *via=nullptr)
double getLength() const
Returns the length of the lane.
std::vector< std::pair< const ROLane *, const ROEdge * > > myOutgoingLanes
A single lane the router may use.
LinkState getIncomingLinkState() const
get the state of the link from the logical predecessor to this lane (ignored for routing)
@ LINKSTATE_MAJOR
This is an uncontrolled, major link, may pass.
bool allowsVehicleClass(SUMOVehicleClass vclass) const
const PositionVector & getShape() const
LinkState
The right-of-way state of a link between two lanes used when constructing a NBTrafficLightLogic,...
double myLength
The length of the lane.
int SVCPermissions
bitset where each bit declares whether a certain SVC may use this edge/lane
double getSpeed() const
Returns the maximum speed allowed on this lane.
ROLane(const std::string &id, ROEdge *edge, double length, double maxSpeed, SVCPermissions permissions, const PositionVector &shape)
Constructor.
ROLane(const ROLane &src)
Invalidated copy constructor.
SVCPermissions myPermissions
The encoding of allowed vehicle classes.
ROEdge & getEdge() const
Returns the lane's edge.
const PositionVector myShape
shape for this lane
ROEdge * myEdge
The parent edge of this lane.
double myMaxSpeed
The maximum speed allowed on the lane.
const std::vector< std::pair< const ROLane *, const ROEdge * > > & getOutgoingViaLanes() const
get the map of outgoing lanes to via edges
ROLane & operator=(const ROLane &src)
Invalidated assignment operator.
A basic edge for routing applications.
SVCPermissions getPermissions() const
Returns the list of allowed vehicle classes.