echo_monitor.h

00001 /*
00002  * SpanDSP - a series of DSP components for telephony
00003  *
00004  * echo_monitor.h - Display echo canceller status, using the FLTK toolkit.
00005  *
00006  * Written by Steve Underwood <steveu@coppice.org>
00007  *
00008  * Copyright (C) 2004 Steve Underwood
00009  *
00010  * All rights reserved.
00011  *
00012  * This program is free software; you can redistribute it and/or modify
00013  * it under the terms of the GNU General Public License version 2, as
00014  * published by the Free Software Foundation.
00015  *
00016  * This program is distributed in the hope that it will be useful,
00017  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00019  * GNU General Public License for more details.
00020  *
00021  * You should have received a copy of the GNU General Public License
00022  * along with this program; if not, write to the Free Software
00023  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00024  *
00025  * $Id: echo_monitor.h,v 1.12 2008/04/26 13:39:16 steveu Exp $
00026  */
00027 
00028 /*! \page echo_monitor_page Echo canceller performance monitoring
00029 \section echo_monitor_page_sec_1 What does it do?
00030 This code controls a GUI window, which provides monitoring of the internal status
00031 of a time domain echo canceller. It shows, graphically:
00032 
00033     - the spectrum of the received signal.
00034     - the line model in use (when a known line model is being used).
00035     - the adapted coefficients of the canceller.
00036 
00037 \section echo_monitor_page_sec_2 How does it work?
00038 This code uses the FLTK cross platform GUI toolkit. It works on X11 and Windows platforms.
00039 In addition to the basic FLTK toolkit, fltk_cartesian is also required.
00040 */
00041 
00042 #if !defined(_ECHO_MONITOR_H_)
00043 #define _ECHO_MONITOR_H_
00044 
00045 #if defined(__cplusplus)
00046 extern "C"
00047 {
00048 #endif
00049 
00050 int start_echo_can_monitor(int len);
00051 int echo_can_monitor_can_update(const int16_t *coeffs, int len);
00052 int echo_can_monitor_line_model_update(const int32_t *coeffs, int len);
00053 int echo_can_monitor_line_spectrum_update(const int16_t amp[], int len);
00054 void echo_can_monitor_wait_to_end(void);
00055 void echo_can_monitor_update_display(void);
00056 
00057 #if defined(__cplusplus)
00058 }
00059 #endif
00060 
00061 #endif
00062 /*- End of file ------------------------------------------------------------*/

Generated on Tue Oct 7 20:25:45 2008 for spandsp by  doxygen 1.5.6