/*
 *  php-pipi      Php binding for Libpipi
 *  Copyright (c) 2008 Vion Nicolas <nico@picapo.net>
 *
 *
 *  This library is free software. It comes without any warranty, to
 *  the extent permitted by applicable law. You can redistribute it
 *  and/or modify it under the terms of the Do What The Fuck You Want
 *  To Public License, Version 2, as published by Sam Hocevar. See
 *  http://sam.zoy.org/wtfpl/COPYING for more details.
 */

#ifndef PHP_PIPI_H
#define PHP_PIPI_H

#include <pipi.h>


#define PHP_PIPI_VERSION "0.0"
#define PHP_PIPI_EXTNAME "pipi"

#define PHP_PIPI_IMAGE_RES_NAME "pipi_image"
#define PHP_PIPI_CONTEXT_RES_NAME "pipi_context"
#define PHP_PIPI_HISTOGRAM_RES_NAME "pipi_histogram"

int le_pipi_image;
int le_pipi_context;
int le_pipi_histogram;

PHP_MINIT_FUNCTION(pipi);
PHP_MINFO_FUNCTION(pipi);

PHP_FUNCTION(pipi_get_color_from_string);
PHP_FUNCTION(pipi_get_version);
PHP_FUNCTION(pipi_create_context);
PHP_FUNCTION(pipi_get_command_list);
PHP_FUNCTION(pipi_command);
PHP_FUNCTION(pipi_load);
PHP_FUNCTION(pipi_load_stock);
PHP_FUNCTION(pipi_new);
PHP_FUNCTION(pipi_copy);
PHP_FUNCTION(pipi_save);
PHP_FUNCTION(pipi_set_gamma);
PHP_FUNCTION(pipi_get_pixels);
PHP_FUNCTION(pipi_get_image_width);
PHP_FUNCTION(pipi_get_image_height);
PHP_FUNCTION(pipi_get_image_pitch);
PHP_FUNCTION(pipi_get_image_last_modified);
PHP_FUNCTION(pipi_get_format_name);
PHP_FUNCTION(pipi_measure_msd);
PHP_FUNCTION(pipi_measure_rmsd);
PHP_FUNCTION(pipi_resize);
PHP_FUNCTION(pipi_render_random);
PHP_FUNCTION(pipi_render_bayer);
PHP_FUNCTION(pipi_render_halftone);
PHP_FUNCTION(pipi_rgb);
PHP_FUNCTION(pipi_red);
PHP_FUNCTION(pipi_green);
PHP_FUNCTION(pipi_blue);
PHP_FUNCTION(pipi_mean);
PHP_FUNCTION(pipi_min);
PHP_FUNCTION(pipi_max);
PHP_FUNCTION(pipi_add);
PHP_FUNCTION(pipi_sub);
PHP_FUNCTION(pipi_difference);
PHP_FUNCTION(pipi_multiply);
PHP_FUNCTION(pipi_divide);
PHP_FUNCTION(pipi_screen);
PHP_FUNCTION(pipi_overlay);
PHP_FUNCTION(pipi_convolution);
PHP_FUNCTION(pipi_gaussian_blur);
PHP_FUNCTION(pipi_gaussian_blur_ext);
PHP_FUNCTION(pipi_box_blur);
PHP_FUNCTION(pipi_box_blur_ext);
PHP_FUNCTION(pipi_brightness);
PHP_FUNCTION(pipi_contrast);
PHP_FUNCTION(pipi_autocontrast);
PHP_FUNCTION(pipi_invert);
PHP_FUNCTION(pipi_threshold);
PHP_FUNCTION(pipi_hflip);
PHP_FUNCTION(pipi_vflip);
PHP_FUNCTION(pipi_rotate90);
PHP_FUNCTION(pipi_rotate180);
PHP_FUNCTION(pipi_rotate270);
PHP_FUNCTION(pipi_median);
PHP_FUNCTION(pipi_median_ext);
PHP_FUNCTION(pipi_dilate);
PHP_FUNCTION(pipi_erode);
PHP_FUNCTION(pipi_order);
PHP_FUNCTION(pipi_tile);
PHP_FUNCTION(pipi_flood_fill);
PHP_FUNCTION(pipi_draw_line);
PHP_FUNCTION(pipi_draw_rectangle);
PHP_FUNCTION(pipi_draw_polyline);
PHP_FUNCTION(pipi_draw_bezier4);
PHP_FUNCTION(pipi_reduce);
PHP_FUNCTION(pipi_dither_ediff);
PHP_FUNCTION(pipi_dither_ordered);
PHP_FUNCTION(pipi_dither_ordered_ext);
PHP_FUNCTION(pipi_dither_halftone);
PHP_FUNCTION(pipi_dither_random);
PHP_FUNCTION(pipi_dither_ostromoukhov);
PHP_FUNCTION(pipi_dither_dbs);
PHP_FUNCTION(pipi_dither_24to16);
PHP_FUNCTION(pipi_new_histogram);
PHP_FUNCTION(pipi_get_image_histogram);
PHP_FUNCTION(pipi_render_histogram);

extern zend_module_entry pipi_module_entry;
#define phpext_pipi_ptr &pipi_module_entry


#endif