aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/hrtf.h
diff options
context:
space:
mode:
authorChris Robinson <chris.kcat@gmail.com>2017-04-05 12:27:30 -0700
committerChris Robinson <chris.kcat@gmail.com>2017-04-05 12:27:30 -0700
commit2eaa10fc213dd60b197129da17b431b3d7e9f1d5 (patch)
tree21795210b08e9d29b5afff3fcfe557e58b079f05 /Alc/hrtf.h
parentf76dea0c0321ebcc0f5a8838f1826309463cd2c1 (diff)
Load HRTF files as needed
Currently only applies to external files, rather than embedded datasets. Also, HRTFs aren't unloaded after being loaded, until library shutdown.
Diffstat (limited to 'Alc/hrtf.h')
-rw-r--r--Alc/hrtf.h9
1 files changed, 3 insertions, 6 deletions
diff --git a/Alc/hrtf.h b/Alc/hrtf.h
index 009bddea..4e25dde3 100644
--- a/Alc/hrtf.h
+++ b/Alc/hrtf.h
@@ -18,6 +18,8 @@
#define HRTF_AMBI_MAX_CHANNELS 16
+struct HrtfEntry;
+
struct Hrtf {
ALuint sampleRate;
ALsizei irSize;
@@ -29,17 +31,12 @@ struct Hrtf {
const ALubyte *delays;
};
-struct HrtfEntry {
- struct HrtfEntry *next;
- struct Hrtf *handle;
- char filename[];
-};
-
void FreeHrtfs(void);
vector_EnumeratedHrtf EnumerateHrtf(const_al_string devname);
void FreeHrtfList(vector_EnumeratedHrtf *list);
+struct Hrtf *GetLoadedHrtf(struct HrtfEntry *entry);
void GetHrtfCoeffs(const struct Hrtf *Hrtf, ALfloat elevation, ALfloat azimuth, ALfloat spread, ALfloat (*coeffs)[2], ALsizei *delays);