Blender V4.3
BKE_blender_cli_command.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2024 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
15#include "BLI_utility_mixins.hh"
16
17#include <memory>
18#include <string>
19
25 public:
26 CommandHandler(const std::string &id) : id(id) {}
27 virtual ~CommandHandler() = default;
28
30 const std::string id;
31
36 virtual int exec(struct bContext *C, int argc, const char **argv) = 0;
37
39 bool is_duplicate = false;
40};
44void BKE_blender_cli_command_register(std::unique_ptr<CommandHandler> cmd);
45
50
56 const char *id,
57 const int argc,
58 const char **argv);
59
int BKE_blender_cli_command_exec(struct bContext *C, const char *id, const int argc, const char **argv)
void BKE_blender_cli_command_print_help()
void BKE_blender_cli_command_free_all()
bool BKE_blender_cli_command_unregister(CommandHandler *cmd)
void BKE_blender_cli_command_register(std::unique_ptr< CommandHandler > cmd)
virtual ~CommandHandler()=default
CommandHandler(const std::string &id)
virtual int exec(struct bContext *C, int argc, const char **argv)=0