timidity_tables.h

Go to the documentation of this file.
00001 /* 
00002 
00003     TiMidity -- Experimental MIDI to WAVE converter
00004     Copyright (C) 1995 Tuukka Toivonen <toivonen@clinet.fi>
00005 
00006     This program is free software; you can redistribute it and/or modify
00007     it under the terms of the GNU General Public License as published by
00008     the Free Software Foundation; either version 2 of the License, or
00009     (at your option) any later version.
00010 
00011     This program is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014     GNU General Public License for more details.
00015 
00016     You should have received a copy of the GNU General Public License
00017     along with this program; if not, write to the Free Software
00018     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00019 
00020     tables.h
00021 */
00022 
00023 #ifdef USE_TIMIDITY_MIDI
00024 
00025 #ifndef TIMIDITY_TABLES_H_INCLUDED
00026 #define TIMIDITY_TABLES_H_INCLUDED
00027 
00028 #include "timidity.h"
00029 
00030 #include <cmath>
00031 
00032 #ifdef NS_TIMIDITY
00033 namespace NS_TIMIDITY {
00034 #endif
00035 
00036 #ifdef LOOKUP_SINE
00037 extern float sine(int x);
00038 #else
00039 #define sine(x) (std::sin((2*PI/1024.0) * (x)))
00040 #endif
00041 
00042 #define SINE_CYCLE_LENGTH 1024
00043 extern sint32 freq_table[];
00044 extern double vol_table[];
00045 extern double bend_fine[];
00046 extern double bend_coarse[];
00047 extern uint8 *_l2u; /* 13-bit PCM to 8-bit u-law */
00048 extern uint8 _l2u_[]; /* used in LOOKUP_HACK */
00049 #ifdef LOOKUP_HACK
00050 extern sint16 _u2l[];
00051 extern sint32 *mixup;
00052 #ifdef LOOKUP_INTERPOLATION
00053 extern sint8 *iplookup;
00054 #endif
00055 #endif
00056 
00057 extern void init_tables(void);
00058 
00059 #ifdef NS_TIMIDITY
00060 };
00061 #endif
00062 
00063 #endif
00064 
00065 #endif //USE_TIMIDITY_MIDI

Generated on Fri Jul 27 22:27:45 2007 for pentagram by  doxygen 1.4.7