annotate log.h @ 806:757914de10e1 libavutil

Add replacements for log2f(), exp2() and exp2f() for platforms that lacks it. Should fix build breakage on some platforms introduced in r21125.
author vitor
date Tue, 12 Jan 2010 02:19:51 +0000
parents e67b4de734af
children 5ffcf744a157
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
108
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
1 /*
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
2 * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
3 *
116
d76a36742464 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 108
diff changeset
4 * This file is part of FFmpeg.
d76a36742464 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 108
diff changeset
5 *
d76a36742464 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 108
diff changeset
6 * FFmpeg is free software; you can redistribute it and/or
108
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
7 * modify it under the terms of the GNU Lesser General Public
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
8 * License as published by the Free Software Foundation; either
116
d76a36742464 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 108
diff changeset
9 * version 2.1 of the License, or (at your option) any later version.
108
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
10 *
116
d76a36742464 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 108
diff changeset
11 * FFmpeg is distributed in the hope that it will be useful,
108
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
14 * Lesser General Public License for more details.
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
15 *
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
16 * You should have received a copy of the GNU Lesser General Public
116
d76a36742464 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 108
diff changeset
17 * License along with FFmpeg; if not, write to the Free Software
108
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
19 */
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 88
diff changeset
20
567
bd4052d9050c Globally rename the header inclusion guard names.
stefano
parents: 504
diff changeset
21 #ifndef AVUTIL_LOG_H
bd4052d9050c Globally rename the header inclusion guard names.
stefano
parents: 504
diff changeset
22 #define AVUTIL_LOG_H
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
23
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
24 #include <stdarg.h>
602
0b84593767d8 add the necessary include for LIBAV*_VERSION_*
aurel
parents: 567
diff changeset
25 #include "avutil.h"
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
26
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
27 /**
636
c04808220c83 spelling/grammar/consistency review part II
diego
parents: 602
diff changeset
28 * Describes the class of an AVClass context structure. That is an
499
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
29 * arbitrary struct of which the first field is a pointer to an
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
30 * AVClass struct (e.g. AVCodecContext, AVFormatContext etc.).
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
31 */
754
e67b4de734af Remove useless definition of struct AVCLASS.
stefano
parents: 738
diff changeset
32 typedef struct {
499
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
33 /**
504
b66f7eda69d1 minor wording fix
diego
parents: 503
diff changeset
34 * The name of the class; usually it is the same name as the
503
1a16a6f15796 minor spelling fix
diego
parents: 499
diff changeset
35 * context structure type to which the AVClass is associated.
499
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
36 */
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
37 const char* class_name;
499
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
38
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
39 /**
636
c04808220c83 spelling/grammar/consistency review part II
diego
parents: 602
diff changeset
40 * A pointer to a function which returns the name of a context
738
4f98a323598c Remove '\p', '\c' and '\e' doxygen markup from doxy, as it should
stefano
parents: 689
diff changeset
41 * instance ctx associated with the class.
499
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
42 */
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
43 const char* (*item_name)(void* ctx);
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
44
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
45 /**
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
46 * a pointer to the first option specified in the class if any or NULL
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
47 *
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
48 * @see av_set_default_options()
67ea650d4590 Enhance documentation for AVClass
benoit
parents: 494
diff changeset
49 */
144
daeb1d7eec41 make option field const
bcoudurier
parents: 116
diff changeset
50 const struct AVOption *option;
754
e67b4de734af Remove useless definition of struct AVCLASS.
stefano
parents: 738
diff changeset
51 } AVClass;
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
52
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
53 /* av_log API */
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
54
233
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
55 #define AV_LOG_QUIET -8
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
56
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
57 /**
636
c04808220c83 spelling/grammar/consistency review part II
diego
parents: 602
diff changeset
58 * Something went really wrong and we will crash now.
233
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
59 */
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
60 #define AV_LOG_PANIC 0
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
61
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
62 /**
637
683a6dbdd2b2 spelling/grammar/consistency review part III
diego
parents: 636
diff changeset
63 * Something went wrong and recovery is not possible.
683a6dbdd2b2 spelling/grammar/consistency review part III
diego
parents: 636
diff changeset
64 * For example, no header was found for a format which depends
683a6dbdd2b2 spelling/grammar/consistency review part III
diego
parents: 636
diff changeset
65 * on headers or an illegal combination of parameters is used.
233
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
66 */
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
67 #define AV_LOG_FATAL 8
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
68
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
69 /**
637
683a6dbdd2b2 spelling/grammar/consistency review part III
diego
parents: 636
diff changeset
70 * Something went wrong and cannot losslessly be recovered.
683a6dbdd2b2 spelling/grammar/consistency review part III
diego
parents: 636
diff changeset
71 * However, not all future data is affected.
233
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
72 */
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
73 #define AV_LOG_ERROR 16
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
74
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
75 /**
637
683a6dbdd2b2 spelling/grammar/consistency review part III
diego
parents: 636
diff changeset
76 * Something somehow does not look correct. This may or may not
683a6dbdd2b2 spelling/grammar/consistency review part III
diego
parents: 636
diff changeset
77 * lead to problems. An example would be the use of '-vstrict -2'.
233
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
78 */
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
79 #define AV_LOG_WARNING 24
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
80
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
81 #define AV_LOG_INFO 32
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
82 #define AV_LOG_VERBOSE 40
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
83
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
84 /**
636
c04808220c83 spelling/grammar/consistency review part II
diego
parents: 602
diff changeset
85 * Stuff which is only useful for libav* developers.
233
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
86 */
0e59652783b7 Increase the av_log() levels, and add some documentation for them
lucabe
parents: 163
diff changeset
87 #define AV_LOG_DEBUG 48
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
88
270
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
89 /**
636
c04808220c83 spelling/grammar/consistency review part II
diego
parents: 602
diff changeset
90 * Sends the specified message to the log if the level is less than or equal
c04808220c83 spelling/grammar/consistency review part II
diego
parents: 602
diff changeset
91 * to the current av_log_level. By default, all logging messages are sent to
270
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
92 * stderr. This behavior can be altered by setting a different av_vlog callback
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
93 * function.
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
94 *
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
95 * @param avcl A pointer to an arbitrary struct of which the first field is a
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
96 * pointer to an AVClass struct.
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
97 * @param level The importance level of the message, lower values signifying
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
98 * higher importance.
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
99 * @param fmt The format string (printf-compatible) that specifies how
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
100 * subsequent arguments are converted to output.
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
101 * @see av_vlog
55cd41bc50bf Move the unaltered Doxygen docs from the log source code to the accompanying
takis
parents: 233
diff changeset
102 */
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
103 #ifdef __GNUC__
494
4b4a3fb11c25 remove useless extern keyword.
benoit
parents: 408
diff changeset
104 void av_log(void*, int level, const char *fmt, ...) __attribute__ ((__format__ (__printf__, 3, 4)));
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
105 #else
494
4b4a3fb11c25 remove useless extern keyword.
benoit
parents: 408
diff changeset
106 void av_log(void*, int level, const char *fmt, ...);
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
107 #endif
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
108
494
4b4a3fb11c25 remove useless extern keyword.
benoit
parents: 408
diff changeset
109 void av_vlog(void*, int level, const char *fmt, va_list);
4b4a3fb11c25 remove useless extern keyword.
benoit
parents: 408
diff changeset
110 int av_log_get_level(void);
4b4a3fb11c25 remove useless extern keyword.
benoit
parents: 408
diff changeset
111 void av_log_set_level(int);
4b4a3fb11c25 remove useless extern keyword.
benoit
parents: 408
diff changeset
112 void av_log_set_callback(void (*)(void*, int, const char*, va_list));
4b4a3fb11c25 remove useless extern keyword.
benoit
parents: 408
diff changeset
113 void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl);
81
5cfa773a3bdd Move av_log() & friends to libavutil
lucabe
parents:
diff changeset
114
567
bd4052d9050c Globally rename the header inclusion guard names.
stefano
parents: 504
diff changeset
115 #endif /* AVUTIL_LOG_H */