+ {
+ Interpreter_OK,
+ Interpreter_ERROR,
+ Interpreter_QUIT,
+ Interpreter_BREAK,
+ }
+ ExitStatus;
+
+ /// Runs the interpretation of a file
+ ExitStatus InterpretFile( const std::string& filename, bool source = false);
+
+ /// Runs the interpretation of a buffer and deletes it !
+ ExitStatus InterpretBuffer( std::stringstream* buffer );
+
+ /// Runs the interpretation of a command
+ ExitStatus InterpretLine( const std::string& line );
+
+ /// Runs the interpretation of the currently open streams
+ ExitStatus InterpretCurrentStreams();
+
+ /// Launches a command line interpreter (with a prompt)
+ void CommandLineInterpreter();
+*/
+
+
+ /// Sets the inputs of the workspace :
+ /// the map is passed as is to the Executer
+ void SetInputs(const std::map<std::string,std::string>& m)
+ { mVirtualExecuter->SetInputs(m); }
+
+ /// Puts the executer in "no exec" mode,
+ /// which creates but does not execute pipelines.
+ void SetNoExecMode(bool m) { mVirtualExecuter->SetNoExecMode(m); }
+
+ /// Puts the executer in "no error" mode,
+ /// Errors do not stop execution (but warnings are produced)
+ void SetNoErrorMode(bool m) { mVirtualExecuter->SetNoErrorMode(m);}
+ ///
+ //typedef Executer::DialogModeType DialogModeType;
+ typedef VirtualExec::DialogModeType DialogModeType;
+
+ void SetDialogMode(DialogModeType t) { mVirtualExecuter->SetDialogMode(t);}
+
+/*EED Borrame
+ /// Sets the bool that indicates wether we are in command line context
+ void SetCommandLine(bool v = true) { mCommandLine = v; }
+
+ void SetThrow(bool b) { mThrow = b; }
+
+#ifdef USE_WXWIDGETS
+ /// Sets the user of the interpreter (if any)
+ void SetUser(InterpreterUser* c) { mUser = c; }
+ /// Gets the InterpreterUser of this
+ InterpreterUser* GetUser() { return mUser; }
+ /// Gets the InterpreterUser of this (const)
+ const InterpreterUser* GetUser() const { return mUser; }
+
+#endif
+ */
+
+ /// Gets the Executer
+ VirtualExec::Pointer GetExecuter() const { return mVirtualExecuter; }
+
+ /*
+ // For 'break' commands observation
+ typedef boost::signals::trackable BreakObserverType;
+ typedef boost::signal<void ()> BreakSignalType;
+ typedef BreakSignalType::slot_function_type BreakCallbackType;
+
+ // Adds a callback when 'break' command issued
+ void AddBreakObserver( BreakCallbackType );
+ */
+
+ protected:
+
+/* EED Borrame
+ /// The enumeration of command codes == Command name
+ typedef enum