1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3 // Copyright (C) 2002-2019 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials
5 // are made available under the terms of the Eclipse Public License v2.0
6 // which accompanies this distribution, and is available at
7 // http://www.eclipse.org/legal/epl-v20.html
8 // SPDX-License-Identifier: EPL-2.0
9 /****************************************************************************/
10 /// @file    NBVehicle.h
11 /// @author  Daniel Krajzewicz
12 /// @author  Michael Behrisch
13 /// @author  Jakob Erdmann
14 /// @date    Sept 2002
15 /// @version $Id$
16 ///
17 // A vehicle as used by router
18 /****************************************************************************/
19 #ifndef NBVehicle_h
20 #define NBVehicle_h
21 
22 
23 // ===========================================================================
24 // included modules
25 // ===========================================================================
26 #include <config.h>
27 
28 #include <string>
29 #include <iostream>
30 
31 
32 // ===========================================================================
33 // class declarations
34 // ===========================================================================
35 
36 
37 // ===========================================================================
38 // class definitions
39 // ===========================================================================
40 /**
41  * @class NBVehicle
42  * @brief A vehicle as used by router
43  */
44 class NBVehicle {
45 public:
46     /** @brief Constructor
47      *
48      * @param[in] pars Parameter of this vehicle
49      * @param[in] route The definition of the route the vehicle shall use
50      * @param[in] type The type of the vehicle
51      */
NBVehicle(const std::string & id,SUMOVehicleClass vClass)52     NBVehicle(const std::string& id, SUMOVehicleClass vClass):
53         myID(id), myVClass(vClass) {}
54 
getID()55     const std::string& getID() const {
56         return myID;
57     }
58 
getVClass()59     SUMOVehicleClass getVClass() const {
60         return myVClass;
61     }
62 
63 
64     /// @brief Destructor
~NBVehicle()65     virtual ~NBVehicle() {}
66 
67 
68 private:
69     /// @brief vehicle ID for error reporting
70     std::string myID;
71 
72     /// @brief The vehicle class of the
73     SUMOVehicleClass myVClass;
74 
75 
76 private:
77     /// @brief Invalidated copy constructor
78     NBVehicle(const NBVehicle& src);
79 
80     /// @brief Invalidated assignment operator
81     NBVehicle& operator=(const NBVehicle& src);
82 
83 };
84 
85 
86 #endif
87 
88 /****************************************************************************/
89