]> granicus.if.org Git - imagemagick/blobdiff - magick/option.h
(no commit message)
[imagemagick] / magick / option.h
index 3ccbc9073cdf44cad730a3c854b35e17d5476092..732f24e68c42637e87533a1a2f0aff0b4ebc6ec2 100644 (file)
@@ -1,5 +1,5 @@
 /*
-  Copyright 1999-2010 ImageMagick Studio LLC, a non-profit organization
+  Copyright 1999-2011 ImageMagick Studio LLC, a non-profit organization
   dedicated to making software imaging solutions freely available.
   
   You may not use this file except in compliance with the License.
@@ -55,7 +55,6 @@ typedef enum
   MagickFormatOptions,
   MagickFunctionOptions,
   MagickGravityOptions,
-  MagickImageListOptions,
   MagickIntentOptions,
   MagickInterlaceOptions,
   MagickInterpolateOptions,
@@ -85,6 +84,7 @@ typedef enum
   MagickResolutionOptions,
   MagickResourceOptions,
   MagickSparseColorOptions,
+  MagickStatisticOptions,
   MagickStorageOptions,
   MagickStretchOptions,
   MagickStyleOptions,
@@ -92,7 +92,7 @@ typedef enum
   MagickTypeOptions,
   MagickValidateOptions,
   MagickVirtualPixelOptions
-} MagickOption;
+} CommandOption;
 
 typedef enum
 {
@@ -116,33 +116,55 @@ typedef struct _OptionInfo
     *mnemonic;
 
   ssize_t
-    type;
+    type,
+    flags;
 
   MagickBooleanType
     stealth;
 } OptionInfo;
 
+/*
+  Flags to describe classes of image processing options.
+*/
+typedef enum
+{
+  UndefinedOptionFlag       = 0x0000,
+  FireOptionFlag            = 0x0001,  /* Option sequence firing point */
+  ImageInfoOptionFlag       = 0x0002,  /* Sets ImageInfo, no image needed */
+  DrawInfoOptionFlag        = 0x0004,  /* Sets DrawInfo, no image needed */
+  QuantizeInfoOptionFlag    = 0x0008,  /* Sets QuantizeInfo, no image needed */
+  GlobalOptionFlag          = 0x0010,  /* Sets Global Option, no image needed */
+  SimpleOperatorOptionFlag  = 0x0100,  /* Simple Image processing operator */
+  ListOperatorOptionFlag    = 0x0200,  /* Multi-Image List processing operator */
+  SpecialOperatorOptionFlag = 0x0400,  /* Specially handled Operator Option */
+  GenesisOptionFlag         = 0x0400,  /* Genesis Command Wrapper Option  */
+  NonConvertOptionFlag      = 0x4000,  /* Option not used by Convert */
+  DeprecateOptionFlag       = 0x8000   /* Deprecate option, give warning */
+} CommandOptionFlags;
+
 extern MagickExport char
-  **GetMagickOptions(const MagickOption),
+  **GetCommandOptions(const CommandOption),
   *GetNextImageOption(const ImageInfo *),
   *RemoveImageOption(ImageInfo *,const char *);
 
 extern MagickExport const char
-  *GetImageOption(const ImageInfo *,const char *),
-  *MagickOptionToMnemonic(const MagickOption,const ssize_t);
-
-extern MagickExport ssize_t
-  ParseChannelOption(const char *),
-  ParseMagickOption(const MagickOption,const MagickBooleanType,const char *);
+  *CommandOptionToMnemonic(const CommandOption,const ssize_t),
+  *GetImageOption(const ImageInfo *,const char *);
 
 extern MagickExport MagickBooleanType
   CloneImageOptions(ImageInfo *,const ImageInfo *),
   DefineImageOption(ImageInfo *,const char *),
   DeleteImageOption(ImageInfo *,const char *),
-  IsMagickOption(const char *),
-  ListMagickOptions(FILE *,const MagickOption,ExceptionInfo *),
+  IsCommandOption(const char *),
+  ListCommandOptions(FILE *,const CommandOption,ExceptionInfo *),
   SetImageOption(ImageInfo *,const char *,const char *);
 
+extern MagickExport ssize_t
+  GetCommandOptionFlags(const CommandOption,const MagickBooleanType,
+    const char *),
+  ParseChannelOption(const char *),
+  ParseCommandOption(const CommandOption,const MagickBooleanType,const char *);
+
 extern MagickExport void
   DestroyImageOptions(ImageInfo *),
   ResetImageOptions(const ImageInfo *),