3 * sushivision copyright (C) 2006-2007 Monty <monty@xiph.org>
5 * sushivision is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2, or (at your option)
10 * sushivision is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with sushivision; see the file COPYING. If not, write to the
17 * Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
25 typedef struct sv_panel sv_panel_t
;
26 typedef struct sv_dim sv_dim_t
;
27 typedef struct sv_obj sv_obj_t
;
29 /* toplevel ******************************************************/
31 extern int sv_init(void);
32 extern int sv_exit(void);
33 extern int sv_wake(void);
34 extern int sv_join(void);
35 extern int sv_suspend(int);
36 extern int sv_resume(void);
37 extern int sv_save(char *filename
);
38 extern int sv_load(char *filename
);
40 /* dimensions ****************************************************/
42 sv_dim_t
*sv_dim_new (char *decl
);
44 sv_dim_t
*sv_dim (char *name
);
46 int sv_dim_scale (char *format
);
48 int sv_dim_value (double val
);
50 int sv_dim_bracket (double lo
,
53 int sv_dim_callback_value (int (*callback
)(sv_dim_t
*, void*),
56 /* objectives ****************************************************/
57 int sv_obj_new (char *decl
,
58 void (*function
)(double *,double *),
62 sv_obj_t
*sv_obj (char *name
);
64 int sv_obj_scale (char *format
);
66 /* panels ********************************************************/
68 sv_panel_t
*sv_panel_new (char *decl
,
72 sv_panel_t
*sv_panel (char *name
);
75 int sv_panel_callback_recompute (int (*callback
)(sv_panel_t
*p
,void *data
),
78 int sv_panel_resample (int numerator
,
81 int sv_panel_background (char *background
);
83 int sv_panel_axis (char *axis
,