Path: blob/main/src/netedit/dialogs/elements/GNERerouterIntervalDialog.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 GNERerouterIntervalDialog.h14/// @author Pablo Alvarez Lopez15/// @date Feb 201716///17// Dialog for edit rerouter intervals18/****************************************************************************/19#pragma once20#include <config.h>2122#include <netedit/changes/GNEChange_Additional.h>23#include <netedit/dialogs/elements/lists/GNETemplateElementList.h>24#include <netedit/elements/additional/GNEAdditional.h>2526#include "GNETemplateElementDialog.h"2728// ===========================================================================29// class definitions30// ===========================================================================3132class GNERerouterIntervalDialog : public GNETemplateElementDialog<GNEAdditional> {3334public:35/// @brief constructor36GNERerouterIntervalDialog(GNEAdditional* rerouterInterval);3738/// @brief destructor39~GNERerouterIntervalDialog();4041/// @brief run internal test42void runInternalTest(const InternalTestStep::DialogArgument* dialogArgument);4344/// @name FOX-callbacks45/// @{4647/// @brief event after press accept button48long onCmdAccept(FXObject*, FXSelector, void*);4950/// @brief event after press reset button51long onCmdReset(FXObject*, FXSelector, void*);5253/// @}5455protected:56/// @brief closing reroutes list57class ClosingReroutesList : public GNETemplateElementList<GNEAdditional, GNEAdditional, GNEChange_Additional> {5859public:60/// @brief constructor61ClosingReroutesList(GNERerouterIntervalDialog* rerouterIntervalDialog, FXVerticalFrame* contentFrame);6263/// @brief add new element64long addNewElement();6566/// @brief open element dialog67long openElementDialog(const size_t rowIndex);6869private:70/// @brief Invalidated copy constructor71ClosingReroutesList(const ClosingReroutesList&) = delete;7273/// @brief Invalidated assignment operator74ClosingReroutesList& operator=(const ClosingReroutesList&) = delete;75};7677/// @brief closing lane reroutes list78class ClosingLaneReroutesList : public GNETemplateElementList<GNEAdditional, GNEAdditional, GNEChange_Additional> {7980public:81/// @brief constructor82ClosingLaneReroutesList(GNERerouterIntervalDialog* rerouterIntervalDialog, FXVerticalFrame* contentFrame);8384/// @brief add new element85long addNewElement();8687/// @brief open element dialog88long openElementDialog(const size_t rowIndex);8990private:91/// @brief Invalidated copy constructor92ClosingLaneReroutesList(const ClosingLaneReroutesList&) = delete;9394/// @brief Invalidated assignment operator95ClosingLaneReroutesList& operator=(const ClosingLaneReroutesList&) = delete;96};9798/// @brief dest prob reroutes list99class DestProbReroutesList : public GNETemplateElementList<GNEAdditional, GNEAdditional, GNEChange_Additional> {100101public:102/// @brief constructor103DestProbReroutesList(GNERerouterIntervalDialog* rerouterIntervalDialog, FXVerticalFrame* contentFrame);104105/// @brief add new element106long addNewElement();107108/// @brief open element dialog109long openElementDialog(const size_t rowIndex);110111private:112/// @brief Invalidated copy constructor113DestProbReroutesList(const DestProbReroutesList&) = delete;114115/// @brief Invalidated assignment operator116DestProbReroutesList& operator=(const DestProbReroutesList&) = delete;117};118119/// @brief route prob reroutes list120class RouteProbReroutesList : public GNETemplateElementList<GNEAdditional, GNEAdditional, GNEChange_Additional> {121122public:123/// @brief constructor124RouteProbReroutesList(GNERerouterIntervalDialog* rerouterIntervalDialog, FXVerticalFrame* contentFrame);125126/// @brief add new element127long addNewElement();128129/// @brief open element dialog130long openElementDialog(const size_t rowIndex);131132private:133/// @brief Invalidated copy constructor134RouteProbReroutesList(const RouteProbReroutesList&) = delete;135136/// @brief Invalidated assignment operator137RouteProbReroutesList& operator=(const RouteProbReroutesList&) = delete;138};139140/// @brief parking area reroutes list141class ParkingAreaReroutesList : public GNETemplateElementList<GNEAdditional, GNEAdditional, GNEChange_Additional> {142143public:144/// @brief constructor145ParkingAreaReroutesList(GNERerouterIntervalDialog* rerouterIntervalDialog, FXVerticalFrame* contentFrame);146147/// @brief add new element148long addNewElement();149150/// @brief open element dialog151long openElementDialog(const size_t rowIndex);152153private:154/// @brief Invalidated copy constructor155ParkingAreaReroutesList(const ParkingAreaReroutesList&) = delete;156157/// @brief Invalidated assignment operator158ParkingAreaReroutesList& operator=(const ParkingAreaReroutesList&) = delete;159};160161/// @brief list with closing reroutes162ClosingReroutesList* myClosingReroutes;163164/// @brief list with closing lane reroutes165ClosingLaneReroutesList* myClosingLaneReroutes;166167/// @brief list with destination probability reroutes168DestProbReroutesList* myDestProbReroutes;169170/// @brief list with route probability reroute171RouteProbReroutesList* myRouteProbReroutes;172173/// @brief list with parkingAreaReroutes174ParkingAreaReroutesList* myParkingAreaReroutes;175176private:177/// @brief Invalidated copy constructor.178GNERerouterIntervalDialog(const GNERerouterIntervalDialog&) = delete;179180/// @brief Invalidated assignment operator.181GNERerouterIntervalDialog& operator=(const GNERerouterIntervalDialog&) = delete;182};183184185