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