Line data Source code
1 : /****************************************************************************/
2 : // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 : // Copyright (C) 2014-2026 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 VTypesHandler.cpp
15 : /// @author Jakob Erdmann
16 : /// @date 12.01.2022
17 : ///
18 : // An XML-Handler for reading vTypes
19 : /****************************************************************************/
20 : #include <config.h>
21 :
22 : #include <string>
23 : #include <utility>
24 : #include <iostream>
25 : #include "VTypesHandler.h"
26 :
27 :
28 : // ===========================================================================
29 : // method definitions
30 : // ===========================================================================
31 5 : VTypesHandler::VTypesHandler(const std::string& file, std::map<std::string, SUMOVTypeParameter*>& vTypes) :
32 : SUMORouteHandler(file, "", true),
33 5 : myVTypes(vTypes)
34 5 : {}
35 :
36 :
37 : void
38 7 : VTypesHandler::closeVType() {
39 7 : myVTypes[myCurrentVType->id] = myCurrentVType;
40 7 : myCurrentVType = nullptr;
41 7 : }
42 :
43 :
44 5 : VTypesHandler::~VTypesHandler() {}
45 :
46 :
47 : const SUMOVTypeParameter*
48 7 : VTypesHandler::getVTypeParameter(const std::string& refid) {
49 7 : const auto& typeRef = myVTypes.find(refid);
50 7 : return typeRef != myVTypes.end() ? typeRef->second : nullptr;
51 : }
52 :
53 :
54 : /****************************************************************************/
|