Line data Source code
1 : /****************************************************************************/
2 : // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 : // Copyright (C) 2001-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 VClassIcons.cpp
15 : /// @author Pablo Alvarez Lopez
16 : /// @author Angelo Banse
17 : /// @date Jan 2023
18 : ///
19 : // Function that returns the icon for a certain vClass
20 : /****************************************************************************/
21 : #include <config.h>
22 :
23 : #include <utils/common/SUMOVehicleClass.h>
24 : #include <utils/common/Translation.h>
25 : #include <utils/foxtools/fxheader.h>
26 : #include <utils/gui/images/GUIIconSubSys.h>
27 :
28 : #include "VClassIcons.h"
29 :
30 :
31 : // ===========================================================================
32 : // member method definitions
33 : // ===========================================================================
34 :
35 : FXIcon*
36 299914 : VClassIcons::getVClassIcon(const SUMOVehicleClass vc) {
37 299914 : switch (vc) {
38 8821 : case SVC_IGNORING:
39 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_IGNORING);
40 8821 : case SVC_PRIVATE:
41 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_PRIVATE);
42 8821 : case SVC_EMERGENCY:
43 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_EMERGENCY);
44 8821 : case SVC_AUTHORITY:
45 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_AUTHORITY);
46 8821 : case SVC_ARMY:
47 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_ARMY);
48 8821 : case SVC_VIP:
49 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_VIP);
50 8821 : case SVC_PEDESTRIAN:
51 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_PEDESTRIAN);
52 8821 : case SVC_PASSENGER:
53 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_PASSENGER);
54 8821 : case SVC_HOV:
55 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_HOV);
56 8821 : case SVC_TAXI:
57 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_TAXI);
58 8821 : case SVC_BUS:
59 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_BUS);
60 8821 : case SVC_COACH:
61 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_COACH);
62 8821 : case SVC_DELIVERY:
63 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_DELIVERY);
64 8821 : case SVC_TRUCK:
65 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_TRUCK);
66 8821 : case SVC_TRAILER:
67 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_TRAILER);
68 8821 : case SVC_MOTORCYCLE:
69 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_MOTORCYCLE);
70 8821 : case SVC_MOPED:
71 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_MOPED);
72 8821 : case SVC_BICYCLE:
73 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_BICYCLE);
74 8821 : case SVC_E_VEHICLE:
75 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_EVEHICLE);
76 8821 : case SVC_TRAM:
77 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_TRAM);
78 8821 : case SVC_RAIL_URBAN:
79 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_RAIL_URBAN);
80 8821 : case SVC_RAIL:
81 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_RAIL);
82 8821 : case SVC_RAIL_ELECTRIC:
83 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_RAIL_ELECTRIC);
84 8821 : case SVC_RAIL_FAST:
85 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_RAIL_FAST);
86 8821 : case SVC_SHIP:
87 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_SHIP);
88 8821 : case SVC_CONTAINER:
89 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_CONTAINER);
90 8821 : case SVC_CABLE_CAR:
91 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_CABLE_CAR);
92 8821 : case SVC_SUBWAY:
93 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_SUBWAY);
94 8821 : case SVC_AIRCRAFT:
95 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_AIRCRAFT);
96 8821 : case SVC_WHEELCHAIR:
97 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_WHEELCHAIR);
98 8821 : case SVC_SCOOTER:
99 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_SCOOTER);
100 8821 : case SVC_DRONE:
101 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_DRONE);
102 8821 : case SVC_CUSTOM1:
103 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_CUSTOM1);
104 8821 : case SVC_CUSTOM2:
105 8821 : return GUIIconSubSys::getIcon(GUIIcon::VCLASS_SMALL_CUSTOM2);
106 0 : default:
107 0 : throw ProcessError(TL("Invalid vClass"));
108 : }
109 : }
110 :
111 :
112 : /****************************************************************************/
|