SUMO - Simulation of Urban MObility
MSSOTLCongestionPolicy.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2014-2017 German Aerospace Center (DLR) and others.
4 /****************************************************************************/
5 //
6 // This program and the accompanying materials
7 // are made available under the terms of the Eclipse Public License v2.0
8 // which accompanies this distribution, and is available at
9 // http://www.eclipse.org/legal/epl-v20.html
10 //
11 /****************************************************************************/
18 // The class for SOTL Congestion logics
19 /****************************************************************************/
20 
21 #ifndef MSTLCONGESTIONPOLICY_H_
22 #define MSTLCONGESTIONPOLICY_H_
23 
24 // ===========================================================================
25 // included modules
26 // ===========================================================================
27 #ifdef _MSC_VER
28 #include <windows_config.h>
29 #else
30 #include <config.h>
31 #endif
32 
33 
34 #include "MSSOTLPolicy.h"
41 
42 public:
44  const std::map<std::string, std::string>& parameters);
45 
46  MSSOTLCongestionPolicy(MSSOTLPolicyDesirability* desirabilityAlgorithm);
47 
48  MSSOTLCongestionPolicy(MSSOTLPolicyDesirability* desirabilityAlgorithm,
49  const std::map<std::string, std::string>& parameters);
50 
51  int decideNextPhase(SUMOTime elapsed, const MSPhaseDefinition* stage,
52  int currentPhaseIndex, int phaseMaxCTS, bool thresholdPassed, bool pushButtonPressed,
53  int vehicleCount);
54 
55  bool canRelease(SUMOTime elapsed, bool thresholdPassed, bool pushButtonPressed,
56  const MSPhaseDefinition* stage, int vehicleCount);
57 
58 };
59 
60 #endif /* MSSOTLCONGESTIONTRAFFICLIGHTLOGIC_H_ */
int decideNextPhase(SUMOTime elapsed, const MSPhaseDefinition *stage, int currentPhaseIndex, int phaseMaxCTS, bool thresholdPassed, bool pushButtonPressed, int vehicleCount)
MSSOTLCongestionPolicy(const std::map< std::string, std::string > &parameters)
bool canRelease(SUMOTime elapsed, bool thresholdPassed, bool pushButtonPressed, const MSPhaseDefinition *stage, int vehicleCount)
This class determines the desirability algorithm of a MSSOTLPolicy when used in combination with a hi...
Class for a low-level policy.
Definition: MSSOTLPolicy.h:71
Class for low-level congestion policy.
long long int SUMOTime
Definition: TraCIDefs.h:51
The definition of a single phase of a tls logic.