Commit Graph

34 Commits

Author SHA1 Message Date
Sam Edwards 7790f8429d general: Fully qualify header references into the std namespace
Closes #341
2018-06-07 10:35:12 +02:00
rdb 9fad3dba60 general: remove macros for compatibility with non-C++11 compilers
Now that we require MSVC 2015, we no longer need all this nonsense, so we can write cleaner code.
2018-05-23 23:33:05 +02:00
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 34068dc0c1 Implement support for SSBOs 2016-12-13 21:22:17 +01:00
tobspr 0fcfb8e372 New file headers, new comment style 2016-02-17 17:47:48 +01:00
rdb 95d85819b0 Separate out sampler state from texture, support sampler objects, support LOD min/max/bias 2014-12-12 15:58:45 +01:00
David Rose 6872488839 stereo/multiview textures 2011-08-08 18:55:26 +00:00
David Rose a21091c9dc graphics_memory_limit_changed 2009-02-10 20:40:37 +00:00
David Rose 684810cbdd AdaptiveLru 2008-09-04 21:26:38 +00:00
David Rose a8ec068c05 graphics-memory-limit 2008-08-29 23:03:53 +00:00
David Rose d7e6603118 work-in-progress: asynchronous texture loads 2008-08-13 01:13:09 +00:00
David Rose fb9c56432a we are now using the modified BSD license 2008-05-28 18:37:20 +00:00
Josh Yelon d8e6dc13a3 Modifications to eliminate class ShaderExpansion 2007-12-13 20:56:29 +00:00
David Rose 923ff60d9f temp hack fix for released-buffer-cache-size on dx8/9 2007-10-23 00:38:12 +00:00
David Rose be8b867498 released-vbuffer-cache 2007-10-19 15:37:19 +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 7905e4d69a convenience methods 2007-05-11 01:17:36 +00:00
David Rose d1a06d8f02 correctly release gsg on window close 2007-04-26 00:44:20 +00:00
David Rose ddd1046462 factor out Thread::get_current_thread() some more 2006-04-26 07:31:23 +00:00
David Rose 83a6c42496 better pstats tracking of texture/vbuffer memory 2006-03-16 21:26:56 +00:00
David Rose 08a099ba3a use ReMutex 2006-01-18 23:55:42 +00:00
Josh Yelon 2095d8c44f New shader system 2005-09-25 04:06:31 +00:00
Josh Yelon f7ee3b5729 New shader system 2005-09-04 19:49:55 +00:00
David Rose bc0d509090 bam 5.0, new Geom implementation is now official 2005-06-30 17:42:21 +00:00
David Rose 296721f061 simply & pandify dx8gsg some; rework gsg's external_transform and internal_transform 2005-05-26 00:09:52 +00:00
David Rose c83feafc70 more robust pstats for qpgeom stuff 2005-04-16 19:59:21 +00:00
David Rose 500f17c091 robustify collect_vertex_data some more 2005-04-14 03:54:10 +00:00
David Rose dbed74e410 ibuffers as well as vbuffers 2005-03-18 20:18:57 +00:00
David Rose 0edc10b609 beginning dx8 vbuffer support 2005-03-18 15:47:58 +00:00
David Rose 85b019feda vertex buffers? 2005-03-18 03:32:08 +00:00
David Rose dbb24d9cc9 phash_map, etc. 2004-10-02 05:07:16 +00:00
David Rose 50f7d0bce7 restore GeomContexts and display lists 2004-03-20 02:09:49 +00:00
David Rose 25a44c9b26 tweak comment 2004-02-25 19:53:33 +00:00
David Rose 232f9395bf split out PreparedGraphicsObjects from GraphicsStateGuardians 2004-02-25 19:34:30 +00:00