Chris Robinson
|
189add1d5a
|
Use a separate array for the auxiliary slots in the mixer
|
2011-08-30 20:13:42 -07:00 |
|
Chris Robinson
|
755062fb76
|
Fix compilation with MSVC
|
2011-08-30 17:55:52 -07:00 |
|
Chris Robinson
|
7d577832cd
|
Add functions to retrieve the source from the source map while removing it
|
2011-08-30 17:32:49 -07:00 |
|
Chris Robinson
|
c4866afbe0
|
Use a RWLock and atomic exchanges for thunk handling
|
2011-08-30 17:24:58 -07:00 |
|
Chris Robinson
|
ee60248d19
|
Lock the context while deleting sources only as needed
|
2011-08-30 00:33:01 -07:00 |
|
Chris Robinson
|
d546813c05
|
Don't lock the context while checking the validity of objects
|
2011-08-30 00:04:02 -07:00 |
|
Chris Robinson
|
f02d9e22d7
|
Do a pointer exchange when replacing the source buffer queue
|
2011-08-29 23:55:24 -07:00 |
|
Chris Robinson
|
cc67f45892
|
Use the reference counting functions for the buffer and auxiliary slot refs
|
2011-08-29 23:10:02 -07:00 |
|
Chris Robinson
|
c6a110ec59
|
Hold the context lock as needed while generating and deleting sources
|
2011-08-29 22:51:18 -07:00 |
|
Chris Robinson
|
7408396fd4
|
Use a generic int type to handle enum swaps
|
2011-08-29 21:30:12 -07:00 |
|
Chris Robinson
|
da081b81c4
|
Do a compare-exchange to set the context error
This allows for unlocked context access when getting the error
|
2011-08-29 20:52:13 -07:00 |
|
Chris Robinson
|
500ad776ea
|
Exchange the AL error when retrieving it
|
2011-08-29 20:34:47 -07:00 |
|
Chris Robinson
|
e4a2b69b37
|
Make specific functions to lock/unlock UIntMap access
|
2011-08-29 20:21:28 -07:00 |
|
Chris Robinson
|
8eaa9bb469
|
Manually lock the map while iterating through its contents
|
2011-08-29 20:05:50 -07:00 |
|
Chris Robinson
|
b283dd3682
|
Use a read-write lock to protect access to the UInt maps
|
2011-08-29 19:15:22 -07:00 |
|
Chris Robinson
|
4a5dd73a3c
|
Make the source's NeedsUpdate volatile
|
2011-08-29 13:43:59 -07:00 |
|
Chris Robinson
|
950570b8c3
|
Do a proper exchange when setting a new state
|
2011-08-29 13:29:37 -07:00 |
|
Chris Robinson
|
72beb577b6
|
Lock the context as needed for the defer and process calls
|
2011-08-29 13:22:07 -07:00 |
|
Chris Robinson
|
de65ee08c9
|
Make ALCcontext's DeferUpdates field volatile
|
2011-08-29 11:55:01 -07:00 |
|
Chris Robinson
|
0abe13e3ad
|
GCC's atomic built-ins were introduced in 4.1.0, so check for that version
|
2011-08-29 10:51:58 -07:00 |
|
Chris Robinson
|
2ac808ffa2
|
Fix typo
|
2011-08-29 01:01:20 -07:00 |
|
Chris Robinson
|
58078e2c1e
|
Use atomic exchanges when checking for updates to objects' internal parameters
|
2011-08-29 00:50:55 -07:00 |
|
Chris Robinson
|
01503f8a7b
|
Use an enum instead of an boolean for some flags
They still only hold AL_TRUE or AL_FALSE, but some systems can't properly
handle atomic swaps of 1-byte types.
|
2011-08-29 00:03:09 -07:00 |
|
Chris Robinson
|
783375af56
|
Use a list of contexts in the device instead of an array
|
2011-08-28 19:28:41 -07:00 |
|
Chris Robinson
|
5eceb593e9
|
Emulate pthread TLS functions in Windows
|
2011-08-28 17:21:01 -07:00 |
|
Chris Robinson
|
82244f298c
|
Add reference counting to the ALC contexts
|
2011-08-28 15:44:03 -07:00 |
|
Chris Robinson
|
7e2155d937
|
Return an ALC error enum from the OpenCapture backend method
|
2011-08-24 14:44:15 -07:00 |
|
Chris Robinson
|
c696d4dbb2
|
Return an ALC error enum from the OpenPlayback backend method
|
2011-08-24 14:24:48 -07:00 |
|
Chris Robinson
|
f5195ee4f2
|
Remove the Buffer field from the source
|
2011-08-23 09:55:22 -07:00 |
|
Chris Robinson
|
9f25ad42c1
|
Explicitly set BufferListStart's prev field
|
2011-08-23 09:27:35 -07:00 |
|
Chris Robinson
|
65d42083e1
|
Prevent source and effect slot updates from occuring while updates are deferred
|
2011-08-22 17:13:03 -07:00 |
|
Chris Robinson
|
6992a67dd9
|
Remove some g_ prefixes
|
2011-08-22 07:50:08 -07:00 |
|
Chris Robinson
|
922f5fa081
|
Rename a couple variables
|
2011-08-22 07:44:22 -07:00 |
|
Chris Robinson
|
199df253ca
|
Always use the thunk functions to get object IDs
|
2011-08-22 07:40:14 -07:00 |
|
Chris Robinson
|
c1f435cc18
|
Don't use the thunk array for object lookups
|
2011-08-22 07:22:02 -07:00 |
|
Chris Robinson
|
858592832f
|
Defer source offset changes requested by the app
|
2011-08-21 00:49:04 -07:00 |
|
Chris Robinson
|
a97211b572
|
Use -1 to mark an invalid source offset instead of 0
|
2011-08-21 00:35:37 -07:00 |
|
Chris Robinson
|
f196a9fc67
|
Defer source state changes from alSourcePlay/Pause/Stop/Rewind calls
|
2011-08-20 23:59:24 -07:00 |
|
Chris Robinson
|
7ea71d8bfa
|
Use a separate function to set the source state
|
2011-08-20 06:31:10 -07:00 |
|
Chris Robinson
|
22ad15e1f1
|
Move some functions into a separate helper source file
|
2011-08-20 04:01:07 -07:00 |
|
Chris Robinson
|
8148626ba3
|
Allow the backend init functions to return failure
|
2011-08-17 06:05:26 -07:00 |
|
Chris Robinson
|
38a4d9a6c5
|
Get rid of the remaining min/max usage
|
2011-08-16 18:53:04 -07:00 |
|
Chris Robinson
|
9f5bf5f930
|
Rename minF/maxF/clampF to minf/maxf/clampf for consistency
|
2011-08-16 18:40:21 -07:00 |
|
Chris Robinson
|
04dad28228
|
Use mini/maxi/clampi and minu/maxu/clampu to replace min/max calls
|
2011-08-16 18:33:10 -07:00 |
|
Chris Robinson
|
8a51a7ea2d
|
Use inline minF/maxF/clampF functions instead of the __min/__max macros
|
2011-08-16 04:21:58 -07:00 |
|
Chris Robinson
|
2f3bd5b5d9
|
Move an include to where it makes more sense to be
|
2011-07-23 05:53:53 -07:00 |
|
Chris Robinson
|
fad80a4f92
|
Don't cast for the float versions of math functions
|
2011-07-23 05:52:10 -07:00 |
|
Chris Robinson
|
13f9dbe582
|
Look for ieeefp.h and include it when appropriate
|
2011-07-23 04:06:29 -07:00 |
|
Chris Robinson
|
d5ddc6acee
|
Make sure some state values are finite
|
2011-07-21 16:18:21 -07:00 |
|
Chris Robinson
|
77128d298e
|
Add an option to emulate EAX reverb using standard reverb
|
2011-07-20 22:53:46 -07:00 |
|