diff options
Diffstat (limited to 'flowgraph.cpp')
| -rw-r--r-- | flowgraph.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/flowgraph.cpp b/flowgraph.cpp index 51a634b9..be7e498b 100644 --- a/flowgraph.cpp +++ b/flowgraph.cpp @@ -329,6 +329,12 @@ bool FlowGraph::IsMediumLevelILGraph() const } +bool FlowGraph::IsHighLevelILGraph() const +{ + return BNIsHighLevelILFlowGraph(m_object); +} + + Ref<LowLevelILFunction> FlowGraph::GetLowLevelILFunction() const { BNLowLevelILFunction* func = BNGetFlowGraphLowLevelILFunction(m_object); @@ -347,6 +353,15 @@ Ref<MediumLevelILFunction> FlowGraph::GetMediumLevelILFunction() const } +Ref<HighLevelILFunction> FlowGraph::GetHighLevelILFunction() const +{ + BNHighLevelILFunction* func = BNGetFlowGraphHighLevelILFunction(m_object); + if (!func) + return nullptr; + return new HighLevelILFunction(func); +} + + void FlowGraph::SetLowLevelILFunction(LowLevelILFunction* func) { BNSetFlowGraphLowLevelILFunction(m_object, func ? func->GetObject() : nullptr); @@ -359,6 +374,12 @@ void FlowGraph::SetMediumLevelILFunction(MediumLevelILFunction* func) } +void FlowGraph::SetHighLevelILFunction(HighLevelILFunction* func) +{ + BNSetFlowGraphHighLevelILFunction(m_object, func ? func->GetObject() : nullptr); +} + + void FlowGraph::Show(const string& title) { ShowGraphReport(title, this); |
