home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / general / hdf / unix / hdf3_2r2.lha / HDF3.2r2 / src / dfufp2i.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-10-28  |  3.5 KB  |  103 lines

  1. /***************************************************************************
  2. *
  3. *
  4. *                         NCSA HDF version 3.2r2
  5. *                            October 30, 1992
  6. *
  7. * NCSA HDF Version 3.2 source code and documentation are in the public
  8. * domain.  Specifically, we give to the public domain all rights for future
  9. * licensing of the source code, all resale rights, and all publishing rights.
  10. *
  11. * We ask, but do not require, that the following message be included in all
  12. * derived works:
  13. *
  14. * Portions developed at the National Center for Supercomputing Applications at
  15. * the University of Illinois at Urbana-Champaign, in collaboration with the
  16. * Information Technology Institute of Singapore.
  17. *
  18. * THE UNIVERSITY OF ILLINOIS GIVES NO WARRANTY, EXPRESSED OR IMPLIED, FOR THE
  19. * SOFTWARE AND/OR DOCUMENTATION PROVIDED, INCLUDING, WITHOUT LIMITATION,
  20. * WARRANTY OF MERCHANTABILITY AND WARRANTY OF FITNESS FOR A PARTICULAR PURPOSE
  21. *
  22. ****************************************************************************
  23. */
  24.  
  25. /*
  26. $Header: /hdf/hdf/v3.2r2/src/RCS/dfufp2i.h,v 1.1 1992/08/25 21:40:44 koziol beta koziol $
  27.  
  28. $Log: dfufp2i.h,v $
  29.  * Revision 1.1  1992/08/25  21:40:44  koziol
  30.  * Initial revision
  31.  *
  32. */
  33. #ifndef DFUFP2IM_H /* avoid re-inclusion */
  34. #define DFUFP2IM_H
  35.  
  36. /*
  37. * definitions of structs used by routines: Input & Output
  38. */
  39.  
  40. struct Input {
  41.     int32
  42.         hdim, vdim;     /* horizontal and vertical dimensions of input data */
  43.     int
  44.         is_pal,         /* flag to tell whether there is a palette */
  45.         is_vscale,      /* flags telling whether scales were included  */
  46.         is_hscale,
  47.         ct_method;      /* color transform method: EXPAND or INTERP */
  48.     float32
  49.         max, min,        /* max and min values of the data */
  50.         *hscale,*vscale, /* horizontal and vertical scales */
  51.         *data;           /* floating point data */
  52. };
  53.  
  54. struct Output {
  55.     int32
  56.         hres,vres;  /* horizontal and vertical resolution of image */
  57.     int compress;   /* compression scheme */
  58.     char
  59.         outfile[32]; /* output file name */
  60.     uint8
  61.         *image;     
  62.     uint8
  63.         *palette;   
  64. };
  65.  
  66. /*----------------------------------------------------------------------------*/
  67. /*                           Function Prototypes                              */
  68.  
  69. #if defined c_plusplus || defined __cplusplus
  70. extern "C" {
  71. #endif /* c_plusplus || __cplusplus */
  72.  
  73. /* prototypes for dfufp2im.c */
  74.  
  75. #ifdef OLD_WAY
  76. extern int duif2i_(int32 *hdim, int32 *vdim, float32 *max, float32 *min,
  77.            float32 hscale[], float32 vscale[], float32 data[],
  78.            uint8 *palette, _fcd outfile, int *ct_method, int32 *hres,
  79.            int32 *vres, int *compress, int *lenfn);
  80. extern int DFUfptoimage(int32 hdim, int32 vdim, float32 max, float32 min,
  81.                         float32 *hscale, float32 *vscale, float32 *data,
  82.                         uint8 *palette, char *outfile, int ct_method,
  83.                         int32 hres, int32 vres, int compress);
  84. #endif
  85. extern int process
  86.     PROTO((struct Input *in, struct Output *out));
  87. extern int generate_scale
  88.     PROTO((int32 dim, float32 *scale));
  89. extern int convert_interp
  90.     PROTO((struct Input *in, struct Output *out));
  91. extern int pixrep_scaled
  92.     PROTO((struct Input *in, struct Output *out));
  93. extern int compute_offsets
  94.     PROTO((float32 *scale, int32 dim, int32 *offsets, int32 res));
  95. extern int pixrep_simple
  96.     PROTO((struct Input *in, struct Output *out));
  97.  
  98. #if defined c_plusplus || defined __cplusplus
  99. }
  100. #endif /* c_plusplus || __cplusplus */
  101.  
  102. #endif /* DFUFP2IM_H */
  103.