blob: 9ceacce131a7df6a003c06d056d0d0831b6fca0f
1 | /* ***** BEGIN LICENSE BLOCK ***** |
2 | * Source last modified: $Id: statname.h,v 1.6 2005/04/27 19:20:50 hubbe Exp $ |
3 | * |
4 | * REALNETWORKS CONFIDENTIAL--NOT FOR DISTRIBUTION IN SOURCE CODE FORM |
5 | * Portions Copyright (c) 1995-2002 RealNetworks, Inc. |
6 | * All Rights Reserved. |
7 | * |
8 | * The contents of this file, and the files included with this file, |
9 | * are subject to the current version of the Real Format Source Code |
10 | * Porting and Optimization License, available at |
11 | * https://helixcommunity.org/2005/license/realformatsource (unless |
12 | * RealNetworks otherwise expressly agrees in writing that you are |
13 | * subject to a different license). You may also obtain the license |
14 | * terms directly from RealNetworks. You may not use this file except |
15 | * in compliance with the Real Format Source Code Porting and |
16 | * Optimization License. There are no redistribution rights for the |
17 | * source code of this file. Please see the Real Format Source Code |
18 | * Porting and Optimization License for the rights, obligations and |
19 | * limitations governing use of the contents of the file. |
20 | * |
21 | * RealNetworks is the developer of the Original Code and owns the |
22 | * copyrights in the portions it created. |
23 | * |
24 | * This file, and the files included with this file, is distributed and |
25 | * made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, |
26 | * EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS ALL |
27 | * SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF |
28 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT |
29 | * OR NON-INFRINGEMENT. |
30 | * |
31 | * Technology Compatibility Kit Test Suite(s) Location: |
32 | * https://rarvcode-tck.helixcommunity.org |
33 | * |
34 | * Contributor(s): |
35 | * |
36 | * ***** END LICENSE BLOCK ***** */ |
37 | |
38 | /************************************************************************************** |
39 | * Fixed-point RealAudio 8 decoder |
40 | * Jon Recker (jrecker@real.com), Ken Cooke (kenc@real.com) |
41 | * October 2003 |
42 | * |
43 | * statname.h - name mangling macros for static linking |
44 | **************************************************************************************/ |
45 | |
46 | #ifndef _STATNAME_H |
47 | #define _STATNAME_H |
48 | |
49 | /* define STAT_PREFIX to a unique name for static linking |
50 | * all the C functions and global variables will be mangled by the preprocessor |
51 | * e.g. void FFT(int *fftbuf) becomes void cook_FFT(int *fftbuf) |
52 | */ |
53 | #define STAT_PREFIX cook |
54 | |
55 | #define STATCC1(x,y,z) STATCC2(x,y,z) |
56 | #define STATCC2(x,y,z) x##y##z |
57 | |
58 | #ifdef STAT_PREFIX |
59 | #define STATNAME(func) STATCC1(STAT_PREFIX, _, func) |
60 | #else |
61 | #define STATNAME(func) func |
62 | #endif |
63 | |
64 | /* global functions */ |
65 | #define AllocateBuffers STATNAME(AllocateBuffers) |
66 | #define FreeBuffers STATNAME(FreeBuffers) |
67 | |
68 | #define DecodeSideInfo STATNAME(DecodeSideInfo) |
69 | #define GetBits STATNAME(GetBits) |
70 | #define AdvanceBitstream STATNAME(AdvanceBitstream) |
71 | |
72 | #define DecodeHuffmanScalar STATNAME(DecodeHuffmanScalar) |
73 | |
74 | #define DecodeGainInfo STATNAME(DecodeGainInfo) |
75 | #define CopyGainInfo STATNAME(CopyGainInfo) |
76 | |
77 | #define JointDecodeMLT STATNAME(JointDecodeMLT) |
78 | #define DecodeCoupleInfo STATNAME(DecodeCoupleInfo) |
79 | |
80 | #define DecodeEnvelope STATNAME(DecodeEnvelope) |
81 | #define CategorizeAndExpand STATNAME(CategorizeAndExpand) |
82 | #define DecodeTransform STATNAME(DecodeTransform) |
83 | |
84 | #define IMLTNoWindow STATNAME(IMLTNoWindow) |
85 | #define R4FFT STATNAME(R4FFT) |
86 | |
87 | #define DecWindowWithAttacks STATNAME(DecWindowWithAttacks) |
88 | #define DecWindowNoAttacks STATNAME(DecWindowNoAttacks) |
89 | |
90 | /* global (const) data */ |
91 | #define pkkey STATNAME(pkkey) |
92 | |
93 | #define huffTabCoupleInfo STATNAME(huffTabCoupleInfo) |
94 | #define huffTabCouple STATNAME(huffTabCouple) |
95 | #define huffTabPowerInfo STATNAME(huffTabPowerInfo) |
96 | #define huffTabPower STATNAME(huffTabPower) |
97 | #define huffTabVectorInfo STATNAME(huffTabVectorInfo) |
98 | #define huffTabVector STATNAME(huffTabVector) |
99 | |
100 | #define nmltTab STATNAME(nmltTab) |
101 | #define window STATNAME(window) |
102 | #define windowOffset STATNAME(windowOffset) |
103 | #define cos4sin4tab STATNAME(cos4sin4tab) |
104 | #define cos4sin4tabOffset STATNAME(cos4sin4tabOffset) |
105 | #define cos1sin1tab STATNAME(cos1sin1tab) |
106 | #define uniqueIDTab STATNAME(uniqueIDTab) |
107 | #define bitrevtab STATNAME(bitrevtab) |
108 | #define bitrevtabOffset STATNAME(bitrevtabOffset) |
109 | #define twidTabEven STATNAME(twidTabEven) |
110 | #define twidTabOdd STATNAME(twidTabOdd) |
111 | |
112 | /* assembly functions - either inline or in separate asm file */ |
113 | #define MULSHIFT32 STATNAME(MULSHIFT32) |
114 | #define CLIPTOSHORT STATNAME(CLIPTOSHORT) |
115 | #define FASTABS STATNAME(FASTABS) |
116 | #define CLZ STATNAME(CLZ) |
117 | |
118 | #endif /* _STATNAME_H */ |
119 |