ss928_framework/ss928sdk/include/ss_mpi_avs_pos_query.h
2024-12-16 13:31:45 +08:00

47 lines
1.8 KiB
C
Executable File

/*
Copyright (c), 2001-2022, Shenshu Tech. Co., Ltd.
*/
#ifndef __SS_MPI_AVS_POS_QUERY_H__
#define __SS_MPI_AVS_POS_QUERY_H__
#include "ot_common_avs_pos_query.h"
#ifdef __cplusplus
extern "C" {
#endif
/*
* generates the lookup table about the position between output image and source image.
* avs_config: output image config
* mesh_vir_addr: the address of mesh data to save.
*/
td_s32 ss_mpi_avs_pos_mesh_generate(const ot_avs_pos_cfg *cfg, const td_u64 mesh_addr[OT_AVS_MAX_INPUT_NUM]);
/*
* query the position in source image space from the output image space
* dst_size: the resolution of destination image;
* window_size: the windows size of position mesh data, should be same as generating the position mesh.
* mesh_addr: the virtual address of position mesh data, the memory size should be same as the mesh file.
* dst_point: the input position in destination image space.
* src_point: the output position in source image space.
*/
td_s32 ss_mpi_avs_pos_query_dst_to_src(const ot_size *dst_size, td_u32 window_size, td_u64 mesh_addr,
const ot_point *dst_point, ot_point *src_point);
/*
* query the position in output stitch image space from the source image space
* src_size: the resolution of source image;
* window_size: the windows size of position mesh data, should be same as generating the position mesh.
* mesh_addr: the virtual address of position mesh data, the memory size should be same as the mesh file.
* src_point: the input position in source image space.
* dst_point: the output position in destination image space.
*/
td_s32 ss_mpi_avs_pos_query_src_to_dst(const ot_size *src_size, td_u32 window_size, td_u64 mesh_addr,
const ot_point *src_point, ot_point *dst_point);
#ifdef __cplusplus
}
#endif
#endif /* ss_mpi_avs_pos_query.h */