Module ogre::parser_async[][src]

Parallelized WAD parsing implementation using async_std.

parse_wad is the primary user-facing entrypoint, and will parse a complete Wad.

For more granular async work, parse_textures returns a [TryStream] of (String, Texture) tuples that can be used to chain further computations, such as dumping to a file or conversion into some other format.

These functions operate by spawning one async_std::task per texture, and thus require a way for each task to get its own thread-safe handle to the WAD data.

These handles are represented by the WadSource trait, which is implemented for any type that can read and seek through a source of bytes via ReadExt and SeekExt.

The WadSourceStream trait represents a stream that can generate an infinite amount of these handles given some source data, concrete implementations of which are provided via SourceStreamSlice, SourceStreamVec, and SourceStreamFile.

Modules

parse

Internal parsing functions.

wad_source

Machinery for handling WAD data sources.

Traits

TextureStream

[TryStream] of (String, Texture) pairs.

Functions

parse_textures

Async parse a TextureStream from a WadSourceStream.

parse_wad

Async parse a Wad from a WadSourceStream.

Type Definitions

IoError