GNU Octave  4.4.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
octave_link Class Referenceabstract

Provides threadsafe access to octave. More...

#include "octave-link.h"

Inheritance diagram for octave_link:
Collaboration diagram for octave_link:

Public Types

typedef std::list< std::pair< std::string, std::string > > filter_list
 

Public Member Functions

 octave_link (const octave_link &)=delete
 
virtual ~octave_link (void)
 
bool do_disable (void)
 
bool do_enable (void)
 
octave_linkoperator= (const octave_link &)=delete
 

Static Public Member Functions

static void append_history (const std::string &hist_entry)
 
static void change_directory (const std::string &dir)
 
static void clear_history (void)
 
static void clear_workspace (void)
 
static bool confirm_shutdown (void)
 
static void connect_link (octave_link *)
 
static bool copy_image_to_clipboard (const std::string &file)
 
static int debug_cd_or_addpath_error (const std::string &file, const std::string &dir, bool addpath_option)
 
static bool disable (void)
 
static void discard_events (void)
 
static octave_linkdisconnect_link (bool delete_instance=true)
 
static bool edit_file (const std::string &file)
 
static bool edit_variable (const std::string &name, const octave_value &val)
 
static bool enable (void)
 
static bool enabled (void)
 
static void enter_debugger_event (const std::string &file, int line)
 
static void entered_readline_hook (void)
 
static void execute_command_in_terminal (const std::string &command)
 
static void execute_in_debugger_event (const std::string &file, int line)
 
static void exit_debugger_event (void)
 
static std::list< std::stringfile_dialog (const filter_list &filter, const std::string &title, const std::string &filename, const std::string &dirname, const std::string &multimode)
 
static void finished_readline_hook (void)
 
static void generate_events (void)
 
static std::list< std::stringinput_dialog (const std::list< std::string > &prompt, const std::string &title, const std::list< float > &nr, const std::list< float > &nc, const std::list< std::string > &defaults)
 
static std::pair< std::list< int >, int > list_dialog (const std::list< std::string > &list, const std::string &mode, int width, int height, const std::list< int > &initial_value, const std::string &name, const std::list< std::string > &prompt, const std::string &ok_string, const std::string &cancel_string)
 
static int message_dialog (const std::string &dlg, const std::string &msg, const std::string &title)
 
template<typename T >
static void post_event (T *obj, void(T::*method)(void))
 
template<typename T , typename A >
static void post_event (T *obj, void(T::*method)(A), A arg)
 
template<typename T , typename A >
static void post_event (T *obj, void(T::*method)(const A &), const A &arg)
 
template<class T , class A , class B >
static void post_event (T *obj, void(T::*method)(const A &, const B &), const A &arg_a, const B &arg_b)
 
template<class T , class A , class B , class C >
static void post_event (T *obj, void(T::*method)(const A &, const B &, const C &), const A &arg_a, const B &arg_b, const C &arg_c)
 
template<class T , class A , class B , class C , class D >
static void post_event (T *obj, void(T::*method)(const A &, const B &, const C &, const D &), const A &arg_a, const B &arg_b, const C &arg_c, const D &arg_d)
 
static void post_exception (const std::exception_ptr &p)
 
static void post_input_event (void)
 
static void pre_input_event (void)
 
static void process_events (bool disable=false)
 
static bool prompt_new_edit_file (const std::string &file)
 
static std::string question_dialog (const std::string &msg, const std::string &title, const std::string &btn1, const std::string &btn2, const std::string &btn3, const std::string &btndef)
 
static bool register_doc (const std::string &file)
 
static void set_default_prompts (std::string &ps1, std::string &ps2, std::string &ps4)
 
static void set_history (const string_vector &hist)
 
static void set_workspace (void)
 
static void set_workspace (bool top_level, const octave::symbol_scope &scope, bool update_variable_editor=true)
 
static bool show_doc (const std::string &file)
 
static bool show_preferences ()
 
static bool unregister_doc (const std::string &file)
 
static void update_breakpoint (bool insert, const std::string &file, int line, const std::string &cond="")
 

Protected Member Functions

 octave_link (void)
 
virtual void do_append_history (const std::string &hist_entry)=0
 
virtual void do_change_directory (const std::string &dir)=0
 
virtual void do_clear_history (void)=0
 
virtual void do_clear_workspace (void)=0
 
virtual bool do_confirm_shutdown (void)=0
 
virtual bool do_copy_image_to_clipboard (const std::string &file)=0
 
