Beast - Music Synthesizer and Composer  0.11.1+10.g2da35
bstprocedure.hh
Go to the documentation of this file.
1  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
2 #ifndef __BST_PROCEDURE_H__
3 #define __BST_PROCEDURE_H__
4 
5 #include "bstparamview.hh"
6 
7 /* --- Gtk+ type macros --- */
8 #define BST_TYPE_PROCEDURE_SHELL (bst_procedure_shell_get_type ())
9 #define BST_PROCEDURE_SHELL(object) (GTK_CHECK_CAST ((object), BST_TYPE_PROCEDURE_SHELL, BstProcedureShell))
10 #define BST_PROCEDURE_SHELL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), BST_TYPE_PROCEDURE_SHELL, BstProcedureShellClass))
11 #define BST_IS_PROCEDURE_SHELL(object) (GTK_CHECK_TYPE ((object), BST_TYPE_PROCEDURE_SHELL))
12 #define BST_IS_PROCEDURE_SHELL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), BST_TYPE_PROCEDURE_SHELL))
13 #define BST_PROCEDURE_SHELL_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), BST_TYPE_PROCEDURE_SHELL, BstProcedureShellClass))
14 
15 
16 /* --- structures & typedefs --- */
17 typedef struct _BstProcedureShell BstProcedureShell;
18 typedef struct _BstProcedureShellClass BstProcedureShellClass;
20 {
21  GtkVBox parent_object;
22 
23  SfiGlueProc *proc;
24  SfiRec *prec;
25 
26  guint n_preset_params;
27  SfiRing *params; /* n_in_params + n_out_params params */
28 
29  guint in_modal_selection : 1;
30  guint in_execution : 1;
31  guint hide_dialog_on_exec : 1;
32 };
34 {
35  GtkVBoxClass parent_class;
36 };
37 
38 
39 /* --- prototypes --- */
40 GtkType bst_procedure_shell_get_type (void);
41 GtkWidget* bst_procedure_shell_new (SfiGlueProc *proc);
42 void bst_procedure_shell_update (BstProcedureShell *procedure_shell);
43 void bst_procedure_shell_rebuild (BstProcedureShell *procedure_shell);
44 void bst_procedure_shell_execute (BstProcedureShell *procedure_shell);
45 void bst_procedure_shell_set_proc (BstProcedureShell *procedure_shell,
46  SfiGlueProc *proc);
47 void bst_procedure_shell_reset (BstProcedureShell *procedure_shell);
48 void bst_procedure_shell_unpreset (BstProcedureShell *procedure_shell);
49 gboolean bst_procedure_shell_preset (BstProcedureShell *procedure_shell,
50  const gchar *name,
51  const GValue *value,
52  gboolean lock_preset);
53 
54 
55 /* --- convenience --- */
56 BstProcedureShell* bst_procedure_shell_global (void);
57 void bst_procedure_exec (const gchar *procedure_name,
58  const gchar *preset_param,
59  ...) G_GNUC_NULL_TERMINATED;
60 void bst_procedure_exec_auto (const gchar *procedure_name,
61  const gchar *preset_param,
62  ...) G_GNUC_NULL_TERMINATED;
63 void bst_procedure_exec_modal (const gchar *procedure_name,
64  const gchar *preset_param,
65  ...) G_GNUC_NULL_TERMINATED;
66 GParamSpec* bst_procedure_ref_pspec (const gchar *procedure_name,
67  const gchar *parameter);
68 
69 #endif /* __BST_PROCEDURE_H__ */
Definition: bstprocedure.hh:19
Definition: bstprocedure.hh:33
Definition: sfiglue.hh:31
Definition: sfiring.hh:21