home *** CD-ROM | disk | FTP | other *** search
/ Mega A/V / mega_av.zip / mega_av / GRAPHUTL / PBMPLUS.ZIP / LIBPPM.MAN < prev    next >
Text File  |  1991-08-11  |  14KB  |  199 lines

  1.  
  2.  
  3. libppm(3)                  Unix Programmer's Manual                  libppm(3)
  4.  
  5.  
  6. NNNAAAMMMEEE
  7.      libppm - functions to support portable pixmap programs
  8.  
  9. SSSYYYNNNOOOPPPSSSIIISSS
  10.  
  11.      #include <ppm.h>
  12.      cc ... libppm.a libpgm.a libpbm.a
  13.  
  14.  
  15. DDDEEESSSCCCRRRIIIPPPTTTIIIOOONNN
  16.  
  17.      typedef ... pixel;
  18.      typedef ... pixval;
  19.      #define PPM_MAXMAXVAL ...
  20.      extern pixval ppm_pbmmaxval;
  21.  
  22.      EEEaaaccchhh pppiiixxxeeelll contains three pppiiixxxvvvaaallls, each of which should contain only  the
  23.      values  between  000  and  PPPPPPMMM___MMMAAAXXXMMMAAAXXXVVVAAALLL.  ppppppmmm___pppbbbmmmmmmaaaxxxvvvaaalll is the maxval used
  24.      when a PPM program reads a PBM file.  Normally it is 1; however, for some
  25.      programs, a larger value gives better results.
  26.  
  27.      #define PPM_FORMAT ...
  28.      #define RPPM_FORMAT ...
  29.      #define PPM_TYPE PPM_FORMAT
  30.      int PPM_FORMAT_TYPE( int format )
  31.  
  32.      FFFooorrr dddiiissstttiiinnnggguuuiiissshhhiiinnnggg dddiiiffffffeeerrreeennnttt fffiiillleee fffooorrrmmmaaatttsss aaannnddd tttyyypppeeesss...
  33.  
  34.      pppiiixxxvvvaaalll PPPPPPMMM___GGGEEETTTRRR((( pppiiixxxeeelll ppp )))
  35.      pppiiixxxvvvaaalll PPPPPPMMM___GGGEEETTTGGG((( pppiiixxxeeelll ppp )))
  36.      pppiiixxxvvvaaalll PPPPPPMMM___GGGEEETTTBBB((( pppiiixxxeeelll ppp )))
  37.  
  38.      TTThhheeessseee ttthhhrrreeeeee mmmaaacccrrrooosss rrreeetttrrriiieeevvveee ttthhheee rrreeeddd,,, gggrrreeeeeennn ooorrr bbbllluuueee vvvaaallluuueee fffrrrooommm  ttthhheee  gggiiivvveeennn
  39.      pppiiixxxeeelll...
  40.  
  41.      vvvoooiiiddd PPPPPPMMM___AAASSSSSSIIIGGGNNN((( pppiiixxxeeelll ppp,,, pppiiixxxvvvaaalll rrreeeddd,,, pppiiixxxvvvaaalll gggrrrnnn,,, pppiiixxxvvvaaalll bbbllluuu )))
  42.  
  43.      TTThhhiiisss mmmaaacccrrrooo aaassssssiiigggnnnsss ttthhheee gggiiivvveeennn rrreeeddd,,, gggrrreeeeeennn aaannnddd bbbllluuueee vvvaaallluuueeesss tttooo ttthhheee pppiiixxxeeelll...
  44.  
  45.      iiinnnttt PPPPPPMMM___EEEQQQUUUAAALLL((( pppiiixxxeeelll ppp,,, pppiiixxxeeelll qqq )))
  46.  
  47.      TTThhhiiisss mmmaaacccrrrooo ccchhheeeccckkksss tttwwwooo pppiiixxxeeelllsss fffooorrr eeeqqquuuaaallliiitttyyy...
  48.  
  49.      vvvoooiiiddd PPPPPPMMM___DDDEEEPPPTTTHHH((( pppiiixxxeeelll nnneeewwwppp,,, pppiiixxxeeelll ppp,,, pppiiixxxvvvaaalll ooollldddmmmaaaxxxvvvaaalll,,, pppiiixxxvvvaaalll nnneeewwwmmmaaaxxxvvvaaalll )))
  50.  
  51.      TTThhhiiisss mmmaaacccrrrooo ssscccaaallleeesss ttthhheee cccooolllooorrrsss ooofff pppiiixxxeeelll ppp according the old and new maximum
  52.      values  and  assigns  the  new  values  to  nnneeewwwppp.  It is intended to make
  53.      writing ppmtowhatever easier.
  54.  
  55.      float PPM_LUMIN( pixel p )
  56.  
  57.      TTThhhiiisss mmmaaacccrrrooo dddeeettteeerrrmmmiiinnneeesss ttthhheee llluuummmiiinnnaaannnccceee ooofff ttthhheee pppiiixxxeeelll ppp.
  58.  
  59.      pixel** ppm_allocarray( int cols, int rows )
  60.  
  61.      AAAllllllooocccaaattteee aaannn aaarrrrrraaayyy ooofff pppiiixxxeeelllsss...
  62.  
  63.  
  64.                                                                              1
  65.  
  66.  
  67.  
  68.  
  69. libppm(3)                  Unix Programmer's Manual                  libppm(3)
  70.  
  71.  
  72.      pppiiixxxeeelll*** ppppppmmm___aaallllllooocccrrrooowww((( iiinnnttt cccooolllsss )))
  73.  
  74.      AAAllllllooocccaaattteee aaa rrrooowww ooofff ttthhheee gggiiivvveeennn nnnuuummmbbbeeerrr ooofff pppiiixxxeeelllsss...
  75.  
  76.      vvvoooiiiddd ppppppmmm___fffrrreeeeeeaaarrrrrraaayyy((( pppiiixxxeeelll****** pppiiixxxeeelllsss,,, iiinnnttt rrrooowwwsss )))
  77.  
  78.      FFFrrreeeeee ttthhheee aaarrrrrraaayyy  aaallllllooocccaaattteeeddd  wwwiiittthhh  ppppppmmm___aaallllllooocccaaarrrrrraaayyy((()))  containing  the  given
  79.      number of rows.
  80.  
  81.      void pbm_freerow( pixel* pixelrow )
  82.  
  83.      FFFrrreeeeee aaa rrrooowww ooofff pppiiixxxeeelllsss...
  84.  
  85.      vvvoooiiiddd ppppppmmm___rrreeeaaadddppppppmmmiiinnniiittt((( FFFIIILLLEEE*** fffppp,,, iiinnnttt*** cccooolllsssPPP,,, iiinnnttt*** rrrooowwwsssPPP,,, pppiiixxxvvvaaalll***  mmmaaaxxxvvvaaalllPPP,,,
  86.      iiinnnttt*** fffooorrrmmmaaatttPPP )))
  87.  
  88.      RRReeeaaaddd ttthhheee hhheeeaaadddeeerrr fffrrrooommm aaa PPPPPPMMM fffiiillleee,,, fffiiilllllliiinnnggg iiinnn ttthhheee rrrooowwwsss,,,  cccooolllsss,,,  mmmaaaxxxvvvaaalll  aaannnddd
  89.      fffooorrrmmmaaattt vvvaaarrriiiaaabbbllleeesss...
  90.  
  91.      vvvoooiiiddd ppppppmmm___rrreeeaaadddppppppmmmrrrooowww((( FFFIIILLLEEE*** fffppp,,, pppiiixxxeeelll*** pppiiixxxeeelllrrrooowww,,, iiinnnttt cccooolllsss,,, pppiiixxxvvvaaalll  mmmaaaxxxvvvaaalll,,,
  92.      iiinnnttt fffooorrrmmmaaattt )))
  93.  
  94.      RRReeeaaaddd aaa rrrooowww ooofff pppiiixxxeeelllsss iiinnntttooo ttthhheee pppiiixxxeeelllrrrooowww aaarrrrrraaayyy...  FFFooorrrmmmaaattt,,, cccooolllsss,,,  aaannnddd  mmmaaaxxxvvvaaalll
  95.      wwweeerrreee fffiiilllllleeeddd iiinnn bbbyyy ppppppmmm___rrreeeaaadddppppppmmmiiinnniiittt((())).
  96.  
  97.      pixel** ppm_readppm( FILE* fp, int* colsP, int* rowsP, pixval* maxvalP )
  98.  
  99.      RRReeeaaaddd aaannn eeennntttiiirrreee pppiiixxxmmmaaappp fffiiillleee iiinnntttooo mmmeeemmmooorrryyy,,, rrreeetttuuurrrnnniiinnnggg ttthhheee aaallllllooocccaaattteeeddd aaarrrrrraaayyy aaannnddd
  100.      fffiiilllllliiinnnggg  iiinnn  ttthhheee rrrooowwwsss,,, cccooolllsss aaannnddd mmmaaaxxxvvvaaalll vvvaaarrriiiaaabbbllleeesss...  TTThhhiiisss fffuuunnnccctttiiiooonnn cccooommmbbbiiinnneeesss
  101.      ppppppmmm___rrreeeaaadddppppppmmmiiinnniiittt((())), ppppppmmm___aaallllllooocccaaarrrrrraaayyy((())) and ppppppmmm___rrreeeaaadddppppppmmmrrrooowww((())).
  102.  
  103.      void ppm_writeppminit( FILE* fp, int cols, int rows, pixval  maxval,  int
  104.      forceplain )
  105.  
  106.      WWWrrriiittteee ttthhheee hhheeeaaadddeeerrr fffooorrr aaa pppooorrrtttaaabbbllleee pppiiixxxmmmaaappp fffiiillleee...  TTThhheee fffooorrrccceeeppplllaaaiiinnn ffflllaaaggg  fffooorrrccceeesss
  107.      aaa ppplllaaaiiinnn-fffooorrrmmmaaattt fffiiillleee tttooo bbbeee wwwrrriiitttttteeennn,,, aaasss oooppppppooossseeeddd tttooo aaa rrraaawww-fffooorrrmmmaaattt ooonnneee...
  108.  
  109.      vvvoooiiiddd ppppppmmm___wwwrrriiittteeeppppppmmmrrrooowww((( FFFIIILLLEEE*** fffppp,,, pppiiixxxeeelll*** pppiiixxxeeelllrrrooowww,,, iiinnnttt cccooolllsss,,, pppiiixxxvvvaaalll mmmaaaxxxvvvaaalll,,,
  110.      iiinnnttt fffooorrrccceeeppplllaaaiiinnn )))
  111.  
  112.      WWWrrriiittteee aaa rrrooowww fffrrrooommm aaa pppooorrrtttaaabbbllleee pppiiixxxmmmaaappp...
  113.  
  114.      vvvoooiiiddd ppppppmmm___wwwrrriiittteeeppppppmmm((( FFFIIILLLEEE*** fffppp,,, pppiiixxxeeelll****** pppiiixxxeeelllsss,,, iiinnnttt cccooolllsss,,, iiinnnttt  rrrooowwwsss,,,  pppiiixxxvvvaaalll
  115.      mmmaaaxxxvvvaaalll,,, iiinnnttt fffooorrrccceeeppplllaaaiiinnn )))
  116.  
  117.      WWWrrriiittteee ttthhheee hhheeeaaadddeeerrr aaannnddd aaallllll dddaaatttaaa  fffooorrr  aaa  pppooorrrtttaaabbbllleee  pppiiixxxmmmaaappp...   TTThhhiiisss  fffuuunnnccctttiiiooonnn
  118.      cccooommmbbbiiinnneeesss ppppppmmm___wwwrrriiittteeeppppppmmmiiinnniiittt((())) and ppppppmmm___wwwrrriiittteeeppppppmmmrrrooowww((())).
  119.  
  120.      pixel ppm_parsecolor( char* colorname, pixval maxval )
  121.  
  122.      PPPaaarrrssseeesss aaannn AAASSSCCCIIIIII cccooolllooorrr nnnaaammmeee iiinnntttooo aaa pppiiixxxeeelll...  TTThhheee cccooolllooorrr cccaaannn bbbeee  ssspppeeeccciiifffiiieeeddd  iiinnn
  123.      ttthhhrrreeeeee  wwwaaayyysss...   OOOnnneee,,,  aaasss  aaa  nnnaaammmeee,,, aaassssssuuummmiiinnnggg ttthhhaaattt aaa pppoooiiinnnttteeerrr tttooo aaannn XXX111111-ssstttyyyllleee
  124.      cccooolllooorrr nnnaaammmeeesss fffiiillleee wwwaaasss cccooommmpppiiillleeeddd  iiinnn...   TTTwwwooo,,,  aaasss  aaannn  XXX111111-ssstttyyyllleee  hhheeexxxiiidddeeeccciiimmmaaalll
  125.      nnnuuummmbbbeeerrr::: ###rrrgggbbb,,, ###rrrrrrggggggbbbbbb,,, ###rrrrrrrrrgggggggggbbbbbbbbb,,, ooorrr ###rrrrrrrrrrrrggggggggggggbbbbbbbbbbbb...  TTThhhrrreeeeee,,, aaasss aaa tttrrriiipppllleeettt
  126.      ooofff dddeeeccciiimmmaaalll fffllloooaaatttiiinnnggg pppoooiiinnnttt nnnuuummmbbbeeerrrsss ssseeepppaaarrraaattteeeddd bbbyyy cccooommmmmmaaasss::: rrr...rrr,,,ggg...ggg,,,bbb...bbb...
  127.  
  128.  
  129.  
  130.                                                                              2
  131.  
  132.  
  133.  
  134.  
  135. libppm(3)                  Unix Programmer's Manual                  libppm(3)
  136.  
  137.  
  138.      ccchhhaaarrr*** ppppppmmm___cccooolllooorrrnnnaaammmeee((( pppiiixxxeeelll*** cccooolllooorrrPPP,,, pppiiixxxvvvaaalll mmmaaaxxxvvvaaalll,,, iiinnnttt hhheeexxxoookkk )))
  139.  
  140.      RRReeetttuuurrrnnnsss aaa pppoooiiinnnttteeerrr tttooo aaa ssstttrrriiinnnggg dddeeessscccrrriiibbbiiinnnggg ttthhheee gggiiivvveeennn  cccooolllooorrr...   IIIfff  ttthhheee  XXX111111
  141.      cccooolllooorrr  nnnaaammmeeesss  fffiiillleee iiisss aaavvvaaaiiilllaaabbbllleee aaannnddd ttthhheee cccooolllooorrr aaappppppeeeaaarrrsss iiinnn iiittt,,, ttthhhaaattt nnnaaammmeee iiisss
  142.      rrreeetttuuurrrnnneeeddd...  OOOttthhheeerrrwwwiiissseee,,, iiifff ttthhheee  hhheeexxxoookkk  ffflllaaaggg  iiisss  tttrrruuueee  ttthhheeennn  aaa  hhheeexxxiiidddeeeccciiimmmaaalll
  143.      cccooolllooorrrssspppeeeccc  iiisss rrreeetttuuurrrnnneeeddd;;; iiifff hhheeexxxoookkk iiisss fffaaalllssseee aaannnddd ttthhheee XXX111111 cccooolllooorrr nnnaaammmeeesss fffiiillleee iiisss
  144.      aaavvvaaaiiilllaaabbbllleee,,, ttthhheeennn ttthhheee ccclllooossseeesssttt mmmaaatttccchhhiiinnnggg cccooolllooorrr iiisss rrreeetttuuurrrnnneeeddd;;;  ooottthhheeerrrwwwiiissseee,,,  iiittt'''sss
  145.      aaannn eeerrrrrrooorrr...
  146.  
  147. SSSEEEEEE AAALLLSSSOOO
  148.      pbm(3), pgm(3)
  149.  
  150. AAAUUUTTTHHHOOORRR
  151.      Copyright (C) 1989, 1991 by Tony Hansen and Jef Poskanzer.
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.                                                                              3
  197.  
  198.  
  199.