comparison spandsp-0.0.6pre17/src/spandsp/private/adsi.h @ 4:26cd8f1ef0b1

import spandsp-0.0.6pre17
author Peter Meerwald <pmeerw@cosy.sbg.ac.at>
date Fri, 25 Jun 2010 15:50:58 +0200
parents
children
comparison
equal deleted inserted replaced
3:c6c5a16ce2f2 4:26cd8f1ef0b1
1 /*
2 * SpanDSP - a series of DSP components for telephony
3 *
4 * private/adsi.h - Analogue display services interface and other call ID related handling.
5 *
6 * Written by Steve Underwood <steveu@coppice.org>
7 *
8 * Copyright (C) 2003 Steve Underwood
9 *
10 * All rights reserved.
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 2.1,
14 * as published by the Free Software Foundation.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License for more details.
20 *
21 * You should have received a copy of the GNU Lesser General Public
22 * License along with this program; if not, write to the Free Software
23 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24 *
25 * $Id: adsi.h,v 1.4 2009/04/12 04:20:01 steveu Exp $
26 */
27
28 /*! \file */
29
30 #if !defined(_SPANDSP_PRIVATE_ADSI_H_)
31 #define _SPANDSP_PRIVATE_ADSI_H_
32
33 /*!
34 ADSI transmitter descriptor. This contains all the state information for an ADSI
35 (caller ID, CLASS, CLIP, ACLIP) transmit channel.
36 */
37 struct adsi_tx_state_s
38 {
39 /*! */
40 int standard;
41
42 /*! */
43 tone_gen_descriptor_t alert_tone_desc;
44 /*! */
45 tone_gen_state_t alert_tone_gen;
46 /*! */
47 fsk_tx_state_t fsktx;
48 /*! */
49 dtmf_tx_state_t dtmftx;
50 /*! */
51 async_tx_state_t asynctx;
52
53 /*! */
54 int tx_signal_on;
55
56 /*! */
57 int byte_no;
58 /*! */
59 int bit_pos;
60 /*! */
61 int bit_no;
62 /*! */
63 uint8_t msg[256];
64 /*! */
65 int msg_len;
66 /*! */
67 int preamble_len;
68 /*! */
69 int preamble_ones_len;
70 /*! */
71 int postamble_ones_len;
72 /*! */
73 int stop_bits;
74 /*! */
75 int baudot_shift;
76
77 /*! */
78 logging_state_t logging;
79 };
80
81 /*!
82 ADSI receiver descriptor. This contains all the state information for an ADSI
83 (caller ID, CLASS, CLIP, ACLIP, JCLIP) receive channel.
84 */
85 struct adsi_rx_state_s
86 {
87 /*! */
88 int standard;
89 /*! */
90 put_msg_func_t put_msg;
91 /*! */
92 void *user_data;
93
94 /*! */
95 fsk_rx_state_t fskrx;
96 /*! */
97 dtmf_rx_state_t dtmfrx;
98
99 /*! */
100 int consecutive_ones;
101 /*! */
102 int bit_pos;
103 /*! */
104 int in_progress;
105 /*! */
106 uint8_t msg[256];
107 /*! */
108 int msg_len;
109 /*! */
110 int baudot_shift;
111
112 /*! A count of the framing errors. */
113 int framing_errors;
114
115 /*! */
116 logging_state_t logging;
117 };
118
119 #endif
120 /*- End of file ------------------------------------------------------------*/

Repositories maintained by Peter Meerwald, pmeerw@pmeerw.net.