 |
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)
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.
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.