#ifndef _MAGICKCORE_QUANTIZE_H
#define _MAGICKCORE_QUANTIZE_H
#include "magick/colorspace.h"
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
#endif
typedef enum
{
UndefinedDitherMethod,
NoDitherMethod,
RiemersmaDitherMethod,
FloydSteinbergDitherMethod
} DitherMethod;
typedef struct _QuantizeInfo
{
size_t
number_colors;
size_t
tree_depth;
MagickBooleanType
dither;
ColorspaceType
colorspace;
MagickBooleanType
measure_error;
size_t
signature;
DitherMethod
dither_method;
} QuantizeInfo;
extern MagickExport MagickBooleanType
CompressImageColormap(Image *),
GetImageQuantizeError(Image *),
PosterizeImage(Image *,const size_t,const MagickBooleanType),
PosterizeImageChannel(Image *,const ChannelType,const size_t,
const MagickBooleanType),
QuantizeImage(const QuantizeInfo *,Image *),
QuantizeImages(const QuantizeInfo *,Image *),
RemapImage(const QuantizeInfo *,Image *,const Image *),
RemapImages(const QuantizeInfo *,Image *,const Image *);
extern MagickExport QuantizeInfo
*AcquireQuantizeInfo(const ImageInfo *),
*CloneQuantizeInfo(const QuantizeInfo *),
*DestroyQuantizeInfo(QuantizeInfo *);
extern MagickExport void
GetQuantizeInfo(QuantizeInfo *);
#if defined(__cplusplus) || defined(c_plusplus)
}
#endif
#endif