annotate base64.h @ 510:b7593ce78422 libavutil

Make av_fifo*_read() ignore the available amount of data. This is more efficient as in practice the check is redundant most of the time. Callers which do not know if enough data is available have to check it with av_fifo_size(). Doing the check in *read() means the caller has no choice to skip the check when its known to be redundant. Also the return value was never documented in a public header so changing it should not break the API. Besides this fixes the case where read() failed on a 100% full fifo.
author michael
date Sun, 25 May 2008 22:20:39 +0000
parents 62575220eb1a
children bd4052d9050c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
1 /*
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
2 * Base64.c
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
3 * Copyright (c) 2006 Ryan Martell. (rdm4@martellventures.com)
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
4 *
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
5 * This file is part of FFmpeg.
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
6 *
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
7 * FFmpeg is free software; you can redistribute it and/or
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
8 * modify it under the terms of the GNU Lesser General Public
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
9 * License as published by the Free Software Foundation; either
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
10 * version 2.1 of the License, or (at your option) any later version.
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
11 *
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
12 * FFmpeg is distributed in the hope that it will be useful,
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
15 * Lesser General Public License for more details.
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
16 *
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
17 * You should have received a copy of the GNU Lesser General Public
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
18 * License along with FFmpeg; if not, write to the Free Software
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
20 */
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
21
392
d0f3bb6e367e Add FFMPEG_ prefix to all multiple inclusion guards.
diego
parents: 345
diff changeset
22 #ifndef FFMPEG_BASE64_H
d0f3bb6e367e Add FFMPEG_ prefix to all multiple inclusion guards.
diego
parents: 345
diff changeset
23 #define FFMPEG_BASE64_H
344
580fffa86f08 add multiple inclusion guards to headers
mru
parents: 343
diff changeset
24
343
f21d1907d47c include all prerequisites in header files
mru
parents: 320
diff changeset
25 #include <stdint.h>
f21d1907d47c include all prerequisites in header files
mru
parents: 320
diff changeset
26
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
27 /**
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
28 * decodes base64
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
29 * param order as strncpy()
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
30 */
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
31 int av_base64_decode(uint8_t * out, const char *in, int out_length);
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
32
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
33 /**
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
34 * encodes base64
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
35 * @param src data, not a string
320
ca1f5d65e653 expose av_base64_decode and av_base64_encode
lu_zero
parents: 244
diff changeset
36 * @param buf output string
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
37 */
397
62575220eb1a Mark the source buffer as "const"
lucabe
parents: 392
diff changeset
38 char *av_base64_encode(char * buf, int buf_len, const uint8_t * src, int len);
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
39
392
d0f3bb6e367e Add FFMPEG_ prefix to all multiple inclusion guards.
diego
parents: 345
diff changeset
40 #endif /* FFMPEG_BASE64_H */