libweed 0.0.3

weed-plugin-utils.h

Go to the documentation of this file.
00001 /* WEED is free software; you can redistribute it and/or
00002    modify it under the terms of the GNU Lesser General Public
00003    License as published by the Free Software Foundation; either
00004    version 3 of the License, or (at your option) any later version.
00005 
00006    Weed is distributed in the hope that it will be useful,
00007    but WITHOUT ANY WARRANTY; without even the implied warranty of
00008    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00009    Lesser General Public License for more details.
00010 
00011    You should have received a copy of the GNU Lesser General Public
00012    License along with this source code; if not, write to the Free Software
00013    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
00014 
00015 
00016    Weed is developed by:
00017 
00018    Gabriel "Salsaman" Finch - http://lives.sourceforge.net
00019 
00020    mainly based on LiViDO, which is developed by:
00021 
00022 
00023    Niels Elburg - http://veejay.sf.net
00024 
00025    Gabriel "Salsaman" Finch - http://lives.sourceforge.net
00026 
00027    Denis "Jaromil" Rojo - http://freej.dyne.org
00028 
00029    Tom Schouten - http://zwizwa.fartit.com
00030 
00031    Andraz Tori - http://cvs.cinelerra.org
00032 
00033    reviewed with suggestions and contributions from:
00034 
00035    Silvano "Kysucix" Galliani - http://freej.dyne.org
00036 
00037    Kentaro Fukuchi - http://megaui.net/fukuchi
00038 
00039    Jun Iio - http://www.malib.net
00040 
00041    Carlo Prelz - http://www2.fluido.as:8080/
00042 
00043 */
00044 
00045 /* (C) Gabriel "Salsaman" Finch, 2005 - 2007 */
00046 
00047 #ifndef __WEED_PLUGIN_UTILS_H__
00048 #define __WEED_PLUGIN_UTILS_H__
00049 
00050 #ifndef __WEED_H__
00051 #include <weed/weed.h>
00052 #endif
00053 
00054 #ifndef __WEED_PALETTES_H__
00055 #include <weed/weed-palettes.h>
00056 #endif
00057 
00058 #ifdef __cplusplus
00059 extern "C"
00060 {
00061 #endif /* __cplusplus */
00062 
00063   weed_plant_t *weed_plugin_info_init (weed_bootstrap_f weed_boot, int num_versions, int *api_versions);
00064   int weed_get_api_version(weed_plant_t *plugin_info);
00065   weed_plant_t *weed_channel_template_init (const char *name, int flags, int *palettes);
00066   weed_plant_t *weed_audio_channel_template_init (const char *name, int flags);
00067   weed_plant_t *weed_filter_class_init (const char *name, const char *author, int version, int flags, weed_init_f init_func, weed_process_f process_func, weed_deinit_f deinit_func, weed_plant_t **in_chantmpls, weed_plant_t **out_chantmpls, weed_plant_t **in_paramtmpls, weed_plant_t **out_paramtmpls);
00068   void weed_plugin_info_add_filter_class (weed_plant_t *plugin_info, weed_plant_t *filter_class);
00069   weed_plant_t *weed_parameter_template_get_gui (weed_plant_t *paramt);
00070   weed_plant_t *weed_filter_class_get_gui (weed_plant_t *filter);
00071   
00072   weed_plant_t *weed_integer_init (const char *name, const char *label, int def, int min, int max);
00073   weed_plant_t *weed_string_list_init (const char *name, const char *label, int def, char **list);
00074   weed_plant_t *weed_switch_init (const char *name, const char *label, int def);
00075   weed_plant_t *weed_radio_init (const char *name, const char *label, int def, int group);
00076   weed_plant_t *weed_float_init (const char *name, const char *label, double def, double min, double max);
00077   weed_plant_t *weed_text_init (const char *name, const char *label, const char *def);
00078   weed_plant_t *weed_colRGBi_init (const char *name, const char *label, int red, int green, int blue);
00079   weed_plant_t *weed_colRGBd_init (const char *name, const char *label, double red, double green, double blue);
00080 
00081   weed_plant_t **weed_clone_plants (weed_plant_t **plants);
00082 
00083 #ifdef __cplusplus
00084 }
00085 #endif /* __cplusplus */
00086 
00087 #endif // #ifndef __WEED_PLUGIN_UTILS_H__
00088 
00089 
 All Data Structures Files Functions Variables Typedefs Defines