SIP: Add DTMF support (receive INFO only)
[lcr.git] / libgsmfr / inc / gsm.h.orig
1 /*
2  * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische
3  * Universitaet Berlin.  See the accompanying file "COPYRIGHT" for
4  * details.  THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
5  */
6
7 /*$Header: /tmp_amd/presto/export/kbs/jutta/src/gsm/RCS/gsm.h,v 1.10 1996/07/02 10:15:22 jutta Exp $*/
8
9 #ifndef GSM_H
10 #define GSM_H
11
12 #ifdef __cplusplus
13 #       define  NeedFunctionPrototypes  1
14 #endif
15
16 #if __STDC__
17 #       define  NeedFunctionPrototypes  1
18 #endif
19
20 #ifdef _NO_PROTO
21 #       undef   NeedFunctionPrototypes
22 #endif
23
24 #ifdef NeedFunctionPrototypes
25 #   include     <stdio.h>               /* for FILE *   */
26 #endif
27
28 #undef GSM_P
29 #if NeedFunctionPrototypes
30 #       define  GSM_P( protos ) protos
31 #else
32 #       define  GSM_P( protos ) ( /* protos */ )
33 #endif
34
35 /*
36  *      Interface
37  */
38
39 typedef struct gsm_state *      gsm;
40 typedef short                   gsm_signal;             /* signed 16 bit */
41 typedef unsigned char           gsm_byte;
42 typedef gsm_byte                gsm_frame[33];          /* 33 * 8 bits   */
43
44 #define GSM_MAGIC               0xD                     /* 13 kbit/s RPE-LTP */
45
46 #define GSM_PATCHLEVEL          9
47 #define GSM_MINOR               0
48 #define GSM_MAJOR               1
49
50 #define GSM_OPT_VERBOSE         1
51 #define GSM_OPT_FAST            2
52 #define GSM_OPT_LTP_CUT         3
53 #define GSM_OPT_WAV49           4
54 #define GSM_OPT_FRAME_INDEX     5
55 #define GSM_OPT_FRAME_CHAIN     6
56
57 extern gsm  gsm_create  GSM_P((void));
58 extern void gsm_destroy GSM_P((gsm));   
59
60 extern int  gsm_print   GSM_P((FILE *, gsm, gsm_byte  *));
61 extern int  gsm_option  GSM_P((gsm, int, int *));
62
63 extern void gsm_encode  GSM_P((gsm, gsm_signal *, gsm_byte  *));
64 extern int  gsm_decode  GSM_P((gsm, gsm_byte   *, gsm_signal *));
65
66 extern int  gsm_explode GSM_P((gsm, gsm_byte   *, gsm_signal *));
67 extern void gsm_implode GSM_P((gsm, gsm_signal *, gsm_byte   *));
68
69 #undef  GSM_P
70
71 #endif  /* GSM_H */