Commit graph

8 commits

Author SHA1 Message Date
janwas
2374caac3e major refactor of file/io and alignment code. requires update-workspaces
. completely rewrite waio - use IOCP, add several hardcore
optimizations. now outperforms the
  AS SSD and ATTO benchmarks when writing
. refactor file interface - use LIO_READ instead of 'r', allow access to
file descriptor.
. completely rewrite the IO wrapper. now much more simple, less CPU
overhead, adds
  support for pre-issue/post-completion hooks and preallocation.
  io::Run defaults to simple synchronous IO; use io::Parameters to get
asynchronous.
. add alignment.h with constants and Align() function template (more
efficient than
  round_up for compile-time constants)
. add UniqueRange - similar to C++0x unique_ptr (emulated for C++03),
plus a
  built-in size. avoids expensive thread-safe reference counting in
shared_ptr.

cleanup:
- move fat_time functions into archive_zip
- remove no longer needed io_align and block_cache
- reduce dependencies in sysdep/compiler (move parts to
code_annotation.h)
- move IOCP into separate file (reused by waio)

This was SVN commit r9350.
2011-04-29 19:10:34 +00:00
janwas
dcd192cb60 refactor path interface:
- use wrapper class instead of std::wstring (reduces mixing of
strings/paths; allows safe+easy join via operator/ and convenient
case-insensitive comparison via operator==, avoids NativePathFromString,
similar to boost::filesystem)
- NativePath -> OsPath
- add hash and To/FromJSVal for Path
- add TS_ASSERT_PATH_EQUALS
- replace _wfopen_s with sys_OpenFile
- remove obsolete SortFiles/Directories

This was SVN commit r9107.
2011-03-23 13:36:20 +00:00
janwas
6d25329412 # towards locale-independent pathnames on Linux
c.f.
http://www.wildfiregames.com/forum/index.php?showtopic=14541&st=0&p=217250&#entry217250
and 2011-03-19 meeting

This was SVN commit r9090.
2011-03-21 17:53:13 +00:00
Ykkrosh
094ccc6a98 Fix playing of sound files in archives (by disabling proper streaming).
This was SVN commit r8370.
2010-10-15 23:06:14 +00:00
janwas
fecac5a7be # add support for streaming sounds, not just loading them entirely into memory (avoids stalls when switching music tracks)
very belated revision/integration of Heron/Kyniker's patch (thanks!)

ogg fixes: ensure file remains open by holding a shared_ptr. avoid
returning 0 (success) when bytesRead==requestedSize.

closes #100

This was SVN commit r8322.
2010-10-10 12:08:51 +00:00
Ykkrosh
df4e9a05c2 Fix build error on 32-bit Linux
This was SVN commit r7851.
2010-08-05 14:24:32 +00:00
Ykkrosh
cc8ad0f3c0 Fix line endings
This was SVN commit r7850.
2010-08-05 14:22:56 +00:00
janwas
e20f93ffdc add proper OGG support, a near-total rewrite of a patch by Kyniker/Heron. not yet integrated into snd_mgr. also remove the no longer used CMusicPlayer and CPlayList.
This was SVN commit r7834.
2010-08-01 10:52:12 +00:00