summaryrefslogtreecommitdiff
path: root/binaryninjaapi.h
diff options
context:
space:
mode:
Diffstat (limited to 'binaryninjaapi.h')
-rw-r--r--binaryninjaapi.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h
index 5fc2f5a6..c83e8ee8 100644
--- a/binaryninjaapi.h
+++ b/binaryninjaapi.h
@@ -10077,10 +10077,33 @@ namespace BinaryNinja {
Ref<BinaryView> m_view;
Ref<Function> m_function;
+ bool PostRequest(const std::string& command);
+
public:
WorkflowMachine(Ref<BinaryView> view);
WorkflowMachine(Ref<Function> function);
+ /*! Start the workflow WorkflowMachine
+ Starts the workflow machine for the given BinaryView or Function.
+ \return true if the command is accepted, false otherwise.
+ */
+ bool Run();
+
+ /*! Halt the workflow machine
+
+ Halts analysis at a resumable point.
+ \return true if the command is accepted, false otherwise.
+ */
+ bool Halt();
+
+ /*! Reset the workflow machine
+
+ Resets the workflow machine to its initial state.
+ \return true if the command is accepted, false otherwise.
+ */
+ bool Reset();
+
+
/*! Enable the workflow machine
Re-enables the workflow machine if it is in the Suspend state.
@@ -10096,6 +10119,19 @@ namespace BinaryNinja {
*/
bool Disable();
+ /*! Step the workflow machine
+
+ Steps the workflow machine through a single activity.
+ \return true if the command is accepted, false otherwise.
+ */
+ bool Step();
+
+ /*! Get the current state of the workflow machine
+
+ Returns the current state of the workflow machine.
+ \return The current state of the workflow machine
+ */
+ std::string GetState();
std::optional<bool> QueryOverride(const std::string& activity);
bool SetOverride(const std::string& activity, bool enable);