b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* $XFree86: xc/programs/Xserver/mi/micmap.h,v 1.5 1999/06/14 07:32:11 dawes Exp $ */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "colormapst.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#ifndef _MICMAP_H_
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define _MICMAP_H_
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern ColormapPtr miInstalledMaps[MAXSCREENS];
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef Bool (* miInitVisualsProcPtr)(VisualPtr *, DepthPtr *, int *, int *,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int *, VisualID *, unsigned long, int,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern miInitVisualsProcPtr miInitVisualsProc;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncint miListInstalledColormaps(ScreenPtr pScreen, Colormap *pmaps);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncvoid miInstallColormap(ColormapPtr pmap);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncvoid miUninstallColormap(ColormapPtr pmap);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncvoid miResolveColor(unsigned short *, unsigned short *, unsigned short *,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync VisualPtr);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncBool miInitializeColormap(ColormapPtr);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncint miExpandDirectColors(ColormapPtr, int, xColorItem *, xColorItem *);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncBool miCreateDefColormap(ScreenPtr);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncvoid miClearVisualTypes(void);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncBool miSetVisualTypes(int, int, int, int);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncBool miSetPixmapDepths(void);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncBool miSetVisualTypesAndMasks(int depth, int visuals, int bitsPerRGB,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int preferredCVC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Pixel redMask, Pixel greenMask, Pixel blueMask);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncint miGetDefaultVisualMask(int);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncBool miInitVisuals(VisualPtr *, DepthPtr *, int *, int *, int *, VisualID *,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned long, int, int);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncvoid miResetInitVisuals(void);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncvoid miHookInitVisuals(void (**old)(miInitVisualsProcPtr *),
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync void (*new)(miInitVisualsProcPtr *));
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MAX_PSEUDO_DEPTH 10
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MIN_TRUE_DEPTH 6
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define StaticGrayMask (1 << StaticGray)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define GrayScaleMask (1 << GrayScale)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define StaticColorMask (1 << StaticColor)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define PseudoColorMask (1 << PseudoColor)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define TrueColorMask (1 << TrueColor)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define DirectColorMask (1 << DirectColor)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define ALL_VISUALS (StaticGrayMask|\
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GrayScaleMask|\
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync StaticColorMask|\
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PseudoColorMask|\
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync TrueColorMask|\
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DirectColorMask)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define LARGE_VISUALS (TrueColorMask|\
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DirectColorMask)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define SMALL_VISUALS (StaticGrayMask|\
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GrayScaleMask|\
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync StaticColorMask|\
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PseudoColorMask)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#endif /* _MICMAP_H_ */