diff options
Diffstat (limited to 'le/le_resource_table.hpp')
| -rw-r--r-- | le/le_resource_table.hpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/le/le_resource_table.hpp b/le/le_resource_table.hpp new file mode 100644 index 0000000..7590c6a --- /dev/null +++ b/le/le_resource_table.hpp @@ -0,0 +1,27 @@ +#pragma once + +#include "types.hpp" + +#include <vector> + +namespace le { + +struct ResourceTable +{ + struct Entry { + binparse::Value16 type_id; + binparse::Value16 name_id; + binparse::Value32 resource_size; + binparse::Value16 object_index; + binparse::Offset32 offset; + }; + std::vector<Entry> entries; +}; + +ResourceTable::Entry parse_resource_table_entry(std::istream& is); +ResourceTable parse_resource_table(std::istream& is, binparse::Offset32 offset, binparse::Value32 nr_entries); + +std::ostream& operator<<(std::ostream& os, ResourceTable::Entry const& entry); +std::ostream& operator<<(std::ostream& os, ResourceTable const& table); + +}
\ No newline at end of file |