virtual int do_debug_cd_or_addpath_error (const std::string &file, const std::string &dir, bool addpath_option)=0
 
void do_discard_events (void)
 
virtual bool do_edit_file (const std::string &file)=0
 
virtual void do_edit_variable (const std::string &name, const octave_value &val)=0
 
virtual void do_enter_debugger_event (const std::string &file, int line)=0
 
void do_entered_readline_hook (void)
 
virtual void do_execute_command_in_terminal (const std::string &command)=0
 
virtual void do_execute_in_debugger_event (const std::string &file, int line)=0
 
virtual void do_exit_debugger_event (void)=0
 
virtual std::list< std::stringdo_file_dialog (const filter_list &filter, const std::string &title, const std::string &filename, const std::string &dirname, const std::string &multimode)=0
 
void do_finished_readline_hook (void)
 
void do_generate_events (void)
 
virtual std::list< std::stringdo_input_dialog (const std::list< std::string > &prompt, const std::string &title, const std::list< float > &nr, const std::list< float > &nc, const std::list< std::string > &defaults)=0
 
virtual std::pair< std::list< int >, int > do_list_dialog (const std::list< std::string > &list, const std::string &mode, int width, int height, const std::list< int > &initial_value, const std::string &name, const std::list< std::string > &prompt, const std::string &ok_string, const std::string &cancel_string)=0
 
virtual int do_message_dialog (const std::string &dlg, const std::string &msg, const std::string &title)=0
 
template<typename T >
void do_post_event (T *obj, void(T::*method)(void))
 
template<typename T , typename A >
void do_post_event (T *obj, void(T::*method)(A), A arg)
 
template<typename T , typename A >
void do_post_event (T *obj, void(T::*method)(const A &), const A &arg)
 
template<class T , class A , class B >
void do_post_event (T *obj, void(T::*method)(const A &, const B &), const A &arg_a, const B &arg_b)
 
template<class T , class A , class B , class C >
void do_post_event (T *obj, void(T::*method)(const A &, const B &, const C &), const A &arg_a, const B &arg_b, const C &arg_c)
 
template<class T , class A , class B , class C , class D >
void do_post_event (T *obj, void(T::*method)(const A &, const B &, const C &, const D &), const A &arg_a, const B &arg_b, const C &arg_c, const D &arg_d)
 
void do_post_exception (const std::exception_ptr &p)
 
virtual void do_post_input_event (void)=0
 
virtual void do_pre_input_event (void)=0
 
void do_process_events (void)
 
virtual bool do_prompt_new_edit_file (const std::string &file)=0
 
virtual std::string do_question_dialog (const std::string &msg, const std::string &title, const std::string &btn1, const std::string &btn2, const std::string &btn3, const std::string &btndef)=0
 
virtual void do_register_doc (const std::string &file)=0
 
virtual void do_set_default_prompts (std::string &ps1, std::string &ps2, std::string &ps4)=0
 
virtual void do_set_history (const string_vector &hist)=0
 
virtual void do_set_workspace (bool top_level, bool debug, const octave::symbol_scope &scope, bool update_variable_editor)=0
 
virtual void do_show_doc (const std::string &file)=0
 
virtual void do_show_preferences (void)=0
 
virtual void do_unregister_doc (const std::string &file)=0
 
virtual void do_update_breakpoint (bool insert, const std::string &file, int line, const std::string &cond)=0
 
void rethrow_exception_callback (const std::exception_ptr &p)
 

Protected Attributes

bool debugging
 
octave::mutexevent_queue_mutex
 
octave::event_queue gui_event_queue
 
bool link_enabled
 

Static Private Member Functions

static bool instance_ok (void)
 

Static Private Attributes

static octave_linkinstance = nullptr
 

Detailed Description

Provides threadsafe access to octave.

Author
Jacob Dawid

This class is a wrapper around octave and provides thread safety by buffering access operations to octave and executing them in the readline event hook, which lives in the octave thread.

Definition at line 52 of file octave-link.h.

Member Typedef Documentation

◆ filter_list

Definition at line 237 of file octave-link.h.

Constructor & Destructor Documentation

◆ octave_link() [1/2]

octave_link::octave_link ( void  )
protected

◆ octave_link() [2/2]

octave_link::octave_link ( const octave_link )
delete

◆ ~octave_link()

octave_link::~octave_link ( void  )
virtual

Definition at line 61 of file octave-link.cc.

References event_queue_mutex.

Member Function Documentation

◆ append_history()

