Home | History | Annotate | Download | only in apple
      1 /*
      2  * Copyright (c) 2012 Apple Inc.
      3  *
      4  * Permission is hereby granted, free of charge, to any person
      5  * obtaining a copy of this software and associated documentation files
      6  * (the "Software"), to deal in the Software without restriction,
      7  * including without limitation the rights to use, copy, modify, merge,
      8  * publish, distribute, sublicense, and/or sell copies of the Software,
      9  * and to permit persons to whom the Software is furnished to do so,
     10  * subject to the following conditions:
     11  *
     12  * The above copyright notice and this permission notice shall be
     13  * included in all copies or substantial portions of the Software.
     14  *
     15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
     16  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
     17  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
     18  * NONINFRINGEMENT.  IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT
     19  * HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
     20  * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     21  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
     22  * DEALINGS IN THE SOFTWARE.
     23  *
     24  * Except as contained in this notice, the name(s) of the above
     25  * copyright holders shall not be used in advertising or otherwise to
     26  * promote the sale, use or other dealings in this Software without
     27  * prior written authorization.
     28  */
     29 
     30 #ifndef APPLE_GLX_LOG_H
     31 #define APPLE_GLX_LOG_H
     32 
     33 #include <sys/cdefs.h>
     34 #include <asl.h>
     35 
     36 void apple_glx_log_init(void);
     37 
     38 __printflike(5, 6)
     39 void _apple_glx_log(int level, const char *file, const char *function,
     40                     int line, const char *fmt, ...);
     41 #define apple_glx_log(l, f, args ...) \
     42     _apple_glx_log(l, __FILE__, __FUNCTION__, __LINE__, f, ## args)
     43 
     44 
     45 __printflike(5, 0)
     46 void _apple_glx_vlog(int level, const char *file, const char *function,
     47                      int line, const char *fmt, va_list v);
     48 #define apple_glx_vlog(l, f, v) \
     49     _apple_glx_vlog(l, __FILE__, __FUNCTION__, __LINE__, f, v)
     50 
     51 /* This is just here to help the transition.
     52  * TODO: Replace calls to apple_glx_diagnostic
     53  */
     54 #define apple_glx_diagnostic(f, args ...) \
     55     apple_glx_log(ASL_LEVEL_DEBUG, f, ## args)
     56 
     57 #endif
     58