00001 /* 00002 * effect.h 00003 * Copyright 2010 John Lindgren 00004 * 00005 * This file is part of Audacious. 00006 * 00007 * Audacious is free software: you can redistribute it and/or modify it under 00008 * the terms of the GNU General Public License as published by the Free Software 00009 * Foundation, version 2 or version 3 of the License. 00010 * 00011 * Audacious is distributed in the hope that it will be useful, but WITHOUT ANY 00012 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 00013 * A PARTICULAR PURPOSE. See the GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License along with 00016 * Audacious. If not, see <http://www.gnu.org/licenses/>. 00017 * 00018 * The Audacious team does not consider modular code linking to Audacious or 00019 * using our public API to be a derived work. 00020 */ 00021 00022 00023 #ifndef AUDACIOUS_EFFECT_H 00024 #define AUDACIOUS_EFFECT_H 00025 00026 #include <libaudcore/core.h> 00027 00028 #include "types.h" 00029 00030 void effect_start (int * channels, int * rate); 00031 void effect_process (float * * data, int * samples); 00032 void effect_flush (void); 00033 void effect_finish (float * * data, int * samples); 00034 int effect_decoder_to_output_time (int time); 00035 int effect_output_to_decoder_time (int time); 00036 00037 bool_t effect_plugin_start (PluginHandle * plugin); 00038 void effect_plugin_stop (PluginHandle * plugin); 00039 00040 #endif