retdec
elf_section.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_FILEFORMAT_TYPES_SEC_SEG_ELF_SECTION_H
8 #define RETDEC_FILEFORMAT_TYPES_SEC_SEG_ELF_SECTION_H
9 
11 
12 namespace retdec {
13 namespace fileformat {
14 
18 class ElfSection : public Section
19 {
20  private:
21  unsigned long long elfType;
22  unsigned long long elfAlign;
23  unsigned long long elfFlags;
24  unsigned long long elfLink;
25  unsigned long long numberOfSections;
26  unsigned long long archByteSize;
27  public:
28  ElfSection();
29 
32  virtual bool isValid(const FileFormat *sOwner) const override;
34 
37  unsigned long long getElfType() const;
38  unsigned long long getElfAlign() const;
39  unsigned long long getElfFlags() const;
40  unsigned long long getElfLink() const;
41  unsigned long long getNumberOfSections() const;
42  unsigned long long getArchByteSize() const;
44 
47  void setElfType(unsigned long long sElfType);
48  void setElfAlign(unsigned long long sElfAlign);
49  void setElfFlags(unsigned long long sElfFlags);
50  void setElfLink(unsigned long long sElfLink);
51  void setNumberOfSections(unsigned long long sNumberOfSections);
52  void setArchByteSize(unsigned long long sArchByteSize);
54 };
55 
56 } // namespace fileformat
57 } // namespace retdec
58 
59 #endif
Definition: elf_section.h:19
ElfSection()
Definition: elf_section.cpp:20
void setElfType(unsigned long long sElfType)
Definition: elf_section.cpp:102
void setArchByteSize(unsigned long long sArchByteSize)
Definition: elf_section.cpp:147
unsigned long long archByteSize
byte size of target architecture
Definition: elf_section.h:26
unsigned long long elfAlign
align of section in memory
Definition: elf_section.h:22
unsigned long long elfFlags
section flags
Definition: elf_section.h:23
virtual bool isValid(const FileFormat *sOwner) const override
Definition: elf_section.cpp:26
void setElfFlags(unsigned long long sElfFlags)
Definition: elf_section.cpp:120
void setElfLink(unsigned long long sElfLink)
Definition: elf_section.cpp:129
void setElfAlign(unsigned long long sElfAlign)
Definition: elf_section.cpp:111
unsigned long long getArchByteSize() const
Definition: elf_section.cpp:93
unsigned long long numberOfSections
total number of sections in input file
Definition: elf_section.h:25
void setNumberOfSections(unsigned long long sNumberOfSections)
Definition: elf_section.cpp:138
unsigned long long getElfType() const
Definition: elf_section.cpp:48
unsigned long long elfLink
link to another section
Definition: elf_section.h:24
unsigned long long getElfFlags() const
Definition: elf_section.cpp:66
unsigned long long getElfLink() const
Definition: elf_section.cpp:75
unsigned long long elfType
type of ELF section
Definition: elf_section.h:21
unsigned long long getElfAlign() const
Definition: elf_section.cpp:57
unsigned long long getNumberOfSections() const
Definition: elf_section.cpp:84
Definition: file_format.h:45
Definition: section.h:19
Definition: archive_wrapper.h:19
Class for file section.