tomwalters@0
|
1 /*
|
tomwalters@0
|
2 Copyright (c) Applied Psychology Unit, Medical Research Council. 1988, 1989
|
tomwalters@0
|
3 ===========================================================================
|
tomwalters@0
|
4
|
tomwalters@0
|
5 Permission to use, copy, modify, and distribute this software without fee
|
tomwalters@0
|
6 is hereby granted for research purposes, provided that this copyright
|
tomwalters@0
|
7 notice appears in all copies and in all supporting documentation, and that
|
tomwalters@0
|
8 the software is not redistributed for any fee (except for a nominal shipping
|
tomwalters@0
|
9 charge). Anyone wanting to incorporate all or part of this software in a
|
tomwalters@0
|
10 commercial product must obtain a license from the Medical Research Council.
|
tomwalters@0
|
11
|
tomwalters@0
|
12 The MRC makes no representations about the suitability of this
|
tomwalters@0
|
13 software for any purpose. It is provided "as is" without express or implied
|
tomwalters@0
|
14 warranty.
|
tomwalters@0
|
15
|
tomwalters@0
|
16 THE MRC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
tomwalters@0
|
17 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL THE
|
tomwalters@0
|
18 A.P.U. BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
|
tomwalters@0
|
19 DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
|
tomwalters@0
|
20 AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
tomwalters@0
|
21 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
tomwalters@0
|
22 */
|
tomwalters@0
|
23
|
tomwalters@0
|
24 /*
|
tomwalters@0
|
25 phase.h
|
tomwalters@0
|
26 =======
|
tomwalters@0
|
27
|
tomwalters@0
|
28 defines for phase compensation functionality
|
tomwalters@0
|
29
|
tomwalters@0
|
30 */
|
tomwalters@0
|
31
|
tomwalters@0
|
32 #define _PHASE_H_
|
tomwalters@0
|
33
|
tomwalters@0
|
34
|
tomwalters@0
|
35 typedef Pointer FilterState ;
|
tomwalters@0
|
36 typedef int (*FilterModule)() ;
|
tomwalters@0
|
37 typedef int PointCount ;
|
tomwalters@0
|
38
|
tomwalters@0
|
39 typedef struct _phase_compensator_state PhaseCompensatorState ;
|
tomwalters@0
|
40
|
tomwalters@0
|
41 extern PhaseCompensatorState *NewPhaseCompensator() ;
|
tomwalters@0
|
42 extern PointCount PhaseCompensateFilter() ;
|
tomwalters@0
|
43 extern void FreeCompensatedFilter() ;
|
tomwalters@0
|
44
|
tomwalters@0
|
45 /* private data for phase compensators */
|
tomwalters@0
|
46
|
tomwalters@0
|
47
|
tomwalters@0
|
48 struct _phase_compensator_state {
|
tomwalters@0
|
49 FilterState filter_state ;
|
tomwalters@0
|
50 FilterModule filter_module ;
|
tomwalters@0
|
51 int sample_delay ;
|
tomwalters@0
|
52 Pointer delay_buffer ;
|
tomwalters@0
|
53 } ;
|
tomwalters@0
|
54
|
tomwalters@0
|
55
|