Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:11:44

0001 /*
0002   Copyright @ 1999 ImageMagick Studio LLC, a non-profit organization
0003   dedicated to making software imaging solutions freely available.
0004   
0005   You may not use this file except in compliance with the License.  You may
0006   obtain a copy of the License at
0007   
0008     https://imagemagick.org/script/license.php
0009   
0010   Unless required by applicable law or agreed to in writing, software
0011   distributed under the License is distributed on an "AS IS" BASIS,
0012   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0013   See the License for the specific language governing permissions and
0014   limitations under the License.
0015 
0016   MagickCore image quantization methods.
0017 */
0018 #ifndef MAGICKCORE_QUANTIZE_H
0019 #define MAGICKCORE_QUANTIZE_H
0020 
0021 #include "MagickCore/colorspace.h"
0022 
0023 #if defined(__cplusplus) || defined(c_plusplus)
0024 extern "C" {
0025 #endif
0026 
0027 typedef enum
0028 {
0029   UndefinedDitherMethod,
0030   NoDitherMethod,
0031   RiemersmaDitherMethod,
0032   FloydSteinbergDitherMethod
0033 } DitherMethod;
0034 
0035 typedef struct _QuantizeInfo
0036 {
0037   size_t
0038     number_colors;     /* desired maximum number of colors */
0039 
0040   size_t
0041     tree_depth;
0042 
0043   ColorspaceType
0044     colorspace;
0045 
0046   DitherMethod
0047     dither_method;
0048 
0049   MagickBooleanType
0050     measure_error;
0051 
0052   size_t
0053     signature;
0054 } QuantizeInfo;
0055 
0056 
0057 extern MagickExport MagickBooleanType
0058   CompressImageColormap(Image *,ExceptionInfo *),
0059   GetImageQuantizeError(Image *,ExceptionInfo *),
0060   KmeansImage(Image *,const size_t,const size_t,const double,ExceptionInfo *),
0061   PosterizeImage(Image *,const size_t,const DitherMethod,ExceptionInfo *),
0062   QuantizeImage(const QuantizeInfo *,Image *,ExceptionInfo *),
0063   QuantizeImages(const QuantizeInfo *,Image *,ExceptionInfo *),
0064   RemapImage(const QuantizeInfo *,Image *,const Image *,ExceptionInfo *),
0065   RemapImages(const QuantizeInfo *,Image *,const Image *,ExceptionInfo *);
0066 
0067 extern MagickExport QuantizeInfo
0068   *AcquireQuantizeInfo(const ImageInfo *),
0069   *CloneQuantizeInfo(const QuantizeInfo *),
0070   *DestroyQuantizeInfo(QuantizeInfo *);
0071 
0072 extern MagickExport void
0073   GetQuantizeInfo(QuantizeInfo *);
0074 
0075 #if defined(__cplusplus) || defined(c_plusplus)
0076 }
0077 #endif
0078 
0079 #endif