retdec
Public Types | Public Member Functions | Private Attributes | List of all members
retdec::fileformat::Import Class Reference

#include <import.h>

Inheritance diagram for retdec::fileformat::Import:
Inheritance graph
[legend]
Collaboration diagram for retdec::fileformat::Import:
Collaboration graph
[legend]

Public Types

enum class  UsageType { UNKNOWN , FUNCTION , OBJECT , FILE }
 

Public Member Functions

virtual ~Import ()=default
 
Getters
std::string getName () const
 
unsigned long long getLibraryIndex () const
 
unsigned long long getAddress () const
 
bool getOrdinalNumber (unsigned long long &importOrdinalNumber) const
 
Import::UsageType getUsageType () const
 
Usage type queries
bool isUnknown () const
 
bool isFunction () const
 
bool isObject () const
 
bool isFile () const
 
Setters
void setName (std::string importName)
 
void setLibraryIndex (unsigned long long importLibraryIndex)
 
void setAddress (unsigned long long importAddress)
 
void setOrdinalNumber (unsigned long long importOrdinalNumber)
 
void setUsageType (Import::UsageType importUsageType)
 
Other methods
virtual bool isUsedForImphash () const
 
void invalidateOrdinalNumber ()
 
bool hasEmptyName () const
 

Private Attributes

std::string name
 
unsigned long long libraryIndex = 0
 
unsigned long long address = 0
 
unsigned long long ordinalNumber = 0
 
bool ordinalNumberIsValid = false
 
UsageType usageType = UsageType::UNKNOWN
 

Detailed Description

One import

Member Enumeration Documentation

◆ UsageType

Enumerator
UNKNOWN 
FUNCTION 
OBJECT 
FILE 

Constructor & Destructor Documentation

◆ ~Import()

virtual retdec::fileformat::Import::~Import ( )
virtualdefault

Member Function Documentation

◆ getAddress()

unsigned long long retdec::fileformat::Import::getAddress ( ) const

Get address of import

Returns
Address of import

◆ getLibraryIndex()

unsigned long long retdec::fileformat::Import::getLibraryIndex ( ) const

Get index of library from which is import

Returns
Index of library from which is import

◆ getName()

std::string retdec::fileformat::Import::getName ( ) const

Get import name

Returns
Import name

◆ getOrdinalNumber()

bool retdec::fileformat::Import::getOrdinalNumber ( unsigned long long &  importOrdinalNumber) const

Get ordinal number of import

Parameters
importOrdinalNumberInto this parameter is stored ordinal number of import
Returns
true if ordinal number id valid, false otherwise

If method returns false, importOrdinalNumber is left unchanged

◆ getUsageType()

Import::UsageType retdec::fileformat::Import::getUsageType ( ) const

Get import usage type

Returns
Import usage type

◆ hasEmptyName()

bool retdec::fileformat::Import::hasEmptyName ( ) const
Returns
true if import has empty name, false otherwise

◆ invalidateOrdinalNumber()

void retdec::fileformat::Import::invalidateOrdinalNumber ( )

Invalidate ordinal number of import

Instance method getOrdinalNumber() returns false after invocation of this method. Ordinal number is possible to revalidate by invocation of method setOrdinalNumber().

◆ isFile()

bool retdec::fileformat::Import::isFile ( ) const
Returns
true if import is file, false otherwise

◆ isFunction()

bool retdec::fileformat::Import::isFunction ( ) const
Returns
true if import is function, false otherwise

◆ isObject()

bool retdec::fileformat::Import::isObject ( ) const
Returns
true if import is object, false otherwise

◆ isUnknown()

bool retdec::fileformat::Import::isUnknown ( ) const
Returns
true if import is unkown, false otherwise

◆ isUsedForImphash()

bool retdec::fileformat::Import::isUsedForImphash ( ) const
virtual

Virtual method which indicates whether import should be used for calculating imphash.

Returns
true if should be used, otherwise false.

Reimplemented in retdec::fileformat::PeImport.

◆ setAddress()

void retdec::fileformat::Import::setAddress ( unsigned long long  importAddress)

Set address of import

Parameters
importAddressAddress of import

◆ setLibraryIndex()

void retdec::fileformat::Import::setLibraryIndex ( unsigned long long  importLibraryIndex)

Set library index

Parameters
importLibraryIndexIndex of library from which is import

◆ setName()

void retdec::fileformat::Import::setName ( std::string  importName)

Set import name

Parameters
importNameImport name

◆ setOrdinalNumber()

void retdec::fileformat::Import::setOrdinalNumber ( unsigned long long  importOrdinalNumber)

Set ordinal number of import

Parameters
importOrdinalNumberOrdinal number of import

◆ setUsageType()

void retdec::fileformat::Import::setUsageType ( Import::UsageType  importUsageType)

Set import usage type

Parameters
importUsageTypeSymbol usage type

Member Data Documentation

◆ address

unsigned long long retdec::fileformat::Import::address = 0
private

◆ libraryIndex

unsigned long long retdec::fileformat::Import::libraryIndex = 0
private

◆ name

std::string retdec::fileformat::Import::name
private

◆ ordinalNumber

unsigned long long retdec::fileformat::Import::ordinalNumber = 0
private

◆ ordinalNumberIsValid

bool retdec::fileformat::Import::ordinalNumberIsValid = false
private

◆ usageType

UsageType retdec::fileformat::Import::usageType = UsageType::UNKNOWN
private

The documentation for this class was generated from the following files: