1 #ifndef INCLUDE__Function_hxx
2 #define INCLUDE__Function_hxx
5 #include "BasicBlock.hxx"
7 class InformationManager;
11 Function(const std::string& name, uint64_t start_address,
12 InformationManager* manager)
14 , start_address(start_address)
17 uint64_t getStartAddress() const {
21 std::string getName() const
23 void setName(const std::string& new_name)
26 InformationManager* getManager() const {
30 void addBasicBlock(BasicBlock* block) {
31 _blocks.insert(std::make_pair(block->getStartAddress(), block));
34 const std::map<uint64_t, BasicBlock*>& blocks() {
39 uint64_t start_address;
40 InformationManager * manager;
41 std::map<uint64_t, BasicBlock*> _blocks;