/*********版权所有（C）2025，武汉高德红外股份有限公司***************
* 文件名称：API_FrontStitch.h
* 文件标识：
* 内容摘要：条带拼接算法（基于纯特征）
* 其它说明：
* 当前版本：
* 创建作者：04046wcw
* 创建日期：2025/05/14
*******************************************************************/
#pragma once

#ifdef _WIN32
#define STD_STITCH_API __declspec(dllexport)
#else
#define STD_STITCH_API  __attribute__ ((visibility("default")))
#endif

#include "StitchStruct.h"



// 视频帧连续的条带拼接
class STD_STITCH_API API_FeaStitch
{
public:
    virtual ~API_FeaStitch() = default;

    // 初始化拼接
    virtual GenPanInfo		Init(GD_VIDEO_FRAME_S img, FrameInfo info) = 0;

    // 运行拼接流程
    virtual SINT32       Run(GD_VIDEO_FRAME_S img, FrameInfo para) = 0;


    // 获取全景图
    virtual GD_VIDEO_FRAME_S ExportPanAddr() = 0;


    virtual cv::Mat ExportPanMat() = 0;

public:
    static API_FeaStitch* Create(std::string cachedir = "./cache");
    static void Destroy(API_FeaStitch* obj);
};
