2 * Copyright (c) 1997 by Massimino Pascal <Pascal.Massimon@ens.fr>
4 * ifs.h: modified iterated functions system for goom.
6 * Permission to use, copy, modify, and distribute this software and its
7 * documentation for any purpose and without fee is hereby granted,
8 * provided that the above copyright notice appear in all copies and that
9 * both that copyright notice and this permission notice appear in
10 * supporting documentation.
12 * This file is provided AS IS with no warranties of any kind. The author
13 * shall have no liability with respect to the infringement of copyrights,
14 * trade secrets or any patents by this file or any part thereof. In no
15 * event will the author be liable for any lost revenue or profits or
16 * other special, indirect and consequential damages.
18 * If this mode is weird and you have an old MetroX server, it is buggy.
19 * There is a free SuSE-enhanced MetroX X server that is fine.
21 * When shown ifs, Diana Rose (4 years old) said, "It looks like dancing."
24 * 13-Dec-2003: Added some goom specific stuffs (to make ifs a VisualFX).
25 * 11-Apr-2002: jeko@ios-software.com: Make ifs.c system-indendant. (ifs.h added)
26 * 01-Nov-2000: Allocation checks
27 * 10-May-1997: jwz@jwz.org: turned into a standalone program.
28 * Made it render into an offscreen bitmap and then copy
29 * that onto the screen, to reduce flicker.
35 #include "goom_config.h"
36 #include "goom_graphic.h"
37 #include "goom_plugin_info.h"
38 #include "goom_visual_fx.h"
40 void ifs_visualfx_create(VisualFX *vfx);
42 /* init ifs for a (width)x(height) output. * /
43 void init_ifs (PluginInfo *goomInfo, int width, int height);
45 / * draw an ifs on the buffer (which size is width * height)
46 increment means that we draw 1/increment of the ifs's points * /
47 void ifs_update (PluginInfo *goomInfo, Pixel * buffer, Pixel * back, int width, int height, int increment);
49 / * free all ifs's data. * /
50 void release_ifs (void);