Choreonoid  1.5
PythonScriptItemImpl.h
Go to the documentation of this file.
1 
6 #ifndef CNOID_PYTHON_PLUGIN_PYTHON_SCRIPT_ITEM_IMPL_H_INCLUDED
7 #define CNOID_PYTHON_PLUGIN_PYTHON_SCRIPT_ITEM_IMPL_H_INCLUDED
8 
9 #include "PythonExecutor.h"
10 #include <cnoid/ScriptItem>
11 #include <cnoid/MessageView>
12 #include "exportdecl.h"
13 
14 namespace cnoid {
15 
17 {
18 public:
19  PythonScriptItemImpl(ScriptItem* scriptItem);
20  PythonScriptItemImpl(ScriptItem* scriptItem, const PythonScriptItemImpl& org);
21  virtual ~PythonScriptItemImpl();
22  ScriptItem* scriptItem() { return scriptItem_; }
23  void onDisconnectedFromRoot();
24  bool setScriptFilename(const std::string& filename);
25  const std::string& scriptFilename() const { return scriptFilename_; }
26  bool setBackgroundMode(bool on);
27  bool isBackgroundMode() const;
28  bool isRunning() const;
29  bool execute();
30  bool executeCode(const char* code);
31  bool waitToFinish(double timeout);
32  boost::python::object resultObject();
33  const std::string resultString() const;
34  Signal<void()>& sigScriptFinished() { return sigScriptFinished_; }
35  bool terminate();
36  void doPutProperties(PutPropertyFunction& putProperty);
37  bool store(Archive& archive);
38  bool restore(const Archive& archive);
39 
40 private:
41  void onScriptFinished();
42  bool onBackgroundModeChanged(bool on);
43 
44  ScriptItem* scriptItem_;
45  std::string scriptFilename_;
46  MessageView* mv;
47  PythonExecutor executor;
48  Connection sigFinishedConnection;
49  Signal<void()> sigScriptFinished_;
50 };
51 
52 }
53 
54 #endif
Definition: PythonScriptItemImpl.h:16
Definition: Archive.h:21
ScriptItem * scriptItem()
Definition: PythonScriptItemImpl.h:22
Definition: ScriptItem.h:14
Definition: PythonExecutor.h:16
Definition: PutPropertyFunction.h:35
Definition: MessageView.h:19
const std::string & scriptFilename() const
Definition: PythonScriptItemImpl.h:25
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
Definition: Signal.h:107
Signal< void()> & sigScriptFinished()
Definition: PythonScriptItemImpl.h:34
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37