00001 #ifndef _IMAGE_BMP_ 00002 #define _IMAGE_BMP_ 00003 00004 00005 #include <iostream> 00006 00007 namespace GRAPHICSTOOLS 00008 { 00009 00013 struct BMPHeader 00014 { 00015 unsigned short bfType; //le type 00016 unsigned int bfSize; //la taille 00017 unsigned short bfReserved1; //??? 00018 unsigned short bfReserved2; //??? 00019 unsigned int bfOffBits; //??? 00020 unsigned int biSize; //??? 00021 long biWidth; //la largeur de l'image 00022 long biHeigth; //la hauteur de l'image 00023 unsigned short biPlanes; //??? 00024 unsigned short biBitCount; //nombre de bit de couleur (24 bit obligatoire pour ImageBMP) 00025 unsigned int biCompression; //info de compression 00026 unsigned int biSizeImage; //??? 00027 long biXPelsPerMeter; //??? 00028 long biYPelsPerMeter; //??? 00029 unsigned int biClrUsed; //??? 00030 unsigned int biClrImportant; //??? 00031 00032 }; 00033 00039 class ImageBMP 00040 { 00041 private: 00042 00043 BMPHeader bmph; //le header du fichier 00044 unsigned char *datas; //le tableau de donnée graphique 00045 00046 public: 00047 00051 unsigned char* getDatasPointer(); 00052 00056 unsigned short getBPP(); 00057 00061 long getHeight(); 00065 long getWidth(); 00066 00072 bool load(char *filepath); 00073 00078 ImageBMP(); 00082 ~ImageBMP(); 00083 00084 }; 00085 00086 } 00087 00088 00089 #endif
1.3.5