![]() |
Eclipse SUMO - Simulation of Urban MObility
|
An special type of Attribute carrier that owns hierarchical elements. More...
#include <GNEPathElements.h>
Data Structures | |
class | PathElement |
path element More... | |
Public Member Functions | |
void | drawJunctionPathChildren (const GUIVisualizationSettings &s, const GNEJunction *junction, const double offset) const |
draw junction path child More... | |
void | drawLanePathChildren (const GUIVisualizationSettings &s, const GNELane *lane, const double offset) const |
draw lane path child More... | |
const std::vector< GNEPathElements::PathElement > & | getPath () const |
get path edges More... | |
GNEPathElements (GNEAdditional *additionalElement) | |
Constructor for additional elements. More... | |
GNEPathElements (GNEDemandElement *demandElement) | |
Constructor for demand elements. More... | |
GNEPathElements (GNEGenericData *genericData) | |
Constructor for generic datas. More... | |
~GNEPathElements () | |
Destructor. More... | |
Protected Member Functions | |
void | calculateConsecutivePathLanes (const std::vector< GNELane * > &lanes) |
calculate consecutive path lanes (used by E2Detectors) More... | |
void | calculateConsecutivePathLanes (SUMOVehicleClass vClass, const bool allowedVClass, const std::vector< GNEEdge * > &edges) |
calculate consecutive path lanes (used by routes) More... | |
void | calculateGenericDataLanePath (const std::vector< GNEEdge * > &edges) |
calculate consecutive path lanes (used by genericdatas) More... | |
void | calculatePathLanes (SUMOVehicleClass vClass, const bool allowedVClass, GNELane *fromLane, GNELane *toLane, const std::vector< GNEEdge * > &viaEdges) |
calculate path lanes (Dijkstra) More... | |
void | resetPathLanes (SUMOVehicleClass vClass, const bool allowedVClass, GNELane *fromLane, GNELane *toLane, const std::vector< GNEEdge * > &viaEdges) |
reset path lanes More... | |
Private Member Functions | |
void | addElements () |
add elements More... | |
const std::vector< GNEEdge * > | calculateFromViaToEdges (GNELane *fromLane, GNELane *toLane, const std::vector< GNEEdge * > &viaEdges) |
calculate from-via-to edges More... | |
GNEPathElements () | |
default constructor More... | |
GNEPathElements (const GNEPathElements &)=delete | |
Invalidated copy constructor. More... | |
GNEPathElements & | operator= (const GNEPathElements &)=delete |
Invalidated assignment operator. More... | |
void | removeElements () |
remove elements More... | |
void | updatePathElements () |
update path element More... | |
Private Attributes | |
GNEAdditional * | myAdditionalElement |
pointer to additional element More... | |
GNEDemandElement * | myDemandElement |
pointer to demand element More... | |
GNEGenericData * | myGenericData |
pointer to generic data More... | |
std::vector< PathElement > | myPathElements |
vector of edges used in paths More... | |
An special type of Attribute carrier that owns hierarchical elements.
Definition at line 44 of file GNEPathElements.h.
GNEPathElements::GNEPathElements | ( | GNEAdditional * | additionalElement | ) |
Constructor for additional elements.
Definition at line 78 of file GNEPathElements.cpp.
GNEPathElements::GNEPathElements | ( | GNEDemandElement * | demandElement | ) |
Constructor for demand elements.
Definition at line 85 of file GNEPathElements.cpp.
GNEPathElements::GNEPathElements | ( | GNEGenericData * | genericData | ) |
Constructor for generic datas.
Definition at line 92 of file GNEPathElements.cpp.
GNEPathElements::~GNEPathElements | ( | ) |
Destructor.
Definition at line 99 of file GNEPathElements.cpp.
|
private |
default constructor
Definition at line 395 of file GNEPathElements.cpp.
|
privatedelete |
Invalidated copy constructor.
|
private |
add elements
Definition at line 300 of file GNEPathElements.cpp.
References myAdditionalElement, myDemandElement, myGenericData, and myPathElements.
Referenced by calculateConsecutivePathLanes(), calculateGenericDataLanePath(), calculatePathLanes(), and resetPathLanes().
|
protected |
calculate consecutive path lanes (used by E2Detectors)
Definition at line 227 of file GNEPathElements.cpp.
References addElements(), myPathElements, removeElements(), and updatePathElements().
|
protected |
calculate consecutive path lanes (used by routes)
Definition at line 206 of file GNEPathElements.cpp.
References addElements(), myPathElements, removeElements(), and updatePathElements().
Referenced by GNERoute::computePath(), GNEWalk::computePath(), GNERoute::invalidatePath(), GNEWalk::invalidatePath(), and GNEDetectorE2::updateGeometry().
|
private |
calculate from-via-to edges
Definition at line 379 of file GNEPathElements.cpp.
References GNELane::getParentEdge().
Referenced by calculatePathLanes(), and resetPathLanes().
|
protected |
calculate consecutive path lanes (used by genericdatas)
Definition at line 278 of file GNEPathElements.cpp.
References addElements(), myGenericData, myPathElements, removeElements(), and updatePathElements().
Referenced by GNEEdgeData::updateGeometry(), and GNEEdgeRelData::updateGeometry().
|
protected |
calculate path lanes (Dijkstra)
Definition at line 170 of file GNEPathElements.cpp.
References addElements(), calculateFromViaToEdges(), GNENetHelper::PathCalculator::calculatePath(), GNEAttributeCarrier::getNet(), GNENet::getPathCalculator(), myDemandElement, myPathElements, removeElements(), and updatePathElements().
Referenced by GNEPersonTrip::computePath(), GNERide::computePath(), GNEVehicle::computePath(), and GNEWalk::computePath().
void GNEPathElements::drawJunctionPathChildren | ( | const GUIVisualizationSettings & | s, |
const GNEJunction * | junction, | ||
const double | offset | ||
) | const |
draw junction path child
Definition at line 138 of file GNEPathElements.cpp.
References GNEAdditional::drawPartialGL(), GNEGenericData::drawPartialGL(), GNEDemandElement::drawPartialGL(), GNEGenericData::isGenericDataVisible(), myAdditionalElement, myDemandElement, myGenericData, and myPathElements.
Referenced by GNEJunction::drawJunctionChildren().
void GNEPathElements::drawLanePathChildren | ( | const GUIVisualizationSettings & | s, |
const GNELane * | lane, | ||
const double | offset | ||
) | const |
draw lane path child
Definition at line 109 of file GNEPathElements.cpp.
References GNEAdditional::drawPartialGL(), GNEGenericData::drawPartialGL(), GNEDemandElement::drawPartialGL(), GNEGenericData::isGenericDataVisible(), myAdditionalElement, myDemandElement, myGenericData, and myPathElements.
Referenced by GNELane::drawPathAdditionalElements(), GNELane::drawPathDemandElements(), and GNELane::drawPathGenericDataElements().
const std::vector< GNEPathElements::PathElement > & GNEPathElements::getPath | ( | ) | const |
get path edges
Definition at line 103 of file GNEPathElements.cpp.
References myPathElements.
Referenced by GNEPersonTrip::isDemandElementValid(), GNERide::isDemandElementValid(), GNEVehicle::isDemandElementValid(), GNEWalk::isDemandElementValid(), GNEDetectorE2::updateGeometry(), GNEPersonTrip::updateGeometry(), GNERide::updateGeometry(), GNERoute::updateGeometry(), GNEVehicle::updateGeometry(), and GNEWalk::updateGeometry().
|
privatedelete |
Invalidated assignment operator.
|
private |
remove elements
Definition at line 335 of file GNEPathElements.cpp.
References myAdditionalElement, myDemandElement, myGenericData, and myPathElements.
Referenced by calculateConsecutivePathLanes(), calculateGenericDataLanePath(), calculatePathLanes(), and resetPathLanes().
|
protected |
reset path lanes
Definition at line 244 of file GNEPathElements.cpp.
References addElements(), calculateFromViaToEdges(), myPathElements, removeElements(), and updatePathElements().
Referenced by GNEPersonTrip::invalidatePath(), GNERide::invalidatePath(), GNEVehicle::invalidatePath(), and GNEWalk::invalidatePath().
|
private |
update path element
Definition at line 370 of file GNEPathElements.cpp.
References myPathElements.
Referenced by calculateConsecutivePathLanes(), calculateGenericDataLanePath(), calculatePathLanes(), and resetPathLanes().
|
private |
pointer to additional element
Definition at line 117 of file GNEPathElements.h.
Referenced by addElements(), drawJunctionPathChildren(), drawLanePathChildren(), and removeElements().
|
private |
pointer to demand element
Definition at line 120 of file GNEPathElements.h.
Referenced by addElements(), calculatePathLanes(), drawJunctionPathChildren(), drawLanePathChildren(), and removeElements().
|
private |
pointer to generic data
Definition at line 123 of file GNEPathElements.h.
Referenced by addElements(), calculateGenericDataLanePath(), drawJunctionPathChildren(), drawLanePathChildren(), and removeElements().
|
private |
vector of edges used in paths
Definition at line 126 of file GNEPathElements.h.
Referenced by addElements(), calculateConsecutivePathLanes(), calculateGenericDataLanePath(), calculatePathLanes(), drawJunctionPathChildren(), drawLanePathChildren(), getPath(), removeElements(), resetPathLanes(), and updatePathElements().