summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
authorRusty Wagner <rusty@vector35.com>2016-10-20 00:14:41 -0400
committerRusty Wagner <rusty@vector35.com>2016-10-20 00:14:41 -0400
commit254d5aa23c0d114e9a275f60538fcb3b76ac1c69 (patch)
treee409404b63f241d5484acf7b68be43aad6532f29 /binaryninjaapi.h
parentc99fd8fddc8734c121383d8d3e078674cb1a5e88 (diff)
Add API for multiple architectures distinguished by address
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index 7c297f73..6311271c 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -1257,6 +1257,7 @@ namespace BinaryNinja
static size_t GetDefaultIntegerSizeCallback(void* ctxt);
static size_t GetMaxInstructionLengthCallback(void* ctxt);
static size_t GetOpcodeDisplayLengthCallback(void* ctxt);
+ static BNArchitecture* GetAssociatedArchitectureByAddressCallback(void* ctxt, uint64_t* addr);
static bool GetInstructionInfoCallback(void* ctxt, const uint8_t* data, uint64_t addr,
size_t maxLen, BNInstructionInfo* result);
static bool GetInstructionTextCallback(void* ctxt, const uint8_t* data, uint64_t addr,
@@ -1311,6 +1312,8 @@ namespace BinaryNinja
virtual size_t GetMaxInstructionLength() const;
virtual size_t GetOpcodeDisplayLength() const;
+ virtual Ref<Architecture> GetAssociatedArchitectureByAddress(uint64_t& addr);
+
virtual bool GetInstructionInfo(const uint8_t* data, uint64_t addr, size_t maxLen, InstructionInfo& result) = 0;
virtual bool GetInstructionText(const uint8_t* data, uint64_t addr, size_t& len,
std::vector<InstructionTextToken>& result) = 0;
@@ -1454,6 +1457,7 @@ namespace BinaryNinja
virtual size_t GetDefaultIntegerSize() const override;
virtual size_t GetMaxInstructionLength() const override;
virtual size_t GetOpcodeDisplayLength() const override;
+ virtual Ref<Architecture> GetAssociatedArchitectureByAddress(uint64_t& addr) override;
virtual bool GetInstructionInfo(const uint8_t* data, uint64_t addr, size_t maxLen, InstructionInfo& result) override;
virtual bool GetInstructionText(const uint8_t* data, uint64_t addr, size_t& len,
std::vector<InstructionTextToken>& result) override;