summaryrefslogtreecommitdiff
path: root/audio_codec/libraac/include/statname.h (plain)
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