1 /* Libvisual-plugins - Standard plugins for libvisual 2 * 3 * Copyright (C) 2004, 2005, 2006 Dennis Smit <ds@nerds-incorporated.org> 4 * 5 * Authors: Dennis Smit <ds@nerds-incorporated.org> 6 * 7 * $Id: actor_jakdaw.h,v 1.7 2006/01/22 13:25:25 synap Exp $ 8 * 9 * This program is free software; you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License as 11 * published by the Free Software Foundation; either version 2 12 * of the License, or (at your option) any later version. 13 * 14 * This program is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with this program; if not, write to the Free Software 21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 22 */ 23 24 #ifndef _ACTOR_JAKDAW_H 25 #define _ACTOR_JAKDAW_H 26 27 #include <libvisual/libvisual.h> 28 29 typedef enum { 30 PLOTTER_SCOPE_LINES, 31 PLOTTER_SCOPE_DOTS, 32 PLOTTER_SCOPE_SOLID, 33 PLOTTER_SCOPE_NOTHING 34 } JakdawPlotterOptions; 35 36 typedef enum { 37 PLOTTER_COLOUR_SOLID, 38 PLOTTER_COLOUR_RANDOM, 39 PLOTTER_COLOUR_MUSICTRIG 40 } JakdawPlotterColor; 41 42 typedef enum 43 { 44 FEEDBACK_ZOOMRIPPLE, 45 FEEDBACK_BLURONLY, 46 FEEDBACK_ZOOMROTATE, 47 FEEDBACK_SCROLL, 48 FEEDBACK_INTOSCREEN, 49 FEEDBACK_NEWRIPPLE 50 } JakdawFeedbackType; 51 52 typedef struct { 53 int xres; 54 int yres; 55 56 int decay_rate; 57 58 JakdawFeedbackType zoom_mode; 59 double zoom_ripplesize; 60 double zoom_ripplefact; 61 double zoom_zoomfact; 62 63 float plotter_amplitude; 64 JakdawPlotterColor plotter_colortype; 65 int plotter_scopecolor; 66 JakdawPlotterOptions plotter_scopetype; 67 68 /* Feedback privates */ 69 uint32_t *table; 70 uint32_t *new_image; 71 int tableptr; 72 73 /* PCM Buffer */ 74 VisBuffer *pcmbuf; 75 76 /* Spectrum buffer */ 77 VisBuffer *freqbuf; 78 79 /* Plugin it's random context */ 80 VisRandomContext *rcontext; 81 } JakdawPrivate; 82 83 #endif /* _ACTOR_JAKDAW_H */ 84