* Copyright (c) 2026 Huawei Technologies Co., Ltd.
* This program is free software, you can redistribute it and/or modify it under the terms and conditions of
* CANN Open Software License Agreement Version 2.0 (the "License").
* Please refer to the License for details. You may not use this file except in compliance with the License.
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
* See LICENSE in the root of the software repository for the full text of the License.
*/
#include "prof_wrap.h"
namespace {
PyMethodDef g_methodsProf[] = {
{"create_config", WrapAclProfCreateConfig, METH_VARARGS, "create config"},
{"destroy_config", WrapAclProfDestroyConfig, METH_VARARGS, "destroy config"},
{"init", WrapAclProfInit, METH_VARARGS, "init"},
{"finalize", WrapAclProfFinalize, METH_VARARGS, "finalize"},
{"start", WrapAclProfStart, METH_VARARGS, "start"},
{"stop", WrapAclProfStop, METH_VARARGS, "stop"},
{"model_subscribe", WrapAclProfModelSubscribe, METH_VARARGS, "model subscribe"},
{"model_un_subscribe", WrapAclProfModelUnSubscribe, METH_VARARGS,
"model un subscribe"},
{"model_unsubscribe", WrapAclProfModelUnSubscribe, METH_VARARGS, "model unsubscribe"},
{"create_subscribe_config", WrapAclProfCreateSubscribeConfig, METH_VARARGS, "create subscribe config"},
{"destroy_subscribe_config", WrapAclProfDestroySubscribeConfig, METH_VARARGS, "destroy subscribe config"},
{"get_op_desc_size", WrapAclProfGetOpDescSize, METH_VARARGS, "get op desc size"},
{"get_op_num", WrapAclProfGetOpNum, METH_VARARGS, "get op num"},
{"get_op_type", WrapAclProfGetOpType, METH_VARARGS, "get op type"},
{"get_op_name", WrapAclProfGetOpName, METH_VARARGS, "get op name"},
{"get_op_type_v2", WrapAclProfGetOpTypeV2, METH_VARARGS, "get op type"},
{"get_op_name_v2", WrapAclProfGetOpNameV2, METH_VARARGS, "get op name"},
{"get_op_start", WrapAclProfGetOpStart, METH_VARARGS, "get op start"},
{"get_op_end", WrapAclProfGetOpEnd, METH_VARARGS, "get op end"},
{"get_op_duration", WrapAclProfGetOpDuration, METH_VARARGS, "get op duration"},
{"get_model_id", WrapAclProfGetModelId, METH_VARARGS, "get model id"},
{"get_op_type_len", WrapAclProfGetOpTypeLen, METH_VARARGS, "get op type len"},
{"get_op_name_len", WrapAclProfGetOpNameLen, METH_VARARGS, "get op name len"},
{"get_step_timestamp", WrapAclProfGetStepTimestamp, METH_VARARGS, "get step timestamp"},
{"destroy_step_info", WrapAclProfDestroyStepInfo, METH_VARARGS, "destroy step info"},
{"create_step_info", WrapAclProfCreateStepInfo, METH_VARARGS, "create step info"},
{"create_stamp", WrapAclProfCreateStamp, METH_VARARGS, "create stamp"},
{"destroy_stamp", WrapAclProfDestroyStamp, METH_VARARGS, "destroy stamp"},
{"push", WrapAclProfPush, METH_VARARGS, "push"},
{"pop", WrapAclProfPop, METH_VARARGS, "pop"},
{"range_start", WrapAclProfRangeStart, METH_VARARGS, "range start"},
{"range_stop", WrapAclProfRangeStop, METH_VARARGS, "range stop"},
{"set_stamp_trace_message", WrapAclProfSetStampTraceMessage, METH_VARARGS, "set stamp trace message"},
{"mark", WrapAclProfMark, METH_VARARGS, "mark"},
{"mark_ex", WrapAclProfMarkEx, METH_VARARGS, "mark ex"},
{"set_config", WrapAclProfSetConfig, METH_VARARGS, "set config"},
{nullptr, nullptr, 0, nullptr}};
}
PyMethodDef* GetProfMethods() { return g_methodsProf; }