diff options
Diffstat (limited to 'gst/goom/goom_core.h')
-rw-r--r-- | gst/goom/goom_core.h | 38 |
1 files changed, 34 insertions, 4 deletions
diff --git a/gst/goom/goom_core.h b/gst/goom/goom_core.h index 15f942d2..1fbc0ee8 100644 --- a/gst/goom/goom_core.h +++ b/gst/goom/goom_core.h @@ -3,11 +3,41 @@ #include <glib.h> -void goom_init (guint32 resx, guint32 resy); -void goom_set_resolution (guint32 resx, guint32 resy); +typedef struct ZoomFilterData ZoomFilterData; -guint32 * goom_update (gint16 data [2][512]); +typedef struct +{ +/**-----------------------------------------------------** + ** SHARED DATA ** + **-----------------------------------------------------**/ + guint32 *pixel; + guint32 *back; + guint32 *p1, *p2; + guint32 cycle; -void goom_close (); + guint32 resolx, resoly, buffsize; + + int lockvar; /* pour empecher de nouveaux changements */ + int goomvar; /* boucle des gooms */ + int totalgoom; /* nombre de gooms par seconds */ + int agoom; /* un goom a eu lieu.. */ + int loopvar; /* mouvement des points */ + int speedvar; /* vitesse des particules */ + int lineMode; /* l'effet lineaire a dessiner */ + char goomlimit; /* sensibilité du goom */ + + ZoomFilterData *zfd; + + /* Random table */ + gint *rand_tab; + guint rand_pos; +} GoomData; + +void goom_init (GoomData *goomdata, guint32 resx, guint32 resy); +void goom_set_resolution (GoomData *goomdata, guint32 resx, guint32 resy); + +guint32 *goom_update (GoomData *goomdata, gint16 data [2][512]); + +void goom_close (GoomData *goomdata); #endif |