SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MSEdgeWeightsStorage Class Reference

A storage for edge travel times and efforts. More...

#include <MSEdgeWeightsStorage.h>

Public Member Functions

void addEffort (const MSEdge *const e, SUMOReal begin, SUMOReal end, SUMOReal value)
 Adds an effort information for an edge and a time span.
void addTravelTime (const MSEdge *const e, SUMOReal begin, SUMOReal end, SUMOReal value)
 Adds a travel time information for an edge and a time span.
bool knowsEffort (const MSEdge *const e) const
 Returns the information whether any effort is known for the given edge.
bool knowsTravelTime (const MSEdge *const e) const
 Returns the information whether any travel time is known for the given edge.
 MSEdgeWeightsStorage ()
 Constructor.
void removeEffort (const MSEdge *const e)
 Removes the effort information for an edge.
void removeTravelTime (const MSEdge *const e)
 Removes the travel time information for an edge.
bool retrieveExistingEffort (const MSEdge *const e, const SUMOVehicle *const v, SUMOReal t, SUMOReal &value) const
 Returns an effort for an edge and time if stored.
bool retrieveExistingTravelTime (const MSEdge *const e, const SUMOVehicle *const v, SUMOReal t, SUMOReal &value) const
 Returns a travel time for an edge and time if stored.
 ~MSEdgeWeightsStorage ()
 Destructor.

Private Member Functions

 MSEdgeWeightsStorage (const MSEdgeWeightsStorage &)
 Invalidated copy constructor.
MSEdgeWeightsStorageoperator= (const MSEdgeWeightsStorage &)
 Invalidated assignment operator.

Private Attributes

std::map< MSEdge
*, ValueTimeLine< SUMOReal > > 
myEfforts
 A map of edge->time->effort.
std::map< MSEdge
*, ValueTimeLine< SUMOReal > > 
myTravelTimes
 A map of edge->time->travel time.

Detailed Description

A storage for edge travel times and efforts.

Definition at line 52 of file MSEdgeWeightsStorage.h.

Constructor & Destructor Documentation

MSEdgeWeightsStorage::MSEdgeWeightsStorage ( )

Constructor.

Definition at line 42 of file MSEdgeWeightsStorage.cpp.

MSEdgeWeightsStorage::~MSEdgeWeightsStorage ( )

Destructor.

Definition at line 46 of file MSEdgeWeightsStorage.cpp.

MSEdgeWeightsStorage::MSEdgeWeightsStorage ( const MSEdgeWeightsStorage )
private

Invalidated copy constructor.

Member Function Documentation

void MSEdgeWeightsStorage::addEffort ( const MSEdge *const  e,
SUMOReal  begin,
SUMOReal  end,
SUMOReal  value 
)

Adds an effort information for an edge and a time span.

Parameters
[in]eThe described edge
[in]beginThe begin of the described time span
[in]endThe end of the described time span
[in]valueTheeffort value for this edge and time span

Definition at line 96 of file MSEdgeWeightsStorage.cpp.

References myEfforts.

Referenced by NLBuilder::EdgeFloatTimeLineRetriever_EdgeEffort::addEdgeWeight(), TraCIServerAPI_Edge::processSet(), and TraCIServerAPI_Vehicle::processSet().

void MSEdgeWeightsStorage::addTravelTime ( const MSEdge *const  e,
SUMOReal  begin,
SUMOReal  end,
SUMOReal  value 
)

Adds a travel time information for an edge and a time span.

Parameters
[in]eThe described edge
[in]beginThe begin of the described time span
[in]endThe end of the described time span
[in]valueThe travel time value for this edge and time span

Definition at line 83 of file MSEdgeWeightsStorage.cpp.

References myTravelTimes.

Referenced by NLBuilder::EdgeFloatTimeLineRetriever_EdgeTravelTime::addEdgeWeight(), TraCIServerAPI_Edge::processSet(), and TraCIServerAPI_Vehicle::processSet().

bool MSEdgeWeightsStorage::knowsEffort ( const MSEdge *const  e) const

