/****************************************************************************/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 NWFrame.h14/// @author Daniel Krajzewicz15/// @author Jakob Erdmann16/// @author Michael Behrisch17/// @date Tue, 20 Nov 200118///19// Sets and checks options for netwrite20/****************************************************************************/21#pragma once22#include <config.h>232425// ===========================================================================26// class declarations27// ===========================================================================2829class OptionsCont;30class NBNetBuilder;31class Position;32class OutputDevice;3334// ===========================================================================35// class definitions36// ===========================================================================37/**38* @class NWFrame39* @brief Sets and checks options for netwrite; saves the network40*/41class NWFrame {4243public:44/// @brief Inserts options used by the network writer45static void fillOptions(OptionsCont& oc, bool forNetgen);4647/** @brief Checks set options for being valid48* @return Whether needed options are set and have proper values49*/50static bool checkOptions(OptionsCont& oc);5152/// @brief Writes the network stored in the given net builder53static void writeNetwork(const OptionsCont& oc, NBNetBuilder& nb);5455/// @brief Writes the given position to device in long format (one attribute per dimension)56static void writePositionLong(const Position& pos, OutputDevice& dev);57};585960