ROSE  0.9.10.47
Public Member Functions | Public Attributes | Friends | List of all members
LibraryIdentification::FunctionInfo Class Reference

Description

class FunctionInfo Combines all the information to uniquely identify a single function in one object.

Definition at line 21 of file FunctionInfo.h.

#include <FunctionInfo.h>

Collaboration diagram for LibraryIdentification::FunctionInfo:
Collaboration graph
[legend]

Public Member Functions

 FunctionInfo (const std::string &ifuncName, const std::string &ifuncHash, const std::string &ilibHash)
 FunctionInfo. More...
 
 FunctionInfo (SgAsmFunction *function, const std::string &ilibHash)
 FunctionInfo. More...
 
 FunctionInfo (SgAsmFunction *function, LibraryInfo &libInfo)
 FunctionInfo. More...
 
 FunctionInfo (const std::string &ifuncHash)
 FunctionInfo. More...
 
 FunctionInfo (SgAsmFunction *function)
 FunctionInfo. More...
 

Public Attributes

std::string funcName
 
std::string funcHash
 
std::string libHash
 
SgAsmFunctionsgAsmFunc
 

Friends

bool operator< (const FunctionInfo &lhs, const FunctionInfo &rhs)
 

Constructor & Destructor Documentation

LibraryIdentification::FunctionInfo::FunctionInfo ( const std::string &  ifuncName,
const std::string &  ifuncHash,
const std::string &  ilibHash 
)
inline

FunctionInfo.

Constructor. Combines all the information required to identify a function. This constructor allows the user to define everything.

Parameters
[in]funcNameName of the function to add
[in]funcHashUnique Hash of the function to add (Please use Fowler-Noll-Vo HasherFnv class in Combinatorics.h)
[in]libHashUnique Hash of the library this function belongs to. The Library should already be in the database.

Definition at line 37 of file FunctionInfo.h.

LibraryIdentification::FunctionInfo::FunctionInfo ( SgAsmFunction function,
const std::string &  ilibHash 
)
inline

FunctionInfo.

Constructor. Combines all the information required to identify a function. This constructor constructs the hash from the SgAsmFunction node. Note that currently on FNV hasher is used. This should be an option.

Parameters
[in]functionBinary AST Function Node
[in]libHashUnique Hash of the library this function belongs to. The Library should already be in the database.

Definition at line 54 of file FunctionInfo.h.

LibraryIdentification::FunctionInfo::FunctionInfo ( SgAsmFunction function,
LibraryInfo libInfo 
)
inline

FunctionInfo.

Constructor. Combines all the information required to identify a function. This constructor constructs the hash from the SgAsmFunction node. Note that currently on FNV hasher is used. This should be an option.

Parameters
[in]functionBinary AST Function Node
[in]libInfoLibraryInfo that should be in the database

Definition at line 73 of file FunctionInfo.h.

LibraryIdentification::FunctionInfo::FunctionInfo ( const std::string &  ifuncHash)
inline

FunctionInfo.

Constructor. Only takes the hash, Rest to be filled in from matching in the database.

Parameters
[in]funcHashUnique Hash of the function to add (Please use Fowler-Noll-Vo HasherFnv class in Combinatorics.h)

Definition at line 88 of file FunctionInfo.h.

LibraryIdentification::FunctionInfo::FunctionInfo ( SgAsmFunction function)
inline

FunctionInfo.

Constructor just takes a function, but only initializes the hash. Rest to be filled in from matching in the database

Parameters
[in]functionBinary AST Function Node

Definition at line 100 of file FunctionInfo.h.


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