-
Notifications
You must be signed in to change notification settings - Fork 1
Home
lolrobbe2 edited this page Aug 24, 2024
·
4 revisions
Welcome to the Athena documentation wiki! Athena is a C++ library designed for efficient binary data handling with advanced features such as compression and sectioning. This wiki provides comprehensive information on how to use Athena effectively.
Athena allows you to:
- Write and Read Binary Data: Serialize and deserialize structs and classes in a binary format.
- Compress Data: Utilize LZ4 compression for efficient storage.
- Section Data: Divide files into independent sections that can be managed separately.
- Ensure Compatibility: Handle trivially copyable types to ensure backward and forward compatibility.
- LZ4 Compression: Efficiently compress data using the LZ4 algorithm.
-
Section Management: Independently manage sections of a file. Note that with
fileStreamReader
, each section is decompressed only when it is accessed for the first time. - Compatibility: Trivially copyable types ensure backward and forward compatibility, making it easier to evolve data structures over time.
- Installation: Follow the build instructions to compile Athena and its dependencies.
- Usage Examples: Check out examples for writing and reading binary data with Athena.
- API Reference: Explore the available API methods and their usage.
- Build Instructions: How to build Athena from source.
-
File Stream Writer/Reader: Examples for using
fileStreamWriter
andfileStreamReader
. Note thatfileStreamReader
decompresses each section only when it is first accessed. - Trivially Copyable Types: Learn about trivially copyable structs and classes and how they ensure compatibility.
We welcome contributions to Athena! If you have suggestions or improvements, please refer to our contributing guidelines.
If you encounter any issues or have questions, feel free to open an issue in the GitHub repository.
Thank you for using Athena!