Returns the information whether any effort is known for the given edge.

Parameters
[in]eThe investigated edge
Returns
Whether any travel time information about this edge is stored

Definition at line 133 of file MSEdgeWeightsStorage.cpp.

References myEfforts.

Referenced by TraCIServerAPI_Vehicle::processSet().

bool MSEdgeWeightsStorage::knowsTravelTime ( const MSEdge *const  e) const

Returns the information whether any travel time is known for the given edge.

Parameters
[in]eThe investigated edge
Returns
Whether any travel time information about this edge is stored

Definition at line 127 of file MSEdgeWeightsStorage.cpp.

References myTravelTimes.

Referenced by GUILaneWrapper::getColorValue(), GUILaneWrapper::getStoredEdgeTravelTime(), and TraCIServerAPI_Vehicle::processSet().

MSEdgeWeightsStorage& MSEdgeWeightsStorage::operator= ( const MSEdgeWeightsStorage )
private

Invalidated assignment operator.

void MSEdgeWeightsStorage::removeEffort ( const MSEdge *const  e)

Removes the effort information for an edge.

Parameters
[in]eThe described edge

Definition at line 118 of file MSEdgeWeightsStorage.cpp.

References myEfforts.

Referenced by TraCIServerAPI_Vehicle::processSet().

void MSEdgeWeightsStorage::removeTravelTime ( const MSEdge *const  e)

Removes the travel time information for an edge.

Parameters
[in]eThe described edge

Definition at line 109 of file MSEdgeWeightsStorage.cpp.

References myTravelTimes.

Referenced by TraCIServerAPI_Vehicle::processSet().

bool MSEdgeWeightsStorage::retrieveExistingEffort ( const MSEdge *const  e,
const SUMOVehicle *const  v,
SUMOReal  t,
SUMOReal value 
) const

Returns an effort for an edge and time if stored.

Parameters
[in]eThe edge for which the effort shall be retrieved
[in]vUnused
[in]tThe time for which the effort shall be retrieved
[in]valueThe value if the requested edge/time is described
Returns
Whether the requested edge/time is described

Definition at line 67 of file MSEdgeWeightsStorage.cpp.

References ValueTimeLine< T >::describesTime(), ValueTimeLine< T >::getValue(), and myEfforts.

Referenced by MSNet::getEffort(), and TraCIServerAPI_Vehicle::processGet().

bool MSEdgeWeightsStorage::retrieveExistingTravelTime ( const MSEdge *const  e,
const SUMOVehicle *const  v,
SUMOReal  t,
SUMOReal value 
) const

Returns a travel time for an edge and time if stored.

Parameters
[in]eThe edge for which the travel time shall be retrieved
[in]vUnused
[in]tThe time for which the travel time shall be retrieved
[in]valueThe value if the requested edge/time is described
Returns
Whether the requested edge/time is described

Definition at line 51 of file MSEdgeWeightsStorage.cpp.

References ValueTimeLine< T >::describesTime(), ValueTimeLine< T >::getValue(), and myTravelTimes.

Referenced by GUILaneWrapper::getColorValue(), GUILaneWrapper::getStoredEdgeTravelTime(), MSNet::getTravelTime(), and TraCIServerAPI_Vehicle::processGet().

Field Documentation

std::map<MSEdge*, ValueTimeLine<SUMOReal> > MSEdgeWeightsStorage::myEfforts
private

A map of edge->time->effort.

Definition at line 133 of file MSEdgeWeightsStorage.h.

Referenced by addEffort(), knowsEffort(), removeEffort(), and retrieveExistingEffort().

std::map<MSEdge*, ValueTimeLine<SUMOReal> > MSEdgeWeightsStorage::myTravelTimes
private

A map of edge->time->travel time.

Definition at line 130 of file MSEdgeWeightsStorage.h.

Referenced by addTravelTime(), knowsTravelTime(), removeTravelTime(), and retrieveExistingTravelTime().


The documentation for this class was generated from the following files: