Skip to content
@decodeless

decodeless

decodeless

decodeless (previously no-decode) is a collection of utility libraries for conveniently reading and writing large binary files via memory mapping. The data could be whatever you want, but there are performance benefits to writing raw C++ structures that can be read without any decoding/deserialization/parsing - hence the name "decodeless".

  • offset_ptr provides convenient relational pointers that are implicitly valid within the file's address space

  • writer combines:

    • allocator handles packing and aligning data when writing files and interfaces with...
    • mappedfile, a small cross platform memory mapping library that can also grow files so you don't need to compute the total size up front

    This is particularly convenient for writing files because you can populate relational structures after allocating them and the data they point to.

  • header is a completely optional extensible file header (using offset_ptr) that also includes a unique ID, versioning and binary compatibility features

Component repositories can be used individually or combined. They do not include each other as git submodules.

Typical usage is combining writer and header to quickly write structured binary data to disk. Then using mappedfile to read them.

Pinned Loading

  1. offset_ptr offset_ptr Public

    C++ relative pointer

    C++ 7

  2. header header Public

    Extensible header struct for binary file formats

    C++ 2

  3. allocator allocator Public

    An STL compatible growable local linear arena allocator for writing memory mapped files

    C++ 3 2

  4. mappedfile mappedfile Public

    Cross platform growable file memory mapping for both reading and writing

    C++ 6 2

  5. writer writer Public

    Combines a linear allocator with memory mapping to conveniently write binary files

    C++ 3

Repositories

Showing 7 of 7 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…