static void octave_link::append_history ( const std::string hist_entry)
inlinestatic

◆ change_directory()

static void octave_link::change_directory ( const std::string dir)
inlinestatic

Definition at line 259 of file octave-link.h.

Referenced by octave_change_to_directory().

◆ clear_history()

static void octave_link::clear_history ( void  )
inlinestatic

Definition at line 301 of file octave-link.h.

Referenced by do_history().

◆ clear_workspace()

static void octave_link::clear_workspace ( void  )
inlinestatic

Definition at line 283 of file octave-link.h.

◆ confirm_shutdown()

static bool octave_link::confirm_shutdown ( void  )
inlinestatic

Definition at line 96 of file octave-link.h.

References retval.

◆ connect_link()

void octave_link::connect_link ( octave_link obj)
static

Definition at line 86 of file octave-link.cc.

References error(), and instance.

Referenced by octave::main_window::construct_octave_qt_link().

◆ copy_image_to_clipboard()

static bool octave_link::copy_image_to_clipboard ( const std::string file)
inlinestatic

Definition at line 175 of file octave-link.h.

References file.

Referenced by QtHandles::Figure::copy_figure_callback().

◆ debug_cd_or_addpath_error()

static int octave_link::debug_cd_or_addpath_error ( const std::string file,
const std::string dir,
bool  addpath_option 
)
inlinestatic

Definition at line 250 of file octave-link.h.

References file.

◆ disable()

static bool octave_link::disable ( void  )
inlinestatic

Definition at line 383 of file octave-link.h.

◆ discard_events()

static void octave_link::discard_events ( void  )
inlinestatic

Definition at line 90 of file octave-link.h.

◆ disconnect_link()

static octave_link* octave_link::disconnect_link ( bool  delete_instance = true)
inlinestatic

Definition at line 355 of file octave-link.h.

References retval.

◆ do_append_history()

virtual void octave_link::do_append_history ( const std::string hist_entry)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_change_directory()

virtual void octave_link::do_change_directory ( const std::string dir)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_clear_history()

virtual void octave_link::do_clear_history ( void  )
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_clear_workspace()

virtual void octave_link::do_clear_workspace ( void  )
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_confirm_shutdown()

virtual bool octave_link::do_confirm_shutdown ( void  )
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_copy_image_to_clipboard()

virtual bool octave_link::do_copy_image_to_clipboard ( const std::string file)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_debug_cd_or_addpath_error()

