Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
GNERunPythonTool.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-2024 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// Thread for run tool
19/****************************************************************************/
20#pragma once
21#include <config.h>
22
24
25// ===========================================================================
26// class declarations
27// ===========================================================================
28
30
31// ===========================================================================
32// class definitions
33// ===========================================================================
34
40
41public:
44
47
49 void runTool(const GNEPythonTool* tool);
50
52 void abortTool();
53
55 bool isRunning() const;
56
58 bool errorOccurred() const;
59
60private:
62 const GNEPythonTool* myPythonTool = nullptr;
63
65 bool myRunning = false;
66
68 bool myErrorOccurred = false;
69
71 FILE* myPipe = nullptr;
72
75
78
80 FXint run();
81
84
87};
Abstract dialog for tools.
Abstract dialog for tools.
GNERunPythonTool & operator=(const GNERunPythonTool &)=delete
Invalidated assignment operator.
MFXSynchQue< GUIEvent * > & myEventQueue
event Queue
FXint run()
starts the thread. The thread ends after the tool is finished
const GNEPythonTool * myPythonTool
tool
bool isRunning() const
check if tool is running
bool myErrorOccurred
flag for check if during execution an error was Occurred
void abortTool()
abort tool running
FXEX::MFXThreadEvent & myEventThrow
event throw
bool myRunning
flag for check if tool is running
void runTool(const GNEPythonTool *tool)
run tool
bool errorOccurred() const
check if during execution an error was Occurred
FILE * myPipe
pipe file
~GNERunPythonTool()
destructor
GNERunPythonTool(const GNERunPythonTool &)=delete
Invalidated copy constructor.