Line | |
---|
1 | /* -*- mode: C; tab-width:8; c-basic-offset:8 -*- |
---|
2 | * vi:set ts=8: |
---|
3 | * |
---|
4 | * al_mixfunc.h |
---|
5 | * |
---|
6 | * Mixfuncs --- specialized mixing functions --- are unrolled, hopefully |
---|
7 | * easily optimizable mixing functions that take advantage of knowing the |
---|
8 | * number of mixing streams passed to them. Used in conjunction with the |
---|
9 | * mixmanager, this provides an interface for the library to plug in well |
---|
10 | * optimized mixing functions. |
---|
11 | */ |
---|
12 | #ifndef _AL_MIXFUNC_H_ |
---|
13 | #define _AL_MIXFUNC_H_ |
---|
14 | |
---|
15 | #include "al_types.h" |
---|
16 | #include "al_mixer.h" |
---|
17 | |
---|
18 | typedef struct _AL_MixFunc { |
---|
19 | void ( *funcs[ MAXMIXSOURCES + 1 ] )( ALshort *dst, |
---|
20 | alMixEntry *entries ); |
---|
21 | void ( *func_n )( ALshort *dst, |
---|
22 | alMixEntry *entries, |
---|
23 | ALuint numents ); |
---|
24 | ALuint max; |
---|
25 | } ALMixFunc; |
---|
26 | |
---|
27 | /* |
---|
28 | * _alMixFuncInit initializes the already allocated ALMixFunc object (mf) to |
---|
29 | * contain at least size mixing functions. |
---|
30 | */ |
---|
31 | ALboolean _alMixFuncInit( ALMixFunc *mf, ALuint size ); |
---|
32 | |
---|
33 | /* |
---|
34 | * _alMixFuncDestroy performs any needed finalization on the ALMixFunc object |
---|
35 | * mf. |
---|
36 | */ |
---|
37 | void _alMixFuncDestroy( ALMixFunc *mf ); |
---|
38 | |
---|
39 | #endif /* _AL_MIXFUNC_H_ */ |
---|
Note: See
TracBrowser
for help on using the repository browser.