Back to home page

EIC code displayed by LXR

 
 

    


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

0001 /*
0002   Copyright @ 2002 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 log methods.
0017 */
0018 #ifndef MAGICKCORE_LOG_H
0019 #define MAGICKCORE_LOG_H
0020 
0021 #include "MagickCore/exception.h"
0022 
0023 #if defined(__cplusplus) || defined(c_plusplus)
0024 extern "C" {
0025 #endif
0026 
0027 #if !defined(GetMagickModule)
0028 # define GetMagickModule()  __FILE__,__func__,(unsigned long) __LINE__
0029 #endif
0030 
0031 #define MagickLogFilename  "log.xml"
0032 
0033 typedef enum
0034 {
0035   UndefinedEvents = 0x000000,
0036   NoEvents = 0x00000,
0037   AccelerateEvent = 0x00001,
0038   AnnotateEvent = 0x00002,
0039   BlobEvent = 0x00004,
0040   CacheEvent = 0x00008,
0041   CoderEvent = 0x00010,
0042   ConfigureEvent = 0x00020,
0043   DeprecateEvent = 0x00040,
0044   DrawEvent = 0x00080,
0045   ExceptionEvent = 0x00100,   /* Log Errors and Warnings immediately */
0046   ImageEvent = 0x00200,
0047   LocaleEvent = 0x00400,
0048   ModuleEvent = 0x00800,      /* Log coder and filter modules */
0049   PixelEvent = 0x01000,
0050   PolicyEvent = 0x02000,
0051   ResourceEvent = 0x04000,
0052   TraceEvent = 0x08000,
0053   TransformEvent = 0x10000,
0054   UserEvent = 0x20000,
0055   WandEvent = 0x40000,        /* Log MagickWand */
0056   X11Event = 0x80000,
0057   CommandEvent = 0x100000,    /* Log Command Processing (CLI & Scripts) */
0058   AllEvents = 0x7fffffff
0059 } LogEventType;
0060 
0061 typedef struct _LogInfo
0062   LogInfo;
0063 
0064 typedef void
0065   (*MagickLogMethod)(const LogEventType,const char *);
0066 
0067 extern MagickExport char
0068   **GetLogList(const char *,size_t *,ExceptionInfo *);
0069 
0070 extern MagickExport const char
0071   *GetLogName(void) magick_attribute((__pure__)),
0072   *SetLogName(const char *);
0073 
0074 extern MagickExport LogEventType
0075   GetLogEventMask(void) magick_attribute((__pure__));
0076 
0077 extern MagickExport const LogInfo
0078   **GetLogInfoList(const char *,size_t *,ExceptionInfo *);
0079 
0080 extern MagickExport LogEventType
0081   SetLogEventMask(const char *);
0082 
0083 extern MagickExport MagickBooleanType
0084   IsEventLogging(void) magick_attribute((__pure__)),
0085   ListLogInfo(FILE *,ExceptionInfo *),
0086   LogMagickEvent(const LogEventType,const char *,const char *,const size_t,
0087     const char *,...) magick_attribute((__format__ (__printf__,5,6))),
0088   LogMagickEventList(const LogEventType,const char *,const char *,const size_t,
0089     const char *,va_list) magick_attribute((__format__ (__printf__,5,0)));
0090 
0091 extern MagickExport void
0092   CloseMagickLog(void),
0093   SetLogFormat(const char *),
0094   SetLogMethod(MagickLogMethod);
0095 
0096 #if defined(__cplusplus) || defined(c_plusplus)
0097 }
0098 #endif
0099 
0100 #endif