17#ifndef LIEF_PE_DEBUG_H
18#define LIEF_PE_DEBUG_H
23#include "LIEF/Object.hpp"
24#include "LIEF/visibility.h"
62 EX_DLLCHARACTERISTICS = 20,
69 Debug(
const details::pe_debug& debug_s);
70 Debug(
const Debug& other);
71 Debug& operator=(
const Debug& other);
75 virtual std::unique_ptr<Debug> clone()
const;
79 return characteristics_;
89 return major_version_;
94 return minor_version_;
109 return addressof_rawdata_;
114 return pointerto_rawdata_;
117 void characteristics(uint32_t characteristics) {
118 characteristics_ = characteristics;
121 void timestamp(uint32_t timestamp) {
122 timestamp_ = timestamp;
125 void major_version(uint16_t major_version) {
126 major_version_ = major_version;
129 void minor_version(uint16_t minor_version) {
130 minor_version_ = minor_version;
133 void sizeof_data(uint32_t sizeof_data) {
134 sizeof_data_ = sizeof_data;
137 void addressof_rawdata(uint32_t addressof_rawdata) {
138 addressof_rawdata_ = addressof_rawdata;
141 void pointerto_rawdata(uint32_t pointerto_rawdata) {
142 pointerto_rawdata_ = pointerto_rawdata;
145 void accept(Visitor& visitor)
const override;
147 LIEF_API
friend std::ostream& operator<<(std::ostream& os,
const Debug& entry);
150 TYPES type_ = TYPES::UNKNOWN;
151 uint32_t characteristics_ = 0;
152 uint32_t timestamp_ = 0;
153 uint16_t major_version_ = 0;
154 uint16_t minor_version_ = 0;
155 uint32_t sizeof_data_ = 0;
156 uint32_t addressof_rawdata_ = 0;
157 uint32_t pointerto_rawdata_ = 0;
Class that is used to rebuild a raw PE binary from a PE::Binary object.
Definition PE/Builder.hpp:45
This class represents a generic entry in the debug data directory. For known types,...
Definition debug/Debug.hpp:38
uint32_t addressof_rawdata() const
Address of the debug data relative to the image base.
Definition debug/Debug.hpp:108
uint32_t sizeof_data() const
Size of the debug data.
Definition debug/Debug.hpp:103
uint16_t major_version() const
The major version number of the debug data format.
Definition debug/Debug.hpp:88
uint16_t minor_version() const
The minor version number of the debug data format.
Definition debug/Debug.hpp:93
uint32_t characteristics() const
Reserved should be 0.
Definition debug/Debug.hpp:78
uint32_t pointerto_rawdata() const
File offset of the debug data.
Definition debug/Debug.hpp:113
uint32_t timestamp() const
The time and date that the debug data was created.
Definition debug/Debug.hpp:83
TYPES type() const
The format DEBUG_TYPES of the debugging information.
Definition debug/Debug.hpp:98
TYPES
The entry types.
Definition debug/Debug.hpp:44
Main interface to parse PE binaries. In particular the static functions: Parser::parse should be used...
Definition PE/Parser.hpp:47
LIEF namespace.
Definition Abstract/Binary.hpp:32