Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
GNEExternalRunner.h
Go to the documentation of this file.
1/****************************************************************************/
2// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3// Copyright (C) 2001-2025 German Aerospace Center (DLR) and others.
4// This program and the accompanying materials are made available under the
5// terms of the Eclipse Public License 2.0 which is available at
6// https://www.eclipse.org/legal/epl-2.0/
7// This Source Code may also be made available under the following Secondary
8// Licenses when the conditions for such availability set forth in the Eclipse
9// Public License 2.0 are satisfied: GNU General Public License, version 2
10// or later which is available at
11// https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13/****************************************************************************/
18// External runner for python and external tools
19/****************************************************************************/
20#pragma once
21#include <config.h>
22
24
25// ===========================================================================
26// class declaration
27// ===========================================================================
28
29class GNERunDialog;
30
31// ===========================================================================
32// class definitions
33// ===========================================================================
34
36
37public:
39 GNEExternalRunner(GNEApplicationWindow* applicationWindow);
40
43
45 void runTool(GNERunDialog* runDialog);
46
48 void abort();
49
51 bool isRunning() const;
52
54 bool errorOccurred() const;
55
56protected:
59
61 bool myRunning = false;
62
64 bool myErrorOccurred = false;
65
66private:
68 FILE* myPipe = nullptr;
69
71 FXint run();
72
75
78};
The main window of Netedit.
bool myErrorOccurred
flag for check if during execution an error was Occurred
~GNEExternalRunner()
destructor
GNERunDialog * myRunDialog
pointer to current run dialog
bool errorOccurred() const
check if during execution an error was Occurred
GNEExternalRunner(const GNEExternalRunner &)=delete
Invalidated copy constructor.
GNEExternalRunner & operator=(const GNEExternalRunner &)=delete
Invalidated assignment operator.
FILE * myPipe
pipe file
bool isRunning() const
check if is running
void runTool(GNERunDialog *runDialog)
run tool called from dialog
void abort()
abort running
FXint run()
starts the thread. The thread ends after the tool is finished
bool myRunning
flag for check if we have a running process