comparison src/Visualization/paranormal/pn/pnrotozoom.h @ 0:13389e613d67 trunk

[svn] - initial import of audacious-plugins tree (lots to do)
author nenolod
date Mon, 18 Sep 2006 01:11:49 -0700
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:13389e613d67
1 /* Paranormal - A highly customizable audio visualization library
2 * Copyright (C) 2001 Jamie Gennis <jgennis@mindspring.com>
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
13 *
14 * You should have received a copy of the GNU Library General Public
15 * License along with this library; if not, write to the Free
16 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17 */
18
19 #ifndef __PN_ROTO_ZOOM_H__
20 #define __PN_ROTO_ZOOM_H__
21
22 #include "pnactuator.h"
23 #include "pnscript.h"
24 #include "pnsymboltable.h"
25
26 G_BEGIN_DECLS
27
28
29 enum
30 {
31 PN_ROTO_ZOOM_OPT_INIT_SCRIPT = PN_ACTUATOR_OPT_LAST,
32 PN_ROTO_ZOOM_OPT_FRAME_SCRIPT,
33 PN_ROTO_ZOOM_OPT_LAST
34 };
35
36 #define PN_TYPE_ROTO_ZOOM (pn_roto_zoom_get_type ())
37 #define PN_ROTO_ZOOM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PN_TYPE_ROTO_ZOOM, PnRotoZoom))
38 #define PN_ROTO_ZOOM_CLASS(class) (G_TYPE_CHECK_CLASS_CAST ((class), PN_TYPE_ROTO_ZOOM, PnRotoZoomClass))
39 #define PN_IS_ROTO_ZOOM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PN_TYPE_ROTO_ZOOM))
40 #define PN_IS_ROTO_ZOOM_CLASS(class) (G_TYPE_CHECK_CLASS_TYPE ((class), PN_TYPE_ROTO_ZOOM))
41 #define PN_ROTO_ZOOM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PN_TYPE_ROTO_ZOOM, PnRotoZoomClass))
42
43 typedef struct _PnRotoZoom PnRotoZoom;
44 typedef struct _PnRotoZoomClass PnRotoZoomClass;
45
46 struct _PnRotoZoom
47 {
48 PnActuator parent;
49
50 /* The script objects */
51 PnScript *init_script;
52 PnScript *frame_script;
53 PnSymbolTable *symbol_table;
54
55 /* The in-script variables */
56 PnVariable *zoom_var;
57 PnVariable *theta_var;
58 PnVariable *volume_var;
59 };
60
61 struct _PnRotoZoomClass
62 {
63 PnActuatorClass parent_class;
64 };
65
66 /* Creators */
67 GType pn_roto_zoom_get_type (void);
68 PnRotoZoom *pn_roto_zoom_new (void);
69
70 #endif /* __PN_ROTO_ZOOM_H__ */