Add Russian translation provided by Валерий Крувялис <valkru@mail.ru>
[xiph-mirror.git] / sushivision / sushivision.h
bloba9674adb54130f51af5078df0ccef6d34ef6dc4f
1 /*
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)
8 * any later version.
9 *
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.
22 #ifndef _SUSHIVISION_
23 #define _SUSHIVISION_
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,
51 double hi);
53 int sv_dim_callback_value (int (*callback)(sv_dim_t *, void*),
54 void *callback_data);
56 /* objectives ****************************************************/
57 int sv_obj_new (char *decl,
58 void (*function)(double *,double *),
59 char *inputs,
60 char *outputs);
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,
69 char *obj,
70 char *dim);
72 sv_panel_t *sv_panel (char *name);
75 int sv_panel_callback_recompute (int (*callback)(sv_panel_t *p,void *data),
76 void *data);
78 int sv_panel_resample (int numerator,
79 int denominator);
81 int sv_panel_background (char *background);
83 int sv_panel_axis (char *axis,
84 sv_dim_t *d);
86 #endif