1 #ifndef _AL_LISTENER_H_
2 #define _AL_LISTENER_H_
11 struct ALcontextProps
{
12 ALfloat DopplerFactor
;
13 ALfloat DopplerVelocity
;
15 ALboolean SourceDistanceModel
;
16 enum DistanceModel DistanceModel
;
17 ALfloat MetersPerUnit
;
19 ATOMIC(struct ALcontextProps
*) next
;
22 struct ALlistenerProps
{
29 ATOMIC(struct ALlistenerProps
*) next
;
32 typedef struct ALlistener
{
33 alignas(16) ALfloat Position
[3];
39 ATOMIC_FLAG PropsClean
;
41 /* Pointer to the most recent property values that are awaiting an update.
43 ATOMIC(struct ALlistenerProps
*) Update
;
50 ALfloat MetersPerUnit
;
52 ALfloat DopplerFactor
;
53 ALfloat SpeedOfSound
; /* in units per sec! */
54 ALfloat ReverbSpeedOfSound
; /* in meters per sec! */
56 ALboolean SourceDistanceModel
;
57 enum DistanceModel DistanceModel
;
61 void UpdateListenerProps(ALCcontext
*context
);