BearParser
Portable Executable parsing library (from PE-bear)
Loading...
Searching...
No Matches
ResourceLeafWrapper.h
Go to the documentation of this file.
1#pragma once
2
3#include "../ExeNodeWrapper.h"
4
5#include <map>
6#include <vector>
7#include "pe_formats.h"
8
10{
11 public:
12 // fields :
21
22 ResourceLeafWrapper(Executable *pe, offset_t rawOffset, long topEntryId)
23 : ExeNodeWrapper(pe), offset(rawOffset), topEntryID(topEntryId){ }
24
26
27 virtual void* getPtr() { return leafEntryPtr(); }
28 virtual bufsize_t getSize() { return sizeof(IMAGE_RESOURCE_DATA_ENTRY); }
29
30 virtual QString getName() { return "Resource Data"; }
31 virtual size_t getFieldsCount() { return FIELD_COUNTER; }
32
33 virtual void* getFieldPtr(size_t fieldId, size_t subField);
34 virtual QString getFieldName(size_t fieldId);
35 virtual Executable::addr_type containsAddrType(size_t fieldId, size_t subField)
36 {
38 }
39
40 IMAGE_RESOURCE_DATA_ENTRY *leafEntryPtr();
41
42 Executable* getExe() { return this->m_Exe; }
43
44protected:
47 //ResourceEntryWrapper* parentEntry;
48};
49
uint32_t bufsize_t
uint64_t offset_t
#define FIELD_NONE
IMAGE_RESOURCE_DATA_ENTRY * leafEntryPtr()
virtual void * getFieldPtr(size_t fieldId, size_t subField)
virtual size_t getFieldsCount()
virtual void * getPtr()
virtual QString getFieldName(size_t fieldId)
ResourceLeafWrapper(Executable *pe, offset_t rawOffset, long topEntryId)
virtual bufsize_t getSize()
virtual QString getName()
virtual Executable::addr_type containsAddrType(size_t fieldId, size_t subField)