26#if ! defined (octave_hook_fcn_h)
27#define octave_hook_fcn_h 1
29#include "octave-config.h"
51 virtual std::string
id (
void)
const {
return ""; }
53 virtual bool is_valid (
void)
const {
return false; }
64 static std::shared_ptr<base_hook_function>
79 std::string
id (
void)
const {
return m_rep->id (); }
85 m_rep->eval (initial_args);
90 std::shared_ptr<base_hook_function>
m_rep;
127 std::ostringstream buf;
129 m_ident = fh->fcn_name () +
':' + buf.str ();
154 typedef std::map<std::string, hook_function>
map_type;
198 std::string hook_fcn_id = p->first;
204 hook_fcn.
eval (initial_args);
216#if defined (OCTAVE_PROVIDE_DEPRECATED_SYMBOLS)
217OCTAVE_DEPRECATED (7,
"use 'octave::base_hook_function' instead")
218typedef
octave::base_hook_function base_hook_function;
220OCTAVE_DEPRECATED (7, "use '
octave::hook_function' instead")
221typedef
octave::hook_function hook_function;
223OCTAVE_DEPRECATED (7, "use '
octave::named_hook_function' instead")
224typedef
octave::named_hook_function named_hook_function;
226OCTAVE_DEPRECATED (7, "use '
octave::fcn_handle_hook_function' instead")
227typedef
octave::fcn_handle_hook_function fcn_handle_hook_function;
229OCTAVE_DEPRECATED (7, "use '
octave::hook_function_list' instead")
230typedef
octave::hook_function_list hook_function_list;
base_hook_function(const base_hook_function &)=default
virtual void eval(const octave_value_list &)
virtual bool is_valid(void) const
base_hook_function(void)=default
virtual ~base_hook_function(void)=default
virtual std::string id(void) const
octave_value m_fcn_handle
std::string id(void) const
bool is_valid(void) const
fcn_handle_hook_function(const octave_value &fh_arg, const octave_value &d)
void eval(const octave_value_list &initial_args)
map_type::iterator iterator
void run(const octave_value_list &initial_args=octave_value_list())
~hook_function_list(void)=default
hook_function_list & operator=(const hook_function_list &lst)=default
hook_function_list(const hook_function_list &lst)=default
const_iterator find(const std::string &id) const
iterator find(const std::string &id)
const_iterator end(void) const
map_type::const_iterator const_iterator
hook_function_list(void)=default
std::map< std::string, hook_function > map_type
void insert(const std::string &id, const hook_function &f)
hook_function & operator=(const hook_function &hf)=default
std::shared_ptr< base_hook_function > m_rep
hook_function(const hook_function &hf)=default
std::string id(void) const
~hook_function(void)=default
bool is_valid(void) const
void eval(const octave_value_list &initial_args)
std::string id(void) const
named_hook_function(const std::string &n, const octave_value &d)
void eval(const octave_value_list &initial_args)
bool is_valid(void) const
OCTINTERP_API octave_fcn_handle * fcn_handle_value(bool silent=false) const
F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE * d
static double f(double k, double l_nu, double c_pm)
octave_function * is_valid_function(const std::string &fcn_name, const std::string &warn_for, bool warn)