gstreamer/gst/goom2k1/filters.h
Bastien Nocera a7bc7485b1 configure.ac: Add checks for Flex/Yacc/Bison and other furry animals, for the new goom 2k4 based plugin
Original commit message from CVS:
2008-02-23  Bastien Nocera  <hadess@hadess.net>

* configure.ac: Add checks for Flex/Yacc/Bison and other
furry animals, for the new goom 2k4 based plugin

* gst/goom/*: Update to use goom 2k4, uses liboil to detect
CPU optimisations (not working yet), move the old plugin to...

* gst/goom2k1/*: ... here, in case somebody is sick enough

Fixes #515073
2008-02-23 01:51:37 +00:00

84 lines
1.8 KiB
C

#ifndef FILTERS_H
#define FILTERS_H
#include <glib.h>
#include "graphic.h"
#include "goom_core.h"
#define NORMAL_MODE 0
#define WAVE_MODE 1
#define CRYSTAL_BALL_MODE 2
#define SCRUNCH_MODE 3
#define AMULETTE_MODE 4
#define WATER_MODE 5
struct ZoomFilterData
{
int vitesse;
unsigned char pertedec;
unsigned char sqrtperte;
int middleX;
int middleY;
char reverse;
char mode;
/** @since June 2001 */
int hPlaneEffect;
int vPlaneEffect;
char noisify;
guint32 res_x;
guint32 res_y;
guint32 buffsize;
guint32 *buffer;
guint32 *pos10;
guint32 *c[4];
int *firedec;
int wave;
int wavesp;
};
void pointFilter(GoomData *goomdata, Color c,
float t1, float t2, float t3, float t4,
guint32 cycle);
/* filtre de zoom :
le contenu de pix1 est copie dans pix2, avec l'effet appliqué
midx et midy represente le centre du zoom
void zoomFilter(Uint *pix1, Uint *pix2, Uint middleX, Uint middleY);
void zoomFilterRGB(Uint *pix1,
Uint *pix2,
Uint middleX,
Uint middleY);
*/
ZoomFilterData *zoomFilterNew ();
void zoomFilterDestroy (ZoomFilterData *zf);
void zoomFilterFastRGB (GoomData *goomdata, ZoomFilterData *zf,
int zfd_update);
/* filtre sin :
le contenu de pix1 est copie dans pix2, avec l'effet appliqué
cycle est la variable de temps.
mode vaut SIN_MUL ou SIN_ADD
rate est le pourcentage de l'effet appliqué
lenght : la longueur d'onde (1..10) [5]
speed : la vitesse (1..100) [10]
*/
/*
void sinFilter(Uint *pix1,Uint *pix2,
Uint cycle,
Uint mode,
Uint rate,
char lenght,
Uint speed);
*/
#define SIN_MUL 1
#define SIN_ADD 2
#endif