package com.netsdk.demo.customize; import com.netsdk.demo.util.CaseMenu; import com.netsdk.lib.ToolKits; import com.netsdk.lib.structure.NET_CFG_THERMOMETRY_SHIELD_INFO; import com.netsdk.lib.structure.THERMOMETRY_SHIELD_INFO; import com.netsdk.lib.utils.Initialization; import com.sun.jna.Memory; import com.sun.jna.Native; import com.sun.jna.Pointer; import com.sun.jna.ptr.IntByReference; import java.io.UnsupportedEncodingException; import static com.netsdk.lib.enumeration.NET_EM_CFG_OPERATE_TYPE.NET_EM_CFG_THERMOMETRY_SHIELD; /** * @author 291189 * @version 1.0 * @description ERR221024049 * @date 2022/11/7 10:57 */ public class ThermometryShieldDemo extends Initialization { int nChannelID=0; NET_CFG_THERMOMETRY_SHIELD_INFO msg=new NET_CFG_THERMOMETRY_SHIELD_INFO(); public void getThermometry() { Pointer pstuConfigInfo=new Memory(msg.size()); pstuConfigInfo.clear(msg.size()); ToolKits.SetStructDataToPointer(msg, pstuConfigInfo, 0); boolean gRet = netSdk.CLIENT_GetConfig(loginHandle, NET_EM_CFG_THERMOMETRY_SHIELD, nChannelID, pstuConfigInfo, msg.size(), 3000, null); if(gRet){ System.out.println("CLIENT_GetConfig success"); ToolKits.GetPointerDataToStruct(pstuConfigInfo,0,msg); Native.free(Pointer.nativeValue(pstuConfigInfo)); //清理内存 Pointer.nativeValue(pstuConfigInfo, 0); }else { System.err.printf("CLIENT_GetConfig failed, ErrCode=%x\n", netSdk.CLIENT_GetLastError()); return; } int nRealInfoNumOfEachChennel = msg.nRealInfoNumOfEachChennel; System.out.println("nRealInfoNumOfEachChennel:"+nRealInfoNumOfEachChennel); THERMOMETRY_SHIELD_INFO[] stuThermometryShieldInfo = msg.stuThermometryShieldInfo; for(int i=0;i