ss928_framework/svp/common/sample_common_svp_npu_model.h

56 lines
2.7 KiB
C
Raw Permalink Normal View History

2024-12-16 13:31:45 +08:00
/*
Copyright (c), 2001-2022, Shenshu Tech. Co., Ltd.
*/
#ifndef SAMPLE_COMMON_SVP_NPU_MODEL_H
#define SAMPLE_COMMON_SVP_NPU_MODEL_H
#include "ot_type.h"
#include "svp_acl_mdl.h"
#include "libapi_common_svp.h"
#include "sample_common_svp_npu.h"
td_s32 sample_common_svp_npu_get_input_data(const td_char *src[], td_u32 file_num,
const struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_load_model(const td_char *model_path, td_u32 model_index, td_bool is_cached);
td_void sample_common_svp_npu_unload_model(td_u32 model_index);
td_s32 sample_common_svp_npu_create_input(struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_create_output(struct_svp_npu_task_info *task);
td_void sample_common_svp_npu_destroy_input(struct_svp_npu_task_info *task);
td_void sample_common_svp_npu_destroy_output(struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_create_task_buf(struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_create_work_buf(struct_svp_npu_task_info *task);
td_void sample_common_svp_npu_destroy_task_buf(struct_svp_npu_task_info *task);
td_void sample_common_svp_npu_destroy_work_buf(struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_get_work_buf_info(const struct_svp_npu_task_info *task,
td_u32 *work_buf_size, td_u32 *work_buf_stride);
td_s32 sample_common_svp_npu_share_work_buf(const struct_svp_npu_shared_work_buf *shared_work_buf,
const struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_set_dynamic_batch(const struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_model_execute(const struct_svp_npu_task_info *task);
td_void sample_common_svp_npu_output_classification_result(const struct_svp_npu_task_info *task);
td_void sample_common_svp_npu_dump_task_data(const struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_set_threshold(struct_svp_npu_threshold threshold[], td_u32 threshold_num,
const struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_roi_to_rect(const struct_svp_npu_task_info *task,
struct_svp_npu_detection_info *detection_info, const ot_video_frame_info *proc_frame,
const ot_video_frame_info *show_frame, ot_struct_svp_rect_info *rect_info);
td_s32 sample_common_svp_npu_update_input_data_buffer_info(td_u8 *virt_addr, td_u32 size, td_u32 stride, td_u32 idx,
const struct_svp_npu_task_info *task);
td_s32 sample_common_svp_npu_get_input_data_buffer_info(const struct_svp_npu_task_info *task, td_u32 idx,
td_u8 **virt_addr, td_u32 *size, td_u32 *stride);
td_s32 sample_common_svp_npu_check_has_aicpu_task(const struct_svp_npu_task_info *task, td_bool *has_aicpu_task);
struct_svp_npu_model_info* sample_common_svp_npu_get_model_info(td_u32 model_idx);
#endif