package com.njcn.advance.utils;

import com.njcn.advance.pojo.bo.QvvrDataStruct;
import com.njcn.advance.pojo.dto.waveAnalysis.CauseStruct;
import com.njcn.advance.pojo.dto.waveAnalysis.Rect;
import com.sun.jna.Library;
import com.sun.jna.Native;

/**
 * pqs
 *
 * @author cdf
 * @date 2023/6/20
 */
public class JnaCallBalance extends JnaCallDllOrSo{

    public static String strpath;

    public JnaCallBalance(String name) {
        super(name);
    }

    @Override
    public void setPath() {
        JnaCallBalance.strpath = super.getStrpath();
    }

    public interface Balancelibrary extends Library {
        // 加载Lib库


        Balancelibrary INSTANTCE = (Balancelibrary) Native.loadLibrary(JnaCallBalance.strpath, Balancelibrary.class);


        // 定义方法--->与C方法相对应(暂降综合评估)
        void qvvr_fun_cause(QvvrDataStruct data);

        // 定义方法--->与C方法相对应(暂降原因)
        void qvvr_fun_cause(CauseStruct data);


    }

    public interface Eventlibrary extends Library {
        // 加载Lib库


        Eventlibrary INSTANTCE = (Eventlibrary) Native.loadLibrary(JnaCallBalance.strpath, Eventlibrary.class);


        // 计算暂降类
        void qvvr_fun(Rect data);


    }
}
