From 06336eaddcc6a8f9cc578d8f059117c3aa535c9f Mon Sep 17 00:00:00 2001 From: Dennis Brentjes Date: Tue, 5 Jul 2016 17:51:21 +0200 Subject: Made the interface somewhat more consistant. --- le/le_object_table.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'le/le_object_table.cpp') diff --git a/le/le_object_table.cpp b/le/le_object_table.cpp index 3e87fb0..7523257 100644 --- a/le/le_object_table.cpp +++ b/le/le_object_table.cpp @@ -1,11 +1,33 @@ #include "le_object_table.hpp" #include "output.hpp" +#include "parse.hpp" + +#include #include +BOOST_FUSION_ADAPT_STRUCT( + le::ObjectTable::Entry, + (binparse::Value32, virtual_size) + (binparse::Offset32, reloc_base_address) + (binparse::Value32, object_flags) + (binparse::Value32, page_table_index) + (binparse::Value32, nr_page_table_entries) + (binparse::Value32, reserved) +) + namespace le { +ObjectTable::Entry parse_object_table_entry(std::istream& is) { + return parse(is); +} + +std::ostream& operator<<(std::ostream& os, ObjectTable::Entry const& entry) +{ + return binparse::operator<<(os, entry); +} + ObjectTable parse_object_table(std::istream& is, Offset32 offset, Value32 nr_objects) { is.seekg(0, std::ios::beg); -- cgit v1.2.3-70-g09d2