diff options
Diffstat (limited to 'le/le_entry_table_entry.hpp')
| -rw-r--r-- | le/le_entry_table_entry.hpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/le/le_entry_table_entry.hpp b/le/le_entry_table_entry.hpp new file mode 100644 index 0000000..209c1bb --- /dev/null +++ b/le/le_entry_table_entry.hpp @@ -0,0 +1,33 @@ +#pragma once + +#include "types.hpp" + +#include <boost/variant.hpp> + +#include <vector> + +namespace le { + +using binparse::Value8; +using binparse::Value16; +using binparse::Offset16; +using binparse::Offset32; + +struct EntryPoint { + binparse::Value8 flags; + boost::variant<Offset16, Offset32> entry; +}; + +struct EntryTableEntry { + + Value8 nr_entries; + Value8 flags; + Value16 object_index; + std::vector<EntryPoint> entries; +}; + +EntryTableEntry parse_entry_table_entry(std::istream& is); + +std::ostream& operator<<(std::ostream& os, EntryTableEntry const& entry); + +} |
