Path: blob/main/src/netimport/vissim/tempstructs/NIVissimTrafficDescription.h
169684 views
/****************************************************************************/1// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo2// Copyright (C) 2001-2025 German Aerospace Center (DLR) and others.3// This program and the accompanying materials are made available under the4// terms of the Eclipse Public License 2.0 which is available at5// https://www.eclipse.org/legal/epl-2.0/6// This Source Code may also be made available under the following Secondary7// Licenses when the conditions for such availability set forth in the Eclipse8// Public License 2.0 are satisfied: GNU General Public License, version 29// or later which is available at10// https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html11// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later12/****************************************************************************/13/// @file NIVissimTrafficDescription.h14/// @author Daniel Krajzewicz15/// @date Sept 200216///17// -------------------18/****************************************************************************/19#pragma once20#include <config.h>212223#include <string>24#include <map>25#include "NIVissimVehicleClassVector.h"2627// ===========================================================================28// class definitions29// ===========================================================================30/**31*32*/33class NIVissimTrafficDescription {34public:35NIVissimTrafficDescription(const std::string& name,36const NIVissimVehicleClassVector& vehicleTypes);37~NIVissimTrafficDescription();38static bool dictionary(int id, const std::string& name,39const NIVissimVehicleClassVector& vehicleTypes);40static bool dictionary(int id, NIVissimTrafficDescription* o);41static NIVissimTrafficDescription* dictionary(int id);42static void clearDict();43static double meanSpeed(int id);44double meanSpeed() const;45private:46std::string myName;47NIVissimVehicleClassVector myVehicleTypes;48private:49typedef std::map<int, NIVissimTrafficDescription*> DictType;50static DictType myDict;51};525354