virtual int octave_link::do_debug_cd_or_addpath_error ( const std::string file,
const std::string dir,
bool  addpath_option 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_disable()

bool octave_link::do_disable ( void  )
inline

Definition at line 395 of file octave-link.h.

References retval.

◆ do_discard_events()

void octave_link::do_discard_events ( void  )
protected

◆ do_edit_file()

virtual bool octave_link::do_edit_file ( const std::string file)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_edit_variable()

virtual void octave_link::do_edit_variable ( const std::string name,
const octave_value val 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_enable()

bool octave_link::do_enable ( void  )
inline

Definition at line 388 of file octave-link.h.

References retval.

◆ do_enter_debugger_event()

virtual void octave_link::do_enter_debugger_event ( const std::string file,
int  line 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_entered_readline_hook()

void octave_link::do_entered_readline_hook ( void  )
inlineprotected

Definition at line 546 of file octave-link.h.

◆ do_execute_command_in_terminal()

virtual void octave_link::do_execute_command_in_terminal ( const std::string command)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_execute_in_debugger_event()

virtual void octave_link::do_execute_in_debugger_event ( const std::string file,
int  line 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_exit_debugger_event()

virtual void octave_link::do_exit_debugger_event ( void  )
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_file_dialog()

virtual std::list<std::string> octave_link::do_file_dialog ( const filter_list filter,
const std::string title,
const std::string filename,
const std::string dirname,
const std::string multimode 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_finished_readline_hook()

void octave_link::do_finished_readline_hook ( void  )
inlineprotected

Definition at line 547 of file octave-link.h.

◆ do_generate_events()

void octave_link::do_generate_events ( void  )
protected

Definition at line 95 of file octave-link.cc.

◆ do_input_dialog()

virtual std::list<std::string> octave_link::do_input_dialog ( const std::list< std::string > &  prompt,
const std::string title,
const std::list< float > &  nr,
const std::list< float > &  nc,
const std::list< std::string > &  defaults 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_list_dialog()

virtual std::pair<std::list<int>, int> octave_link::do_list_dialog ( const std::list< std::string > &  list,
const std::string mode,
int  width,
int  height,
const std::list< int > &  initial_value,
const std::string name,
const std::list< std::string > &  prompt,
const std::string ok_string,
const std::string cancel_string 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_message_dialog()

virtual int octave_link::do_message_dialog ( const std::string dlg,
const std::string msg,
const std::string title 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_post_event() [1/6]

template<typename T >
void octave_link::do_post_event ( T *  obj,
void(T::*)(void)  method 
)
inlineprotected

Definition at line 490 of file octave-link.h.

References octave::action_container::add_method(), and method.

◆ do_post_event() [2/6]

template<typename T , typename A >
void octave_link::do_post_event ( T *  obj,
void(T::*)(A method,
A  arg 
)
inlineprotected

Definition at line 496 of file octave-link.h.

References octave::action_container::add_method(), arg, and method.

◆ do_post_event() [3/6]

template<typename T , typename A >
void octave_link::do_post_event ( T *  obj,
void(T::*)(const A &)  method,
const A arg 
)
inlineprotected

Definition at line 502 of file octave-link.h.

References octave::action_container::add_method(), arg, and method.

◆ do_post_event() [4/6]

template<class T , class A , class B >
void octave_link::do_post_event ( T *  obj,
void(T::*)(const A &, const B &)  method,
const A arg_a,
const B arg_b 
)
inlineprotected

Definition at line 508 of file octave-link.h.

References A, octave::action_container::add_method(), arg_a, arg_b, B, and method.

◆ do_post_event() [5/6]

template<class T , class A , class B , class C >
void octave_link::do_post_event ( T *  obj,
void(T::*)(const A &, const B &, const C &)  method,
const A arg_a,
const B arg_b,
const C arg_c 
)
inlineprotected

Definition at line 516 of file octave-link.h.

References A, octave::action_container::add_method(), arg_a, arg_b, arg_c, B, C, and method.

◆ do_post_event() [6/6]

template<class T , class A , class B , class C , class D >
void octave_link::do_post_event ( T *  obj,
void(T::*)(const A &, const B &, const C &, const D &)  method,
const A arg_a,
const B arg_b,
const C arg_c,
const D &  arg_d 
)
inlineprotected

Definition at line 526 of file octave-link.h.

References A, octave::action_container::add_method(), arg_a, arg_b, arg_c, B, C, and method.

◆ do_post_exception()

void octave_link::do_post_exception ( const std::exception_ptr &  p)
inlineprotected

Definition at line 541 of file octave-link.h.

References p, and rethrow_exception_callback().

◆ do_post_input_event()

virtual void octave_link::do_post_input_event ( void  )
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_pre_input_event()

virtual void octave_link::do_pre_input_event ( void  )
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_process_events()

void octave_link::do_process_events ( void  )
protected

◆ do_prompt_new_edit_file()

virtual bool octave_link::do_prompt_new_edit_file ( const std::string file)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_question_dialog()

virtual std::string octave_link::do_question_dialog ( const std::string msg,
const std::string title,
const std::string btn1,
const std::string btn2,
const std::string btn3,
const std::string btndef 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_register_doc()

virtual void octave_link::do_register_doc ( const std::string file)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_set_default_prompts()

virtual void octave_link::do_set_default_prompts ( std::string ps1,
std::string ps2,
std::string ps4 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_set_history()

virtual void octave_link::do_set_history ( const string_vector hist)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_set_workspace()

virtual void octave_link::do_set_workspace ( bool  top_level,
bool  debug,
const octave::symbol_scope scope,
bool  update_variable_editor 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

Referenced by set_workspace().

◆ do_show_doc()

virtual void octave_link::do_show_doc ( const std::string file)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_show_preferences()

virtual void octave_link::do_show_preferences ( void  )
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_unregister_doc()

virtual void octave_link::do_unregister_doc ( const std::string file)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ do_update_breakpoint()

virtual void octave_link::do_update_breakpoint ( bool  insert,
const std::string file,
int  line,
const std::string cond 
)
protectedpure virtual

Implemented in octave::octave_qt_link.

◆ edit_file()

static bool octave_link::edit_file ( const std::string file)
inlinestatic

Definition at line 181 of file octave-link.h.

References file.

Referenced by F__octave_link_edit_file__().

◆ edit_variable()

static bool octave_link::edit_variable ( const std::string name,
const octave_value val 
)
inlinestatic

Definition at line 457 of file octave-link.h.

References name, and val.

Referenced by Fopenvar().

◆ enable()

static bool octave_link::enable ( void  )
inlinestatic

Definition at line 378 of file octave-link.h.

◆ enabled()

static bool octave_link::enabled ( void  )
inlinestatic

Definition at line 402 of file octave-link.h.

Referenced by F__octave_link_enabled__(), and set_workspace().

◆ enter_debugger_event()

static void octave_link::enter_debugger_event ( const std::string file,
int  line 
)
inlinestatic

Definition at line 319 of file octave-link.h.

References file.

◆ entered_readline_hook()

static void octave_link::entered_readline_hook ( void  )
inlinestatic

Definition at line 162 of file octave-link.h.

Referenced by octave_readline_hook().

◆ execute_command_in_terminal()

static void octave_link::execute_command_in_terminal ( const std::string command)
inlinestatic

Definition at line 266 of file octave-link.h.

References command.

◆ execute_in_debugger_event()

static void octave_link::execute_in_debugger_event ( const std::string file,
int  line 
)
inlinestatic

Definition at line 329 of file octave-link.h.

References file.

◆ exit_debugger_event()

static void octave_link::exit_debugger_event ( void  )
inlinestatic

Definition at line 335 of file octave-link.h.

Referenced by octave::base_reader::octave_gets().

◆ file_dialog()

static std::list<std::string> octave_link::file_dialog ( const filter_list filter,
const std::string title,
const std::string filename,
const std::string dirname,
const std::string multimode 
)
inlinestatic

Definition at line 240 of file octave-link.h.

References octave::sys::file_ops::dirname(), filename, and filter().

Referenced by F__octave_link_file_dialog__().

◆ finished_readline_hook()

static void octave_link::finished_readline_hook ( void  )
inlinestatic

Definition at line 168 of file octave-link.h.

Referenced by octave_readline_hook().

◆ generate_events()

static void octave_link::generate_events ( void  )
inlinestatic

Definition at line 70 of file octave-link.h.

Referenced by octave_readline_hook().

◆ input_dialog()

static std::list<std::string> octave_link::input_dialog ( const std::list< std::string > &  prompt,
const std::string title,
const std::list< float > &  nr,
const std::list< float > &  nc,
const std::list< std::string > &  defaults 
)
inlinestatic

Definition at line 226 of file octave-link.h.

Referenced by F__octave_link_input_dialog__().

◆ instance_ok()

static bool octave_link::instance_ok ( void  )
inlinestaticprivate

Definition at line 472 of file octave-link.h.

◆ list_dialog()

static std::pair<std::list<int>, int> octave_link::list_dialog ( const std::list< std::string > &  list,
const std::string mode,
int  width,
int  height,
const std::list< int > &  initial_value,
const std::string name,
const std::list< std::string > &  prompt,
const std::string ok_string,
const std::string cancel_string 
)
inlinestatic

Definition at line 209 of file octave-link.h.

References list, mode, and name.

Referenced by F__octave_link_list_dialog__().

◆ message_dialog()

static int octave_link::message_dialog ( const std::string dlg,
const std::string msg,
const std::string title 
)
inlinestatic

Definition at line 193 of file octave-link.h.

Referenced by F__octave_link_message_dialog__().

◆ operator=()

octave_link& octave_link::operator= ( const octave_link )
delete

◆ post_event() [1/6]

◆ post_event() [2/6]

template<typename T , typename A >
static void octave_link::post_event ( T *  obj,
void(T::*)(A method,
A  arg 
)
inlinestatic

Definition at line 114 of file octave-link.h.

References arg, and method.

◆ post_event() [3/6]

template<typename T , typename A >
static void octave_link::post_event ( T *  obj,
void(T::*)(const A &)  method,
const A arg 
)
inlinestatic

Definition at line 121 of file octave-link.h.

References arg, and method.

◆ post_event() [4/6]

template<class T , class A , class B >
static void octave_link::post_event ( T *  obj,
void(T::*)(const A &, const B &)  method,
const A arg_a,
const B arg_b 
)
inlinestatic

Definition at line 128 of file octave-link.h.

References A, arg_a, arg_b, B, and method.

◆ post_event() [5/6]

template<class T , class A , class B , class C >
static void octave_link::post_event ( T *  obj,
void(T::*)(const A &, const B &, const C &)  method,
const A arg_a,
const B arg_b,
const C arg_c 
)
inlinestatic

Definition at line 136 of file octave-link.h.

References A, arg_a, arg_b, arg_c, B, C, and method.

◆ post_event() [6/6]

template<class T , class A , class B , class C , class D >
static void octave_link::post_event ( T *  obj,
void(T::*)(const A &, const B &, const C &, const D &)  method,
const A arg_a,
const B arg_b,
const C arg_c,
const D &  arg_d 
)
inlinestatic

Definition at line 146 of file octave-link.h.

References A, arg_a, arg_b, arg_c, B, C, and method.

◆ post_exception()

static void octave_link::post_exception ( const std::exception_ptr &  p)
inlinestatic

Definition at line 156 of file octave-link.h.

References p.

Referenced by QtHandles::GLCanvas::do_print().

◆ post_input_event()

static void octave_link::post_input_event ( void  )
inlinestatic

Definition at line 313 of file octave-link.h.

Referenced by octave::base_reader::octave_gets().

◆ pre_input_event()

static void octave_link::pre_input_event ( void  )
inlinestatic

Definition at line 307 of file octave-link.h.

Referenced by octave::base_reader::octave_gets().

◆ process_events()

static void octave_link::process_events ( bool  disable = false)
inlinestatic

Definition at line 79 of file octave-link.h.

Referenced by octave_readline_hook().

◆ prompt_new_edit_file()

static bool octave_link::prompt_new_edit_file ( const std::string file)
inlinestatic

Definition at line 187 of file octave-link.h.

References file.

Referenced by F__octave_link_edit_file__().

◆ question_dialog()

static std::string octave_link::question_dialog ( const std::string msg,
const std::string title,
const std::string btn1,
const std::string btn2,
const std::string btn3,
const std::string btndef 
)
inlinestatic

Definition at line 200 of file octave-link.h.

Referenced by F__octave_link_question_dialog__().

◆ register_doc()

static bool octave_link::register_doc ( const std::string file)
inlinestatic

Definition at line 432 of file octave-link.h.

References file.

Referenced by F__octave_link_register_doc__().

◆ rethrow_exception_callback()

void octave_link::rethrow_exception_callback ( const std::exception_ptr &  p)
inlineprotected

Definition at line 535 of file octave-link.h.

References p.

Referenced by do_post_exception().

◆ set_default_prompts()

static void octave_link::set_default_prompts ( std::string ps1,
std::string ps2,
std::string ps4 
)
inlinestatic

Definition at line 371 of file octave-link.h.

Referenced by set_default_prompts().

◆ set_history()

static void octave_link::set_history ( const string_vector hist)
inlinestatic

Definition at line 289 of file octave-link.h.

Referenced by do_history(), and initialize_history().

◆ set_workspace() [1/2]

◆ set_workspace() [2/2]

static void octave_link::set_workspace ( bool  top_level,
const octave::symbol_scope scope,
bool  update_variable_editor = true 
)
inlinestatic

Definition at line 274 of file octave-link.h.

◆ show_doc()

static bool octave_link::show_doc ( const std::string file)
inlinestatic

Definition at line 420 of file octave-link.h.

References file.

Referenced by F__octave_link_show_doc__().

◆ show_preferences()

static bool octave_link::show_preferences ( )
inlinestatic

Definition at line 408 of file octave-link.h.

Referenced by F__octave_link_show_preferences__().

◆ unregister_doc()

static bool octave_link::unregister_doc ( const std::string file)
inlinestatic

Definition at line 444 of file octave-link.h.

References file.

Referenced by F__octave_link_unregister_doc__().

◆ update_breakpoint()

static void octave_link::update_breakpoint ( bool  insert,
const std::string file,
int  line,
const std::string cond = "" 
)
inlinestatic

Member Data Documentation

◆ debugging

bool octave_link::debugging
protected

Definition at line 482 of file octave-link.h.

Referenced by set_workspace().

◆ event_queue_mutex

octave::mutex* octave_link::event_queue_mutex
protected

Definition at line 477 of file octave-link.h.

Referenced by do_discard_events(), do_process_events(), and ~octave_link().

◆ gui_event_queue

octave::event_queue octave_link::gui_event_queue
protected

Definition at line 480 of file octave-link.h.

Referenced by do_discard_events(), and do_process_events().

◆ instance

octave_link * octave_link::instance = nullptr
staticprivate

Definition at line 470 of file octave-link.h.

Referenced by connect_link(), and set_workspace().

◆ link_enabled

bool octave_link::link_enabled
protected

Definition at line 483 of file octave-link.h.


The documentation for this class was generated from the following files: