X-Git-Url: https://git.siccegge.de//index.cgi?p=frida%2Ffrida.git;a=blobdiff_plain;f=src%2Fdisassembler%2FFunction.hxx;h=57833baaf1ccbf210b62867caed574248bfb40e3;hp=6cad001dcf74c68ea2f0113c078487c767af7e68;hb=9252262693432b33dbe4ffc60d79bbdc6fbb5f66;hpb=d84d4109b1f5bd5f87732b7e49860639d963a553 diff --git a/src/disassembler/Function.hxx b/src/disassembler/Function.hxx index 6cad001..57833ba 100644 --- a/src/disassembler/Function.hxx +++ b/src/disassembler/Function.hxx @@ -2,22 +2,34 @@ #define INCLUDE__Function_hxx #include "disassembler/BasicBlock.hxx" +#include class Function { public: - Function(const std::string& name) { - this->name = name; + Function(const std::string& name, uint64_t start_address) + : name(name) + , start_address(start_address) { + } + + uint64_t getStartAddress() const { + return start_address; } std::string getName() const { return name; } - BasicBlock * getEntry(); + void addBasicBlock(BasicBlock* block) { + _blocks.insert(std::make_pair(block->getStartAddress(), block)); + } + std::map& blocks() { + return _blocks; + } private: std::string name; - BasicBlock * start; + uint64_t start_address; + std::map _blocks; }; #endif