]>
git.saurik.com Git - wxWidgets.git/blob - src/tiff/mkspans.c
   4  * Copyright (c) 1991-1997 Sam Leffler 
   5  * Copyright (c) 1991-1997 Silicon Graphics, Inc. 
   7  * Permission to use, copy, modify, distribute, and sell this software and  
   8  * its documentation for any purpose is hereby granted without fee, provided 
   9  * that (i) the above copyright notices and this permission notice appear in 
  10  * all copies of the software and related documentation, and (ii) the names of 
  11  * Sam Leffler and Silicon Graphics may not be used in any advertising or 
  12  * publicity relating to the software without the specific, prior written 
  13  * permission of Sam Leffler and Silicon Graphics. 
  15  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,  
  16  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY  
  17  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.   
  19  * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR 
  20  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, 
  21  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, 
  22  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF  
  23  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE  
  30  * Hack program to construct tables used to find 
  31  * runs of zeros and ones in Group 3 Fax encoding. 
  36         unsigned char runs
[256]; 
  40         printf("static u_char %s[256] = {\n", name
); 
  42         for (i 
= 0; i 
< 256; i
++) { 
  43                 printf("%s%d", sep
, runs
[i
]); 
  44                 if (((i 
+ 1) % 16) == 0) { 
  45                         printf(",       /* 0x%02x - 0x%02x */\n", i
-15, i
); 
  55         unsigned char runs
[2][256]; 
  57         memset(runs
[0], 0, 256*sizeof (char)); 
  58         memset(runs
[1], 0, 256*sizeof (char)); 
  59         { register int run
, runlen
, i
; 
  61           for (run 
= 0x80; run 
!= 0xff; run 
= (run
>>1)|0x80) { 
  62                 for (i 
= run
-1; i 
>= 0; i
--) { 
  63                         runs
[1][run
|i
] = runlen
; 
  64                         runs
[0][(~(run
|i
)) & 0xff] = runlen
; 
  68           runs
[1][0xff] = runs
[0][0] = 8; 
  70         dumparray("bruns", runs
[0]); 
  71         dumparray("wruns", runs
[1]);