Main Page | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members

plwindefs.h

Go to the documentation of this file.
00001 /*
00002 /--------------------------------------------------------------------
00003 |
00004 |      $Id: plwindefs.h,v 1.3 2002/02/24 13:00:42 uzadow Exp $
00005 |
00006 |      Copyright (c) 1996-2002 Ulrich von Zadow
00007 |
00008 \--------------------------------------------------------------------
00009 */
00010 
00011 //! \file
00012 //! Windows Bitmap Struct Definitions
00013 //!
00014 //! Contains the definitions for the data structures used in
00015 //! windows bitmap files. For windows apps, they are already
00016 //! defined - but not with these names.
00017 //!
00018 //! The WINRGBQUAD, WINBITMAPFILEHEADER, WINBITMAPINFOHEADER,
00019 //! and WINBITMAPINFO structs are defined as RGBQUAD etc. in
00020 //! the windows header files. See the windows documentation
00021 //! for details.
00022 
00023 #ifndef INCL_PLWINDEFS
00024 #define INCL_PLWINDEFS
00025 
00026 typedef struct tagWINRGBQUAD
00027 {
00028   PLBYTE    rgbBlue;
00029   PLBYTE    rgbGreen;
00030   PLBYTE    rgbRed;
00031   PLBYTE    rgbReserved;
00032 } WINRGBQUAD;
00033 
00034 #pragma pack(2)
00035 typedef struct tagWINBITMAPFILEHEADER
00036 {
00037   PLWORD    bfType;
00038   PLLONG    bfSize;
00039   PLWORD    bfReserved1;
00040   PLWORD    bfReserved2;
00041   PLLONG    bfOffBits;
00042 } WINBITMAPFILEHEADER;
00043 #pragma pack()
00044 
00045 typedef struct tagWINBITMAPINFOHEADER
00046 {
00047   PLLONG   biSize;
00048   PLLONG   biWidth;
00049   PLLONG   biHeight;
00050   PLWORD   biPlanes;
00051   PLWORD   biBitCount;
00052   PLLONG   biCompression;
00053   PLLONG   biSizeImage;
00054   PLLONG   biXPelsPerMeter;
00055   PLLONG   biYPelsPerMeter;
00056   PLLONG   biClrUsed;
00057   PLLONG   biClrImportant;
00058 } WINBITMAPINFOHEADER;
00059 
00060 typedef struct tagWINBITMAPINFO
00061 {
00062   WINBITMAPINFOHEADER bmiHeader;
00063   WINRGBQUAD          bmiColors[1];
00064 } WINBITMAPINFO;
00065 
00066 typedef struct tagWINBITMAPCOREHEADER
00067 {
00068   PLLONG    bcSize; 
00069   PLWORD    bcWidth; 
00070   PLWORD    bcHeight; 
00071   PLWORD    bcPlanes; 
00072   PLWORD    bcBitCount; 
00073 } WINBITMAPCOREHEADER;
00074 
00075 /* constants for the biCompression field */
00076 #define BI_RGB        0L
00077 #define BI_RLE8       1L
00078 #define BI_RLE4       2L
00079 #define BI_BITFIELDS  3L
00080 
00081 
00082 #endif
00083 /*
00084 /--------------------------------------------------------------------
00085 |
00086 |      $Log: plwindefs.h,v $
00087 |      Revision 1.3  2002/02/24 13:00:42  uzadow
00088 |      Documentation update; removed buggy PLFilterRotate.
00089 |
00090 |      Revision 1.2  2001/10/06 22:03:26  uzadow
00091 |      Added PL prefix to basic data types.
00092 |
00093 |      Revision 1.1  2001/09/16 19:03:22  uzadow
00094 |      Added global name prefix PL, changed most filenames.
00095 |
00096 |      Revision 1.9  2001/01/14 15:32:21  uzadow
00097 |      Unix compatibility changes.
00098 |
00099 |      Revision 1.8  2000/12/13 23:40:16  uzadow
00100 |      no message
00101 |
00102 |      Revision 1.7  2000/11/02 21:27:50  uzadow
00103 |      Temporary build fix.
00104 |
00105 |      Revision 1.6  2000/10/31 11:27:47  jmbuena
00106 |      Moved win definitions from stdpch.h
00107 |
00108 |      Revision 1.5  2000/10/28 11:59:46  uzadow
00109 |      no message
00110 |
00111 |      Revision 1.4  2000/07/07 13:20:47  Ulrich von Zadow
00112 |      Bugfix: Added #pragma pack to WINBITMAPFILEHEADER.
00113 |
00114 |      Revision 1.3  1999/10/03 18:50:52  Ulrich von Zadow
00115 |      Added automatic logging of changes.
00116 |
00117 |
00118 \--------------------------------------------------------------------
00119 */

Generated on Sun Jun 6 13:42:22 2004 for paintlib by doxygen 1.3.2