home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / 3DTOSHI2.ZIP / mpgfx / include / gfxbmp.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-03-23  |  1.3 KB  |  46 lines

  1.  
  2. // gfxbmp.h
  3. //
  4. // Copyright (c) 1995 by Toshiaki Tsuji, all rights reserved.
  5.  
  6. #ifndef __GFXBMP_H__
  7. #define __GFXBMP_H__
  8.  
  9. #include "stdgfx.h"
  10. #include "gfxifile.h"
  11.  
  12. class BMPFILETOOL : public IMAGEFILETOOL
  13.   {
  14.     protected :
  15.       BITMAPFILEHEADER FileHeader;
  16.       BITMAPINFOHEADER InfoHeader;
  17.       BYTE *DataBuffer;
  18.       LONG Width;
  19.       LONG Size;
  20.       LONG BmWd,BmHt,BmBits;
  21.  
  22.       BOOLEAN ReadHeader ();
  23.       BOOLEAN ReadInfo ();
  24.       BOOLEAN ReadRowBW ( IMAGE *Image, INT Row );
  25.       BOOLEAN ReadRow16 ( IMAGE *Image, INT Row );
  26.       BOOLEAN ReadRow256 ( IMAGE *Image, INT Row );
  27.       BOOLEAN ReadImage ( IMAGE *Image );
  28.       BOOLEAN ReadPalette ( RGBPALETTE *Pal );
  29.  
  30.       BOOLEAN WriteHeader ();
  31.       BOOLEAN WriteInfo ( INT Wd, INT Ht );
  32.       BOOLEAN WritePalette ( RGBPALETTE *Pal );
  33.       BOOLEAN WriteImageRow ( IMAGE *Image, INT Row, INT Sx );
  34.       BOOLEAN WriteImage ( IMAGE *Image, INT Sx, INT Sy, INT Ht );
  35.  
  36.     public :
  37.       BMPFILETOOL ( FILEHANDLE f );
  38.       virtual ~BMPFILETOOL ();
  39.  
  40.       virtual BOOLEAN LoadImage ( IMAGE *Image, RGBPALETTE *Pal );
  41.       virtual BOOLEAN SaveImage ( IMAGE *Image, LONG Sx, LONG Sy,
  42.                                   LONG Wd, LONG Ht, RGBPALETTE *Pal );
  43.   }; // End of BMPFILETOOL class
  44.  
  45. #endif
  46.