retdec
|
#include <anomalies_plain_getter.h>
Public Member Functions | |
AnomaliesPlainGetter (FileInformation &fileInfo) | |
virtual std::size_t | getBasicInfo (std::size_t structIndex, std::vector< std::string > &desc, std::vector< std::string > &info) const override |
virtual bool | getFlagDescriptors (std::size_t structIndex, std::vector< std::string > &desc, std::vector< std::string > &abbv) const override |
![]() | |
IterativeDistributionGetter (FileInformation &fileInfo) | |
std::size_t | getDistribution (std::size_t structIndex, std::vector< std::size_t > &distr) const |
std::size_t | getHeaderDesc (std::size_t structIndex, std::vector< std::string > &desc, std::vector< std::string > &abb) const |
void | getHeader (std::size_t structIndex, std::string &header) const |
bool | getDistributionFlags (std::size_t structIndex, std::vector< bool > &flags) const |
virtual bool | getRecord (std::size_t structIndex, std::size_t recIndex, std::vector< std::string > &record) const override |
![]() | |
IterativeGetter (FileInformation &fileInfo) | |
std::size_t | getNumberOfStructures () const |
std::size_t | getNumberOfStoredRecords (std::size_t structIndex) const |
std::size_t | getHeaderElements (std::size_t structIndex, std::vector< std::string > &elements) const |
void | getTitle (std::string &structTitle) const |
bool | hasBasicInfo (std::size_t structIndex) const |
Protected Member Functions | |
virtual bool | loadRecord (std::size_t structIndex, std::size_t recIndex, std::vector< std::string > &record) override |
![]() | |
void | loadRecords () |
Additional Inherited Members | |
![]() | |
std::vector< std::vector< std::vector< std::string > > > | records |
records from all structures More... | |
std::vector< std::size_t > | distribution |
distribution of header (common for all structures) More... | |
std::vector< std::string > | commonHeaderDesc |
description of header elements (common for all structures) More... | |
std::vector< std::vector< std::size_t > > | extraDistribution |
distribution of extra elements for each structure More... | |
std::vector< std::vector< std::string > > | extraDesc |
description of extra header elements for each structure More... | |
std::vector< std::vector< bool > > | distFlags |
distribution flags More... | |
std::vector< std::vector< bool > > | hexMap |
map of hexadecimal elements (columns) More... | |
std::vector< std::vector< std::size_t > > | hexPadding |
padding of hexadecimal columns More... | |
![]() | |
FileInformation & | fileinfo |
information about file More... | |
std::size_t | numberOfStructures |
number of presented structures (e.g. number of symbol tables) More... | |
std::vector< std::size_t > | numberOfStoredRecords |
number of records in each structure More... | |
std::vector< std::string > | commonHeaderElements |
parts of header (common for all structures) More... | |
std::vector< std::size_t > | numberOfExtraElements |
number of extra elements in each structure More... | |
std::vector< std::vector< std::string > > | extraHeaderElements |
parts of header (specific for each structure) More... | |
std::string | title |
title of presented structure More... | |
Getter for import table
retdec::fileinfo::AnomaliesPlainGetter::AnomaliesPlainGetter | ( | FileInformation & | fileInfo | ) |
Constructor
fileInfo | Information about file |
|
overridevirtual |
Get basic information about presented structure
structIndex | Index of selected structure (indexed from 0) |
desc | Vector for save descriptions of information |
info | Vector for save information about file |
Before loading information, everything from vectors desc and info is deleted. If structure does not support this feature or structIndex is out of range, method returns 0 and vectors are left unchanged.
Implements retdec::fileinfo::IterativeGetter.
|
overridevirtual |
Get descriptors (and its abbreviations) of all records in structure
structIndex | Index of selected structure (indexed from 0) |
desc | Vector for save descriptors |
abbv | Vector for save abbreviations |
true
if index of selected structure is valid, false
otherwise. If index is not valid, desc and abbv are left unchanged.Into desc is stored each flag descriptor, which is assigned to at least one record. Into abbv are stored abbreviations of descriptors, which are stored in desc.
Before loading descriptors, everything from vectors desc and abbv is deleted.
Implements retdec::fileinfo::IterativeDistributionGetter.
|
overrideprotectedvirtual |
Load one record
structIndex | Index of selected structure (indexed from 0) |
recIndex | Index of record in selected structure (indexed from 0) |
record | Vector for save record. At end of vector are stored special additional information, if these information are present. Number and semantics of additional information may be different for every separate structure. |
true
if record was successfully saved, false
otherwiseBefore loading record, everything from vector record is deleted.
If method returns true
, record contains as many elements as vector returned by the method getHeaderElements(structIndex) as well as vector returned by the method getDistribution(structIndex).
If structIndex or recIndex is out of range, method returns false
.
Implements retdec::fileinfo::IterativeDistributionGetter.