retdec
dynamic_section.h
Go to the documentation of this file.
1 
7 #ifndef FILEINFO_FILE_INFORMATION_FILE_INFORMATION_TYPES_DYNAMIC_SECTION_DYNAMIC_SECTION_H
8 #define FILEINFO_FILE_INFORMATION_FILE_INFORMATION_TYPES_DYNAMIC_SECTION_DYNAMIC_SECTION_H
9 
11 
12 namespace retdec {
13 namespace fileinfo {
14 
22 {
23  private:
25  unsigned long long declaredEntries = std::numeric_limits<unsigned long long>::max();
26  std::string name;
27  std::vector<DynamicEntry> table;
28  public:
31  std::size_t getNumberOfStoredEntries() const;
32  std::string getNumberOfDeclaredEntriesStr() const;
33  std::string getSectionName() const;
34  std::string getEntryType(std::size_t position) const;
35  std::string getEntryDescription(std::size_t position) const;
36  std::string getEntryValueStr(std::size_t position, std::ios_base &(* format)(std::ios_base &)) const;
37  unsigned long long getEntryFlagsSize(std::size_t position) const;
38  unsigned long long getEntryFlags(std::size_t position) const;
39  std::string getEntryFlagsStr(std::size_t position) const;
40  std::size_t getNumberOfEntryFlagsDescriptors(std::size_t position) const;
41  void getEntryFlagsDescriptors(std::size_t position, std::vector<std::string> &desc, std::vector<std::string> &abb) const;
43 
46  void setNumberOfDeclaredEntries(unsigned long long entries);
47  void setSectionName(std::string sectionName);
49 
52  void addEntry(DynamicEntry &entry);
53  void clearEntries();
55 };
56 
57 } // namespace fileinfo
58 } // namespace retdec
59 
60 #endif
Definition: dynamic_entry.h:23
Definition: dynamic_section.h:22
std::string getEntryValueStr(std::size_t position, std::ios_base &(*format)(std::ios_base &)) const
Definition: dynamic_section.cpp:72
unsigned long long declaredEntries
declared number of entries in section
Definition: dynamic_section.h:25
std::size_t getNumberOfStoredEntries() const
Definition: dynamic_section.cpp:20
unsigned long long getEntryFlags(std::size_t position) const
Definition: dynamic_section.cpp:92
std::string getNumberOfDeclaredEntriesStr() const
Definition: dynamic_section.cpp:32
std::string getEntryType(std::size_t position) const
Definition: dynamic_section.cpp:51
void getEntryFlagsDescriptors(std::size_t position, std::vector< std::string > &desc, std::vector< std::string > &abb) const
Definition: dynamic_section.cpp:123
std::string name
Definition: dynamic_section.h:26
void clearEntries()
Definition: dynamic_section.cpp:158
std::vector< DynamicEntry > table
Definition: dynamic_section.h:27
std::size_t getNumberOfEntryFlagsDescriptors(std::size_t position) const
Definition: dynamic_section.cpp:112
std::string getSectionName() const
Definition: dynamic_section.cpp:41
void addEntry(DynamicEntry &entry)
Definition: dynamic_section.cpp:150
std::string getEntryDescription(std::size_t position) const
Definition: dynamic_section.cpp:61
std::string getEntryFlagsStr(std::size_t position) const
Definition: dynamic_section.cpp:102
void setSectionName(std::string sectionName)
Definition: dynamic_section.cpp:141
void setNumberOfDeclaredEntries(unsigned long long entries)
Definition: dynamic_section.cpp:132
unsigned long long getEntryFlagsSize(std::size_t position) const
Definition: dynamic_section.cpp:82
Definition: archive_wrapper.h:19
Class for dynamic entry.