1 #ifndef INCLUDE__BasicBlock_hxx
2 #define INCLUDE__BasicBlock_hxx
9 class InformationManager;
10 class QXmlStreamWriter;
14 uint64_t getStartAddress() const {
18 uint64_t getEndAddress() const {
22 uint64_t getNextBlock(size_t index) const {
24 return next_blocks[index];
27 void setNextBlock(size_t index, uint64_t address) {
29 next_blocks[index] = address;
32 void setStartAddress(uint64_t address) {
33 start_address = address;
36 void setEndAddress(uint64_t address) {
37 end_address = address;
40 std::string getName() const {
42 s << "BLOCK_" << std::hex << start_address << '_' << end_address;
46 InformationManager* getManager() const {
50 void serialize(QXmlStreamWriter& stream);
52 BasicBlock(uint64_t start_address, InformationManager* manager)
53 : start_address(start_address)
59 uint64_t start_address;
61 Disassembler* disassembler;
62 InformationManager* manager;
63 uint64_t next_blocks[2];
65 friend class InformationManager;