Skip to content
Snippets Groups Projects
Select Git revision
  • e3a26eab8a92709388debb9cb2763c33de0e7ae3
  • master default protected
  • 9.0
  • 8.0
  • 7.8
  • 7.6
  • 7.4
  • 7.2
  • 7.0
  • 0.6
  • rosuav/latex-markdown-renderer
  • rxnpatch/rxnpatch
  • marcus/gobject-introspection
  • rxnpatch/8.0
  • rosuav/pre-listening-ports
  • nt-tools
  • rosuav/async-annotations
  • rosuav/pgsql-ssl
  • rxnpatch/rxnpatch-broken/2023-10-06T094250
  • grubba/fdlib
  • grubba/wip/sakura/8.0
  • v8.0.2000
  • v8.0.1998
  • v8.0.1996
  • v8.0.1994
  • v8.0.1992
  • v8.0.1990
  • v8.0.1988
  • v8.0.1986
  • rxnpatch/clusters/8.0/2025-04-29T124414
  • rxnpatch/2025-04-29T124414
  • v8.0.1984
  • v8.0.1982
  • v8.0.1980
  • v8.0.1978
  • v8.0.1976
  • v8.0.1974
  • v8.0.1972
  • v8.0.1970
  • v8.0.1968
  • v8.0.1966
41 results

program.c

Blame
  • image.h 3.57 KiB
    /*
    **! module Image
    **! note
    **!	$Id: image.h,v 1.21 1998/04/16 04:32:36 mirar Exp $
    */
    
    #ifdef PIKE_IMAGE_IMAGE_H
    #error IMAGE.h included twice
    #endif
    
    #define PIKE_IMAGE_IMAGE_H
    
    
    #define MAX_NUMCOL 32768
    
    #define QUANT_SELECT_CACHE 6
    
    #define COLORTYPE unsigned char
    
    #define FS_SCALE 1024
    
    typedef struct 
    {
       COLORTYPE r,g,b;
    /*   COLORTYPE __padding_dont_use__;*/
    } rgb_group;
    
    typedef struct 
    {
       COLORTYPE r,g,b,alpha;
    } rgba_group;
    
    typedef struct
    {
       INT32 r,g,b;
    } rgbl_group;
    
    typedef struct
    {
       float r,g,b;
    } rgbd_group; /* use float, it gets so big otherwise... */
    
    typedef struct
    {
       float r,g,b,alpha;
    } rgbda_group; /* use float, it gets so big otherwise... */
    
    struct image
    {
       rgb_group *img;
       INT_TYPE xsize,ysize;
       rgb_group rgb;
       unsigned char alpha;
    };
    
    /* COMPAT: encoding of a gif - from togif */
    
    void image_togif(INT32 args);
    void image_togif_fs(INT32 args);
    void image_fromgif(INT32 args);
    void image_gif_begin(INT32 args);
    void image_gif_add(INT32 args);
    void image_gif_add_fs(INT32 args);
    void image_gif_add_nomap(INT32 args);
    void image_gif_add_fs_nomap(INT32 args);
    void image_gif_end(INT32 args);
    void image_gif_netscape_loop(INT32 args);
    
    /* blit.c */
    
    void img_clear(rgb_group *dest,rgb_group rgb,INT32 size);
    void img_box_nocheck(INT32 x1,INT32 y1,INT32 x2,INT32 y2);
    void img_box(INT32 x1,INT32 y1,INT32 x2,INT32 y2);
    void img_blit(rgb_group *dest,rgb_group *src,INT32 width,
    	      INT32 lines,INT32 moddest,INT32 modsrc);
    void img_crop(struct image *dest,
    	      struct image *img,
    	      INT32 x1,INT32 y1,
    	      INT32 x2,INT32 y2);
    void img_clone(struct image *newimg,struct image *img);
    void image_paste(INT32 args);
    void image_paste_alpha(INT32 args);
    void image_paste_mask(INT32 args);
    void image_paste_alpha_color(INT32 args);
    
    void image_add_layers(INT32 args);
    enum layer_method
       { LAYER_NOP=0, LAYER_MAX=1, LAYER_MIN=2, 
         LAYER_MULT=3, LAYER_ADD=4, LAYER_DIFF=5 };
    	 
    
    /* matrix.c */
    
    void image_scale(INT32 args);
    void image_translate(INT32 args);
    void image_translate_expand(INT32 args);
    void image_skewx(INT32 args);
    void image_skewy(INT32 args);
    void image_skewx_expand(INT32 args);
    void image_skewy_expand(INT32 args);
    void image_rotate(INT32 args);
    void image_rotate_expand(INT32 args);
    void image_cw(INT32 args);
    void image_ccw(INT32 args);
    void image_ccw(INT32 args);
    void image_mirrorx(INT32 args);
    void image_mirrory(INT32 args);
    
    /* pnm.c */
    
    void image_toppm(INT32 args);
    void image_frompnm(INT32 args);
     
    /* pattern.c */
    
    void image_noise(INT32 args);
    void image_turbulence(INT32 args);
    void image_noise_init(void);
    
    /* dct.c */
    
    void image_dct(INT32 args);
    
    /* operator.c */
    
    void image_operator_minus(INT32 args);
    void image_operator_plus(INT32 args);
    void image_operator_multiply(INT32 args);
    void image_operator_maximum(INT32 args);
    void image_operator_minimum(INT32 args);
    
    void image_operator_equal(INT32 args);
    void image_operator_lesser(INT32 args);
    void image_operator_greater(INT32 args);
    
    void image_cast(INT32 args);
    
    void image_min(INT32 args);
    void image_max(INT32 args);
    void image_sum(INT32 args);
    void image_sumf(INT32 args);
    void image_average(INT32 args);
    
    void image_find_max(INT32 args);
    void image_find_min(INT32 args);
    
    /* x.c */
    
    void image_to8bit_closest(INT32 args);
    void image_to8bit(INT32 args);
    void image_to8bit_fs(INT32 args);
    void image_tozbgr(INT32 args);
    void image_torgb(INT32 args);
    void image_to8bit_rgbcube(INT32 args);
    void image_to8bit_rgbcube_rdither(INT32 args);
    void image_tobitmap(INT32 args);
    
    /* polyfill.c */
    
    void image_polyfill(INT32 args);
    
    /* orient.c */
    
    void image_orient(INT32 args);
    void image_orient4(INT32 args);