#define MagickSizeFormat "I64u"
#endif
+#if QuantumDepth > 16
+ typedef double SignedQuantum;
+#else
+ typedef ssize_t SignedQuantum;
+#endif
+
#if defined(_MSC_VER) && (_MSC_VER == 1200)
typedef MagickOffsetType QuantumAny;
#else
MagickTrue = 1
} MagickBooleanType;
+/*
+ Define some short-hand macros for handling MagickBooleanType
+ and uses fast C typing with C boolean operations
+
+ Is -- returns a MagickBooleanType (for storage)
+ If -- returns C integer boolean (for if's and while's)
+
+ IfMagickTrue() converts MagickBooleanType to C integer Boolean
+ IfMagickFalse() Not the MagickBooleanType to C integer Boolean
+
+ IsMagickTrue() converts a C integer boolean to a MagickBooleanType
+ IsMagickFalse() converts and is also a MagickBooleanType 'not' operation
+
+ IsMagickNULL()
+ IsMagickNotNULL() converts C pointers tests MagickBooleanType
+*/
+#if 1
+/* Fast C typing method assumes MagickBooleanType uses match 0,1 values */
+# define IfMagickTrue(v) ((int)(v))
+# define IfMagickFalse(v) (!(int)(v))
+# define IsMagickTrue(v) ((MagickBooleanType)((int)(v)!=0))
+# define IsMagickFalse(v) ((MagickBooleanType)(!(int)(v)))
+# define IsMagickNot(v) ((MagickBooleanType)(!(int)(v)))
+#else
+/* Do not depend MagickBooleanValues */
+# define IfMagickTrue(v) ((v) != MagickFalse)
+# define IfMagickFalse(v) ((v) == MagickFalse)
+# define IsMagickTrue(v) ((v)?MagickTrue:MagickFalse)
+# define IsMagickFalse(v) ((v)?MagickFalse:MagickTrue)
+# define IsMagickNot(v) (IfMagickTrue(v)?MagickFalse:MagickTrue)
+#endif
+#define IfStringTrue(v) IfMagickTrue(IsStringTrue(v))
+#define IfStringNotFalse(v) IfMagickTrue(IsStringNotFalse(v))
+#define IsMagickNULL(v) (((void *)(v) == NULL)?MagickTrue:MagickFalse)
+#define IsMagickNotNULL(v) (((void *)(v) != NULL)?MagickTrue:MagickFalse)
+
typedef struct _BlobInfo BlobInfo;
typedef struct _ExceptionInfo ExceptionInfo;