Line data Source code
1 : /****************************************************************************/
2 : // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 : // Copyright (C) 2010-2024 German Aerospace Center (DLR) and others.
4 : // This program and the accompanying materials are made available under the
5 : // terms of the Eclipse Public License 2.0 which is available at
6 : // https://www.eclipse.org/legal/epl-2.0/
7 : // This Source Code may also be made available under the following Secondary
8 : // Licenses when the conditions for such availability set forth in the Eclipse
9 : // Public License 2.0 are satisfied: GNU General Public License, version 2
10 : // or later which is available at
11 : // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12 : // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13 : /****************************************************************************/
14 : /// @file MSSOTLRequestPolicy.h
15 : /// @author Gianfilippo Slager
16 : /// @author Anna Chiara Bellini
17 : /// @date Apr 2013
18 : ///
19 : // The class for SOTL Request logics
20 : /****************************************************************************/
21 : #pragma once
22 : #include <config.h>
23 :
24 : #include "MSSOTLPolicy.h"
25 :
26 : /**
27 : * @class MSSOTLRequestPolicy
28 : * @brief Class for low-level request policy.
29 : *
30 : */
31 : class MSSOTLRequestPolicy: public MSSOTLPolicy {
32 :
33 : public:
34 : MSSOTLRequestPolicy(const Parameterised::Map& parameters);
35 : MSSOTLRequestPolicy(MSSOTLPolicyDesirability* desirabilityAlgorithm);
36 :
37 : MSSOTLRequestPolicy(MSSOTLPolicyDesirability* desirabilityAlgorithm,
38 : const Parameterised::Map& parameters);
39 :
40 : bool canRelease(SUMOTime elapsed, bool thresholdPassed, bool pushButtonPressed,
41 : const MSPhaseDefinition* stage, int vehicleCount);
42 :
43 16500 : int getMinDecisionalPhaseDuration() {
44 33000 : return StringUtils::toInt(getParameter("MIN_DECISIONAL_PHASE_DUR", "5000"));
45 : }
46 :
47 : };
|