Beast - Music Synthesizer and Composer  0.11.1+10.g2da35
bseprocedure.hh File Reference
#include <bse/bseparam.hh>
Include dependency graph for bseprocedure.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  BseProcedureClass
 

Macros

#define BSE_PROCEDURE_TYPE(proc)
 
#define BSE_IS_PROCEDURE_CLASS(proc)
 
#define BSE_PROCEDURE_NAME(proc)
 
#define BSE_PROCEDURE_MAX_IN_PARAMS
 
#define BSE_PROCEDURE_MAX_OUT_PARAMS
 

Typedefs

typedef void(* BseProcedureInit) (BseProcedureClass *proc, GParamSpec **in_pspecs, GParamSpec **out_pspecs)
 
typedef Bse::Error(* BseProcedureExec) (BseProcedureClass *procedure, const GValue *in_values, GValue *out_values)
 
typedef gboolean(* BseProcedureNotify) (gpointer func_data, const gchar *proc_name, Bse::Error exit_status)
 
typedef Bse::Error(* BseProcedureMarshal) (gpointer marshal_data, BseProcedureClass *proc, const GValue *ivalues, GValue *ovalues)
 

Functions

Bse::Error bse_procedure_exec (const gchar *proc_name,...)
 
Bse::Error bse_procedure_exec_void (const gchar *proc_name,...)
 
GType bse_procedure_lookup (const gchar *proc_name)
 
Bse::Error bse_procedure_marshal_valist (GType proc_type, const GValue *first_value, BseProcedureMarshal marshal, gpointer marshal_data, gboolean skip_ovalues, va_list var_args)
 
Bse::Error bse_procedure_marshal (GType proc_type, const GValue *ivalues, GValue *ovalues, BseProcedureMarshal marshal, gpointer marshal_data)
 
Bse::Error bse_procedure_collect_input_args (BseProcedureClass *proc, const GValue *first_value, va_list var_args, GValue ivalues[BSE_PROCEDURE_MAX_IN_PARAMS])
 
Bse::Error bse_procedure_execvl (BseProcedureClass *proc, GSList *in_value_list, GSList *out_value_list, BseProcedureMarshal marshal, gpointer marshal_data)
 
const gchar * bse_procedure_type_register (const gchar *name, BsePlugin *plugin, GType *ret_type)
 

Function Documentation

Bse::Error bse_procedure_collect_input_args ( BseProcedureClass *  proc,
const GValue *  first_value,
va_list  var_args,
GValue  ivalues[BSE_PROCEDURE_MAX_IN_PARAMS] 
)
Parameters
procvalid BseProcedureClass
first_valuethe first input argument if not to be collected
var_argsva_list to collect input args from
ivaluesuninitialized GValue array with at least proc->n_in_pspecs members
Returns
Bse::Error value of error if any occoured during collection

Collect input arguments for a procedure call from a va_list. The first value may be supplied as first_value and will then not be collected. ivalues must be at least proc->n_in_pspecs elements long and all elements will be initialized after the function returns (even in error cases). first_value may be the same adress as ivalues, in whic hcase the first argument is entirely ignored and collection simply starts out with the second argument.

Referenced by bse_item_current_musical_tuning().

Here is the call graph for this function:

Here is the caller graph for this function:

Bse::Error bse_procedure_marshal_valist ( GType  proc_type,
const GValue *  first_value,
BseProcedureMarshal  marshal,
gpointer  marshal_data,
gboolean  skip_ovalues,
va_list  var_args 
)
Parameters
proc_typea type derived from BSE_TYPE_PROCEDURE
first_valuethe first input argument if not to be collected
marshalfunction marshalling the procedure call or NULL
marshal_datadata passed in to marshal
skip_ovalueswhether return value locations should be collected and filled in
var_argsva_list to collect input args from
Returns
Bse::Error value of error if any occoured

Collect input arguments for a procedure call from a va_list and call the procedure, optionally via marshal. If skip_ovalues is FALSE, the procedure return values will be stored in return value locations also collected from var_args.

Referenced by bse_item_current_musical_tuning(), and bse_procedure_collect_input_args().

Here is the caller graph for this function: