annotate crc.h @ 392:d0f3bb6e367e libavutil

Add FFMPEG_ prefix to all multiple inclusion guards.
author diego
date Wed, 17 Oct 2007 09:37:46 +0000
parents b1953daf424e
children 40ef1f81f445
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: 30
diff changeset
1 /*
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 30
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: 30
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: 30
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: 30
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: 30
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: 30
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: 30
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: 30
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: 30
diff changeset
15 *
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 30
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: 30
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: 30
diff changeset
19 */
11be8e0d1344 Add official LGPL license headers to the files that were missing them.
diego
parents: 30
diff changeset
20
392
d0f3bb6e367e Add FFMPEG_ prefix to all multiple inclusion guards.
diego
parents: 376
diff changeset
21 #ifndef FFMPEG_CRC_H
d0f3bb6e367e Add FFMPEG_ prefix to all multiple inclusion guards.
diego
parents: 376
diff changeset
22 #define FFMPEG_CRC_H
30
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
23
343
f21d1907d47c include all prerequisites in header files
mru
parents: 317
diff changeset
24 #include <stdint.h>
f21d1907d47c include all prerequisites in header files
mru
parents: 317
diff changeset
25 #include <sys/types.h>
f21d1907d47c include all prerequisites in header files
mru
parents: 317
diff changeset
26
30
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
27 typedef uint32_t AVCRC;
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
28
376
b1953daf424e Use defines instead of raw hex numbers to specify CRC polynomials
reimar
parents: 343
diff changeset
29 #define AV_CRC_8_ATM 0x07
b1953daf424e Use defines instead of raw hex numbers to specify CRC polynomials
reimar
parents: 343
diff changeset
30 #define AV_CRC_16 0x8005
b1953daf424e Use defines instead of raw hex numbers to specify CRC polynomials
reimar
parents: 343
diff changeset
31 #define AV_CRC_16_CCITT 0x1021
b1953daf424e Use defines instead of raw hex numbers to specify CRC polynomials
reimar
parents: 343
diff changeset
32 #define AV_CRC_32_IEEE 0x04C11DB7L
b1953daf424e Use defines instead of raw hex numbers to specify CRC polynomials
reimar
parents: 343
diff changeset
33 //! reversed bitorder version of AV_CRC_32_IEEE
b1953daf424e Use defines instead of raw hex numbers to specify CRC polynomials
reimar
parents: 343
diff changeset
34 #define AV_CRC_32_IEEE_LE 0xEDB88320L
b1953daf424e Use defines instead of raw hex numbers to specify CRC polynomials
reimar
parents: 343
diff changeset
35
317
0df19c6b37d0 kill 3 more av_mallocz_static()
michael
parents: 116
diff changeset
36 #if LIBAVUTIL_VERSION_INT < (50<<16)
30
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
37 extern AVCRC *av_crcEDB88320;
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
38 extern AVCRC *av_crc04C11DB7;
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
39 extern AVCRC *av_crc8005 ;
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
40 extern AVCRC *av_crc07 ;
317
0df19c6b37d0 kill 3 more av_mallocz_static()
michael
parents: 116
diff changeset
41 #else
0df19c6b37d0 kill 3 more av_mallocz_static()
michael
parents: 116
diff changeset
42 extern AVCRC av_crcEDB88320[];
0df19c6b37d0 kill 3 more av_mallocz_static()
michael
parents: 116
diff changeset
43 extern AVCRC av_crc04C11DB7[];
0df19c6b37d0 kill 3 more av_mallocz_static()
michael
parents: 116
diff changeset
44 extern AVCRC av_crc8005 [];
0df19c6b37d0 kill 3 more av_mallocz_static()
michael
parents: 116
diff changeset
45 extern AVCRC av_crc07 [];
0df19c6b37d0 kill 3 more av_mallocz_static()
michael
parents: 116
diff changeset
46 #endif
30
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
47
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
48 int av_crc_init(AVCRC *ctx, int le, int bits, uint32_t poly, int ctx_size);
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
49 uint32_t av_crc(const AVCRC *ctx, uint32_t start_crc, const uint8_t *buffer, size_t length);
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
50
392
d0f3bb6e367e Add FFMPEG_ prefix to all multiple inclusion guards.
diego
parents: 376
diff changeset
51 #endif /* FFMPEG_CRC_H */
30
664e2d2b92b9 generic crc calculation code
michael
parents:
diff changeset
52