Eclipse SUMO - Simulation of Urban MObility
FareModul Class Reference

#include <FareModul.h>

Inheritance diagram for FareModul:
Collaboration diagram for FareModul:

Public Member Functions

void addStop (const int stopEdge, const Parameterised &params) override
 
 FareModul ()
 
double getEffort (const int numericalID) const override
 
void init (const std::vector< std::string > &edges) override
 
void setInitialState (const int edge) override
 
void update (const int edge, const int prev, const double length) override
 

Private Member Functions

double computePrice (FareState const &fareState) const
 
std::string output (const int edge) const override
 
void updateFareState (FareState const &currentFareState, const int intermodalEdge)
 
void updateFareStateAccess (FareState const &currentFareState, const int accessEdge, const int prev)
 
void updateFareStatePedestrian (FareState const &currentFareState, const int pedestrianEdge)
 
void updateFareStatePublic (FareState const &currentFareState, const int publicTransportEdge, const double length)
 
void updateFareStateStop (FareState const &currentFareState, const int stopEdge)
 

Private Attributes

std::vector< std::string > myEdges
 
std::vector< FareStatemyFareStates
 
std::map< int, FareTokenmyStopFareToken
 
std::map< int, int > myStopFareZone
 
std::map< int, FareTokenmyStopStartToken
 
Prices prices
 

Detailed Description

The fare modul responsible for calculating prices

Definition at line 161 of file FareModul.h.

Constructor & Destructor Documentation

◆ FareModul()

FareModul::FareModul ( )
inline

Constructor

Definition at line 165 of file FareModul.h.

Member Function Documentation

◆ addStop()

void FareModul::addStop ( const int  stopEdge,
const Parameterised params 
)
inlineoverridevirtual

Add information about stops

Implements EffortCalculator.

Definition at line 175 of file FareModul.h.

References Parameterised::getParameter(), FareUtil::stringToToken(), and StringUtils::toInt().

◆ computePrice()

◆ getEffort()

double FareModul::getEffort ( const int  numericalID) const
inlineoverridevirtual

Implementation of EffortCalculator

Implements EffortCalculator.

Definition at line 182 of file FareModul.h.

References FareState::isValid(), and FareState::myPriceDiff.

◆ init()

void FareModul::init ( const std::vector< std::string > &  edges)
inlineoverridevirtual

Implementation of EffortCalculator

Implements EffortCalculator.

Definition at line 170 of file FareModul.h.

◆ output()

std::string FareModul::output ( const int  edge) const
inlineoverrideprivatevirtual

basic output facility to inform about effort at this edge

Implements EffortCalculator.

Definition at line 298 of file FareModul.h.

References FareState::myCounter, FareState::myFareToken, ZoneCounter::numZones(), FareUtil::tokenToTicket(), U, and Z.

◆ setInitialState()

void FareModul::setInitialState ( const int  edge)
inlineoverridevirtual

Implementation of EffortCalculator _IntermodalEdge should be an Connector Edge

Implements EffortCalculator.

Definition at line 229 of file FareModul.h.

References START.

◆ update()

void FareModul::update ( const int  edge,
const int  prev,
const double  length 
)
inlineoverridevirtual

Implementation of EffortCalculator

Implements EffortCalculator.

Definition at line 194 of file FareModul.h.

References FareState::myFareToken, FareState::myPriceDiff, and START.

◆ updateFareState()

void FareModul::updateFareState ( FareState const &  currentFareState,
const int  intermodalEdge 
)
inlineprivate

Definition at line 494 of file FareModul.h.

References Free, FareState::myFareToken, None, and START.

◆ updateFareStateAccess()

void FareModul::updateFareStateAccess ( FareState const &  currentFareState,
const int  accessEdge,
const int  prev 
)
inlineprivate

Definition at line 510 of file FareModul.h.

References Free, H, K, KH, KHU, KHZ, KL, KLU, KLZ, L, FareState::myCounter, FareState::myFareToken, ZoneCounter::numZones(), START, U, and Z.

◆ updateFareStatePedestrian()

void FareModul::updateFareStatePedestrian ( FareState const &  currentFareState,
const int  pedestrianEdge 
)
inlineprivate

Definition at line 467 of file FareModul.h.

References Free, FareState::myFareToken, and START.

◆ updateFareStatePublic()

void FareModul::updateFareStatePublic ( FareState const &  currentFareState,
const int  publicTransportEdge,
const double  length 
)
inlineprivate

Definition at line 481 of file FareModul.h.

References FareState::myFareToken, FareState::myTravelledDistance, and None.

◆ updateFareStateStop()

void FareModul::updateFareStateStop ( FareState const &  currentFareState,
const int  stopEdge 
)
inlineprivate

Field Documentation

◆ myEdges

std::vector<std::string> FareModul::myEdges
private

List of all edge line attributes

Definition at line 242 of file FareModul.h.

◆ myFareStates

std::vector<FareState> FareModul::myFareStates
private

List of all fare states

Definition at line 239 of file FareModul.h.

◆ myStopFareToken

std::map<int, FareToken> FareModul::myStopFareToken
private

the faretoken that can be collected at this station

Definition at line 248 of file FareModul.h.

◆ myStopFareZone

std::map<int, int> FareModul::myStopFareZone
private

the fare zone this stop is a part of

Definition at line 245 of file FareModul.h.

◆ myStopStartToken

std::map<int, FareToken> FareModul::myStopStartToken
private

the faretoken that is used when a trip is started at this station

Definition at line 251 of file FareModul.h.

◆ prices

Prices FareModul::prices
private

List of the prices

Definition at line 254 of file FareModul.h.


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