From b80a82fcc9edc73057796005cede4eea8380e193 Mon Sep 17 00:00:00 2001 From: Dennis Brentjes Date: Mon, 27 Jun 2016 01:33:02 +0200 Subject: Parses the fixup page and fixup record table. --- le/le_resource_table.hpp | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 le/le_resource_table.hpp (limited to 'le/le_resource_table.hpp') 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 + +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 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 -- cgit v1.2.3-70-g09d2