1*c2c66affSColin Finck /* 2*c2c66affSColin Finck * Copyright (C) 2007 Google (Evan Stade) 3*c2c66affSColin Finck * 4*c2c66affSColin Finck * This library is free software; you can redistribute it and/or 5*c2c66affSColin Finck * modify it under the terms of the GNU Lesser General Public 6*c2c66affSColin Finck * License as published by the Free Software Foundation; either 7*c2c66affSColin Finck * version 2.1 of the License, or (at your option) any later version. 8*c2c66affSColin Finck * 9*c2c66affSColin Finck * This library is distributed in the hope that it will be useful, 10*c2c66affSColin Finck * but WITHOUT ANY WARRANTY; without even the implied warranty of 11*c2c66affSColin Finck * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12*c2c66affSColin Finck * Lesser General Public License for more details. 13*c2c66affSColin Finck * 14*c2c66affSColin Finck * You should have received a copy of the GNU Lesser General Public 15*c2c66affSColin Finck * License along with this library; if not, write to the Free Software 16*c2c66affSColin Finck * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 17*c2c66affSColin Finck */ 18*c2c66affSColin Finck 19*c2c66affSColin Finck #ifndef _GDIPLUSCOLORMATRIX_H 20*c2c66affSColin Finck #define _GDIPLUSCOLORMATRIX_H 21*c2c66affSColin Finck 22*c2c66affSColin Finck struct ColorMatrix 23*c2c66affSColin Finck { 24*c2c66affSColin Finck REAL m[5][5]; 25*c2c66affSColin Finck }; 26*c2c66affSColin Finck 27*c2c66affSColin Finck enum ColorMatrixFlags 28*c2c66affSColin Finck { 29*c2c66affSColin Finck ColorMatrixFlagsDefault = 0, 30*c2c66affSColin Finck ColorMatrixFlagsSkipGrays = 1, 31*c2c66affSColin Finck ColorMatrixFlagsAltGray = 2 32*c2c66affSColin Finck }; 33*c2c66affSColin Finck 34*c2c66affSColin Finck enum ColorAdjustType 35*c2c66affSColin Finck { 36*c2c66affSColin Finck ColorAdjustTypeDefault, 37*c2c66affSColin Finck ColorAdjustTypeBitmap, 38*c2c66affSColin Finck ColorAdjustTypeBrush, 39*c2c66affSColin Finck ColorAdjustTypePen, 40*c2c66affSColin Finck ColorAdjustTypeText, 41*c2c66affSColin Finck ColorAdjustTypeCount, 42*c2c66affSColin Finck ColorAdjustTypeAny 43*c2c66affSColin Finck }; 44*c2c66affSColin Finck 45*c2c66affSColin Finck struct ColorMap 46*c2c66affSColin Finck { 47*c2c66affSColin Finck Color oldColor; 48*c2c66affSColin Finck Color newColor; 49*c2c66affSColin Finck }; 50*c2c66affSColin Finck 51*c2c66affSColin Finck enum HistogramFormat 52*c2c66affSColin Finck { 53*c2c66affSColin Finck HistogramFormatARGB, 54*c2c66affSColin Finck HistogramFormatPARGB, 55*c2c66affSColin Finck HistogramFormatRGB, 56*c2c66affSColin Finck HistogramFormatGray, 57*c2c66affSColin Finck HistogramFormatB, 58*c2c66affSColin Finck HistogramFormatG, 59*c2c66affSColin Finck HistogramFormatR, 60*c2c66affSColin Finck HistogramFormatA, 61*c2c66affSColin Finck }; 62*c2c66affSColin Finck 63*c2c66affSColin Finck #ifndef __cplusplus 64*c2c66affSColin Finck 65*c2c66affSColin Finck typedef enum ColorAdjustType ColorAdjustType; 66*c2c66affSColin Finck typedef enum ColorMatrixFlags ColorMatrixFlags; 67*c2c66affSColin Finck typedef enum HistogramFormat HistogramFormat; 68*c2c66affSColin Finck typedef struct ColorMatrix ColorMatrix; 69*c2c66affSColin Finck typedef struct ColorMap ColorMap; 70*c2c66affSColin Finck 71*c2c66affSColin Finck #endif /* end of c typedefs */ 72*c2c66affSColin Finck 73*c2c66affSColin Finck #endif /* _GDIPLUSCOLORMATRIX_H */ 74