Add official LGPL license headers to the files that were missing them.
[ffmpeg.git] / libavutil / log.h
1 /*
2  * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17  */
18
19 #ifndef LOG_H
20 #define LOG_H
21
22 #include <stdarg.h>
23
24 /**
25  * Used by av_log
26  */
27 typedef struct AVCLASS AVClass;
28 struct AVCLASS {
29     const char* class_name;
30     const char* (*item_name)(void*); /* actually passing a pointer to an AVCodecContext
31                                         or AVFormatContext, which begin with an AVClass.
32                                         Needed because av_log is in libavcodec and has no visibility
33                                         of AVIn/OutputFormat */
34     struct AVOption *option;
35 };
36
37 /* av_log API */
38
39 #define AV_LOG_QUIET -1
40 #define AV_LOG_ERROR 0
41 #define AV_LOG_INFO 1
42 #define AV_LOG_DEBUG 2
43 extern int av_log_level;
44
45 #ifdef __GNUC__
46 extern void av_log(void*, int level, const char *fmt, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
47 #else
48 extern void av_log(void*, int level, const char *fmt, ...);
49 #endif
50
51 #if LIBAVUTIL_VERSION_INT < (50<<16)
52 extern void av_vlog(void*, int level, const char *fmt, va_list);
53 extern int av_log_get_level(void);
54 extern void av_log_set_level(int);
55 extern void av_log_set_callback(void (*)(void*, int, const char*, va_list));
56 #else
57 extern void (*av_vlog)(void*, int, const char*, va_list);
58 #endif
59
60 #endif /* LOG_H */