retdec
macho_section.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_FILEFORMAT_TYPES_SEC_SEG_MACHO_SECTION_H
8 #define RETDEC_FILEFORMAT_TYPES_SEC_SEG_MACHO_SECTION_H
9 
11 
12 namespace retdec {
13 namespace fileformat {
14 
18 class MachOSection : public Section
19 {
20  private:
21  std::string segname;
22  unsigned long long align;
23  unsigned long long reloff;
24  unsigned long long nreloc;
25  unsigned long long flags;
26  unsigned long long reserved1;
27  unsigned long long reserved2;
28  public:
29  MachOSection();
30 
33  std::string getSegmentName() const;
34  unsigned long long getAlignment() const;
35  unsigned long long getRelocationOffset() const;
36  unsigned long long getNumberOfRelocations() const;
37  unsigned long long getMachOFlags() const;
38  unsigned long long getReserved1() const;
39  unsigned long long getReserved2() const;
41 
44  void setSegmentName(const std::string& segmentName);
45  void setAlignment(unsigned long long alignment);
46  void setRelocationOffset(unsigned long long offset);
47  void setNumberOfRelocations(unsigned long long number);
48  void setMachOFlags(unsigned long long flags);
49  void setReserved1(unsigned long long reserved1);
50  void setReserved2(unsigned long long reserved2);
52 };
53 
54 } // namespace fileformat
55 } // namespace retdec
56 
57 #endif
Definition: macho_section.h:19
void setReserved2(unsigned long long reserved2)
Definition: macho_section.cpp:139
void setNumberOfRelocations(unsigned long long number)
Definition: macho_section.cpp:112
void setReserved1(unsigned long long reserved1)
Definition: macho_section.cpp:130
unsigned long long align
Byte alignment as power of two.
Definition: macho_section.h:22
unsigned long long getRelocationOffset() const
Definition: macho_section.cpp:40
unsigned long long reserved1
Various interpretations (depends on flags)
Definition: macho_section.h:26
MachOSection()
Definition: macho_section.cpp:12
unsigned long long getMachOFlags() const
Definition: macho_section.cpp:58
unsigned long long getAlignment() const
Definition: macho_section.cpp:31
unsigned long long flags
Mach-O section flags.
Definition: macho_section.h:25
unsigned long long nreloc
Number of relocations.
Definition: macho_section.h:24
unsigned long long getNumberOfRelocations() const
Definition: macho_section.cpp:49
void setSegmentName(const std::string &segmentName)
Definition: macho_section.cpp:85
void setRelocationOffset(unsigned long long offset)
Definition: macho_section.cpp:103
void setMachOFlags(unsigned long long flags)
Definition: macho_section.cpp:121
std::string getSegmentName() const
Definition: macho_section.cpp:22
unsigned long long getReserved2() const
Definition: macho_section.cpp:76
unsigned long long reserved2
Various interpretations (depends on flags)
Definition: macho_section.h:27
void setAlignment(unsigned long long alignment)
Definition: macho_section.cpp:94
std::string segname
Name of the segment this section is placed in.
Definition: macho_section.h:21
unsigned long long reloff
File offset of first relocation entry.
Definition: macho_section.h:23
unsigned long long getReserved1() const
Definition: macho_section.cpp:67
unsigned long long offset
start offset in file
Definition: sec_seg.h:45
Definition: section.h:19
Definition: archive_wrapper.h:19
Class for file section.