rdb
2e20a0f16e
Implement awaitable thread-safe future for async operations
...
This introduces AsyncFuture as a new base class of AsyncTask. It's modelled after asyncio's Future class, except that it is thread-safe and you can use result() to block the current thread waiting for the future to finish (of course this is not necessary for use with coroutines).
AsyncFuture should be used for any operation that finishes in the future, to get the benefit of awaitability within coroutines as well as a standard interface for querying status and results of the operation as well as cancelling it. As such, it's been implemented in various places, including texture.prepare() and win.trigger_copy().
Note that AsyncFuture is intended to be used *once*; it cannot be used more than once. As an example of how this works, tex.prepare() will return the same future as long as the prepare isn't complete, but when it is done, subsequent calls to tex.prepare() will return a new future.
2017-12-04 22:25:28 +01:00
rdb
dd2806c8bd
Mark constructors 'explicit' for which coercion makes no sense
2017-11-06 19:47:38 +01:00
rdb
4cd826e63a
Merge branch 'fix-audio-distance-factor' of github.com:nikolmiv/panda3d
...
Closes : #13
2017-10-31 19:31:27 +01:00
rdb
0c0f9adab9
Support coroutines and async/await in the task manager and loader
2017-10-31 18:56:41 +01:00
rdb
d1c34c3360
interrogate: support static properties
2017-08-07 22:04:56 +02:00
rdb
a866f9fbcb
audio: fix case of get_speaker_setup/set_speaker_setup methods
2017-07-09 15:47:09 +02:00
rdb
1b33fec978
Remove assertion when reregistering the same AudioManager constructor
2016-06-28 21:35:53 +02:00
rdb
9b5ff08011
Fix crash loading null audio manager
2016-06-23 22:27:34 +02:00
rdb
288452a861
Changes to help with static build, allow linking OpenAL statically
2016-04-29 19:54:24 +02:00
tobspr
0fcfb8e372
New file headers, new comment style
2016-02-17 17:47:48 +01:00
rdb
090e912ce6
Cleanup of comments and whitespace
2016-02-01 22:30:43 +01:00
rdb
db3ab953e4
Remove ppremake, genPyCode, and all hacks created to support them
2015-11-09 19:06:49 +01:00
Nikola Milentijevic
c0b2468b04
Consolidate distance factor for 3D audio
...
The semantics of distance factor is now same for both OpenAL and Fmod.
The value is given in units per meter, and the default is 1.0.
This means that Panda units are understood to be meters by default.
For example, for feet one would have to set this value to 3.28.
2015-03-16 22:24:29 +01:00
rdb
5aa773b41a
remove fmod speaker modes that aren't supported across versions
2013-09-16 10:18:26 +00:00
rdb
aa4cc5c531
Support latest version of FMOD Ex (removes reverb filter in favor of sfxreverb)
2013-08-26 09:59:28 +00:00
rdb
d6a6499a7a
fix errors
2013-08-25 07:32:52 +00:00
rdb
b2dcde40c7
Apply patch by Josh Enes
2012-10-22 10:11:40 +00:00
rdb
248e4f2672
add fmod-speaker-mode variable
2012-07-09 13:59:18 +00:00
David Rose
33b9a1e1cf
integrate Eigen
2011-12-16 14:17:48 +00:00
David Rose
dfe16c64f6
rename all Panda-built libraries to begin with libp3 or libpanda
2011-12-06 02:39:21 +00:00
David Rose
539b61571c
guarantee word alignment for AtomicAdjust stuff
2011-11-17 23:31:31 +00:00
David Rose
501470169f
stdfloat_double
2011-10-10 05:25:10 +00:00
rdb
804a72b716
Partially apply typo fix patch I found somewhere on the web, by someone named Christoph Korn
2010-11-16 08:58:45 +00:00
Chris Brunner
547a72053c
support for #ifdef WIN64_VC instead of just #ifdev WIN32_VC alone
2010-05-28 21:09:22 +00:00
David Rose
787bfc5f94
libfmod_audio -> libp3fmod_audio, libopenal_audio -> libp3openal_audio
2009-10-11 22:22:59 +00:00
David Rose
58c13de4ca
integrate changes from Schell Games (plus some tab character fixes)
2009-06-01 21:51:15 +00:00
David Rose
c6c0847c5a
strip p3 prefix properly
2009-02-26 20:15:25 +00:00
David Rose
70a32ce433
strip out p3 prefix
2009-02-24 13:11:11 +00:00
David Rose
179b578a64
use explicit initialization of audio library
2009-02-23 19:57:13 +00:00
David Rose
bcdab6f3d4
remove texture_path, sound_path, egg_path
2008-11-04 18:25:21 +00:00
David Rose
8639f98ae9
need to vector model_path etc. through function after all, to avoid static-init problems
2008-10-22 22:11:16 +00:00
David Rose
524128b9fd
wip: starting experimental C-based task manager
2008-09-19 00:58:04 +00:00
David Rose
fb9c56432a
we are now using the modified BSD license
2008-05-28 18:37:20 +00:00
David Rose
9c67f4f7fa
add dependency on movies
2008-04-01 22:14:59 +00:00
Josh Yelon
03715468ca
Improvements to audio and creation of UserDataAudio
2008-03-31 05:51:11 +00:00
Josh Yelon
08dcdade5c
load_dso now uses a plugin search path
2008-03-18 22:25:59 +00:00
David Rose
f58416a234
build opt 4
2008-01-31 02:21:27 +00:00
David Rose
4c2659988f
minor threading fixes
2007-11-27 01:18:35 +00:00
Josh Yelon
76407e4225
Added config variable for OpenAL buffering
2007-08-28 16:30:15 +00:00
David Rose
93bfc2ea3f
define AudioSound::set_time() to have effect only upon the next call to play()
2007-08-24 17:17:09 +00:00
Josh Yelon
7778159b30
New files for DSP filter config
2007-08-22 18:01:00 +00:00
Josh Yelon
f46ca14f25
Redesigned DSP control interface
2007-08-22 17:27:44 +00:00
Josh Yelon
1e02c06517
Major refactoring of movie code.
2007-08-20 22:34:58 +00:00
David Rose
15f2e539d6
miles streaming
2007-08-01 18:52:35 +00:00
Zachary Pavlov
220d33e006
okay, this is going to be a big commit. The basic idea here is to add transparent defines to allow for directory based dlls later. This will let us build tau again. ugggg
2007-07-20 23:02:51 +00:00
David Rose
e0ccf7a2f5
increase fmod limit
2006-11-12 18:55:58 +00:00
David Rose
fe8a5d19ed
choose an appropriate default audio library
2006-11-07 14:03:44 +00:00
David Rose
285622c36f
robustify Fmod, Miles support on Windows and OSX
2006-11-02 01:42:54 +00:00
David Rose
dc2331abaf
whoops
2006-11-01 23:59:43 +00:00
David Rose
694873dc37
fix fmod for OSX; fix reference count leaks; use model-path as well as sound-path
2006-11-01 23:42:15 +00:00