GemSdk(string configurationPath, HsmsSettings? hsms = null) | 載入設備設定,可覆寫 HSMS 設定。未提供正式授權時開始試用。 |
Start() / DisposeAsync() | 啟動 HSMS;非同步停止並釋放設備與日誌資源。 |
HsmsSelected / CommunicationState / ControlState | 分別讀取 HSMS Select、GEM 通訊與控制狀態。 |
HsmsSelectedChanged / CommunicationStateChanged / ControlStateChanged | 通知狀態改變;後兩者提供原狀態與新狀態。UI 更新請切回 UI 執行緒。 |
EnableCommunication() / DisableCommunication() | 啟用或停用 GEM 通訊,回傳是否接受操作。 |
RequestOnlineAsync() / SetLocal() / SetRemote() / SetOffline() | 操作員控制入口;RequestOnlineAsync 回傳 Task<bool>。 |
SetVariable(string name, object value) / GetVariable(string name) | 依名稱更新 SV、DV、EC,或讀取目前值。 |
BindVariable(string source, Func<object> provider) | 依設定中的 source 綁定即時取值函式。 |
TriggerEvent(uint ceid) | 觸發已由 Host 定義、連結並啟用的事件報告。 |
SetAlarm(uint alid) / ClearAlarm(uint alid) / IsAlarmSet(uint alid) | 使警報成立、解除或查詢;回傳 bool。 |
RegisterRemoteCommand(string name, Func<IReadOnlyDictionary<string, object?>, RemoteCommandResult> handler) | 註冊遠端指令,僅 Online Remote 執行。回呼須快速返回。 |
RemoteCommandResult(byte acknowledge = 0, IReadOnlyDictionary<string, byte>? parameterErrors = null) | HCACK 0–6;CPACK 1–3。有參數錯誤時 HCACK 必須為 3。 |
ProgramNames / GetProgram(string id) / SetProgram(string id, byte[] body) / ProgramChanged | 查詢配方名稱、讀寫本體,監聽 Host 下載或刪除通知。 |
ActiveTraceIds / StopTrace(uint id) | 取得 Host 啟用的 TRID 快照,或停止指定 Trace。 |
Mdln / SoftRev / AddLogFile(string path) | 讀取機型/版本;新增 SECS 與運作日誌檔。 |
GemSdk.TrialStatus() / ActivateTrial() / ExtendTrial(string path) | 靜態方法:查詢/首次啟用試用、匯入延長檔。重複 ActivateTrial 不延長;延長重設 30 天、不疊加。 |
GemSdk.MachineFingerprint() / LoadLicense(string path) | 靜態方法:取得指紋/載入機台授權;正式授權應於建構 SDK 前載入。 |
HsmsSettings | DeviceId、IpAddress、Port、IsActive;T3/T5/T6/T7/T8 與 LinkTestInterval 單位為毫秒,LinkTestEnabled 控制 Linktest。 |