Line data Source code
1 : /****************************************************************************/
2 : // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 : // Copyright (C) 2001-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 MSLCM_LC2013_CC.cpp
15 : /// @author Michele Segata
16 : /// @date Do, 02.05.2024
17 : ///
18 : // A lane change model developed modification for the CC carFollowModel
19 : /****************************************************************************/
20 : #include "MSLCM_LC2013_CC.h"
21 : #include <microsim/cfmodels/MSCFModel_CC.h>
22 :
23 : // ===========================================================================
24 : // member method definitions
25 : // ===========================================================================
26 0 : MSLCM_LC2013_CC::MSLCM_LC2013_CC(MSVehicle& v) : MSLCM_LC2013(v) {}
27 :
28 0 : MSLCM_LC2013_CC::~MSLCM_LC2013_CC() {}
29 :
30 0 : int MSLCM_LC2013_CC::checkChangeBeforeCommitting(const MSVehicle* veh, int state) const {
31 :
32 0 : if (state & LCA_WANTS_LANECHANGE) {
33 0 : auto* cfm = dynamic_cast<const MSCFModel_CC*>(&veh->getCarFollowModel());
34 :
35 0 : if (cfm) {
36 0 : bool left = (state & LCA_LEFT) != 0;
37 0 : return cfm->commitToLaneChange(veh, left);
38 : }
39 : }
40 : return 0;
41 : }
42 :
43 : /****************************************************************************/
|