diff options
| author | Brian Potchik <brian@vector35.com> | 2025-04-27 10:29:51 -0400 |
|---|---|---|
| committer | Brian Potchik <brian@vector35.com> | 2025-04-27 10:29:51 -0400 |
| commit | 54990215c2ad8bda17de857a7fe97d9a7559364f (patch) | |
| tree | c48f5215c7b9bc4b70391dc8aea48bf72193e9ca /binaryninjaapi.h | |
| parent | af87287534221d6c5b0e3425dfcbc84800b7c2f0 (diff) | |
Add initial Workflow Monitor UI and support for nested subflows.
Diffstat (limited to 'binaryninjaapi.h')
| -rw-r--r-- | binaryninjaapi.h | 36 |
1 files changed, 29 insertions, 7 deletions
diff --git a/binaryninjaapi.h b/binaryninjaapi.h index a749ac79..680b9592 100644 --- a/binaryninjaapi.h +++ b/binaryninjaapi.h @@ -10113,17 +10113,45 @@ namespace BinaryNinja { bool PostRequest(const std::string& command); public: + + // TODO: Convert to BNWorkflowMachineStatus structure + struct Status + { + std::string state = "Invalid"; + std::string activity; + bool localLogEnabled; + bool globalLogEnabled; + }; + WorkflowMachine(Ref<BinaryView> view); WorkflowMachine(Ref<Function> function); bool PostJsonRequest(const std::string& request); - /*! Start the workflow WorkflowMachine + void ShowTopology(); + + WorkflowMachine::Status GetStatus(); + + /*! Resume the workflow machine + + Resumes the workflow machine for the given BinaryView or Function. + \return true if the command is accepted, false otherwise. + */ + bool Resume(); + + /*! Start the workflow Machine Starts the workflow machine for the given BinaryView or Function. \return true if the command is accepted, false otherwise. */ bool Run(); + /*! Configure the workflow machine + + Configures the workflow machine. + \return true if the command is accepted, false otherwise. + */ + bool Configure(); + /*! Halt the workflow machine Halts analysis at a resumable point. @@ -10161,12 +10189,6 @@ namespace BinaryNinja { */ bool Step(); - // TODO: Add new BNWorkflowMachineStatus structure and cooresponding API - // BNWorkflowMachineStatus GetStatus(); - // TODO remove the following APIs once the above is implemented - std::string GetState(); - std::pair<bool, bool> GetLogStatus(); - bool SetLogEnabled(bool enable, bool global = false); std::optional<bool> QueryOverride(const std::string& activity); |
