/****************************************************************************** * * * ******************************************************************************/ #ifndef __IMAGE #define __IMAGE /******************************************************************************/ #define OCTET1 1 #define OCTET2 2 #define OCTET4 4 #define OCTET8 8 #define TAILLE_TEXTE 20 #define BLANC 255 #define NOIR 0 #define NBCOULEUR 256 /******************************************************************************/ template <class T> class IMAGE { private: // Donnees privees public : // Donnees publics char *Texte; T *Data; T ***Image; int Type; int NbPlan; int DimX,DimY; // privat‰e: public: // Allocateur int AllocIMAGE(IMAGE *, int, int, int); // Liberateur int FreeIMAGE(IMAGE *); // Ima -> Bmp // int Ima2Bmp(IMAGE *, char *); // Bmp -> Ima // int Bmp2Ima(char *, IMAGE *); // Ima -> Ima // int Ima2Ima(char *, IMAGE *); public: // Constructeur IMAGE (int, int, int, char *); // Constructeur IMAGE (void); // Destructeur ~IMAGE (void); // Operateur de copie IMAGE (IMAGE &); // Operateur d'affectation * <- BYTE IMAGE & operator = (IMAGE<BYTE> &); // Operateur d'affectation * <- int IMAGE & operator = (IMAGE<int> &); // Chargement d'un BMP IMAGE *LoadImage(char *); // Sauvegarde d'un BMP int SaveImage(char *); // Equilibre les niveaux de gris int ComputeImage(T); // Print Image int PrintImage(void); // Print Image X11 int PrintImageX11(void); }; /******************************************************************************/ #endif