diff options
author | 2008-08-11 00:32:08 +0000 | |
---|---|---|
committer | 2008-08-11 00:32:08 +0000 | |
commit | 3710253aa77562ab4ab3e5abe9714f9f5a631b33 (patch) | |
tree | 064b48fd487739f3ed747215c7fc088ff66b0227 /src/emu/sound/filter.h | |
parent | fdf667cf9c4ba2d82c71eeb8ae9099151c33359a (diff) |
This (mostly - see below) completes the structure, lower-casing functions and re-inclusion updates of the src\sound\emu headers.
I did not do much to the following files because I did not know the best way to name them.
aicadsp.h
sid.h
sidenvel.h
sidvoice.h
ymdeltat.h
I did not update structures only used in the src\emu\sound\*.c files. They are only used locally in the file so they were not worth the effort.
Diffstat (limited to 'src/emu/sound/filter.h')
-rw-r--r-- | src/emu/sound/filter.h | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/src/emu/sound/filter.h b/src/emu/sound/filter.h index 036813f1569..b1a87e2b77d 100644 --- a/src/emu/sound/filter.h +++ b/src/emu/sound/filter.h @@ -1,10 +1,12 @@ -#ifndef __FILTER_H -#define __FILTER_H +#pragma once + +#ifndef __FILTER_H__ +#define __FILTER_H__ /* Max filter order */ #define FILTER_ORDER_MAX 51 -/* Define to use interger calculation */ +/* Define to use integer calculation */ #define FILTER_USE_INT #ifdef FILTER_USE_INT @@ -14,15 +16,19 @@ typedef int filter_real; typedef double filter_real; #endif -typedef struct filter_struct { +typedef struct _filter filter; +struct _filter +{ filter_real xcoeffs[(FILTER_ORDER_MAX+1)/2]; unsigned order; -} filter; +}; -typedef struct filter_state_struct { +typedef struct _filter_state filter_state; +struct _filter_state +{ unsigned prev_mac; filter_real xprev[FILTER_ORDER_MAX]; -} filter_state; +}; /* Allocate a FIR Low Pass filter */ filter* filter_lp_fir_alloc(double freq, int order); @@ -59,12 +65,14 @@ filter_real filter_compute(filter* f, filter_state* s); #define Q_TO_DAMP(q) (1.0/q) -typedef struct filter2_context_struct { +typedef struct _filter2_context filter2_context; +struct _filter2_context +{ double x0, x1, x2; /* x[k], x[k-1], x[k-2], current and previous 2 input values */ double y0, y1, y2; /* y[k], y[k-1], y[k-2], current and previous 2 output values */ double a1, a2; /* digital filter coefficients, denominator */ double b0, b1, b2; /* digital filter coefficients, numerator */ -} filter2_context; +}; /* Setup the filter context based on the passed filter type info. @@ -109,4 +117,4 @@ void filter2_step(filter2_context *filter2); void filter_opamp_m_bandpass_setup(double r1, double r2, double r3, double c1, double c2, filter2_context *filter2); -#endif +#endif /* __FILTER_H__ */ |