public TWindowState(TreeNode argsTree) { var valueList = argsTree.ValueList; var nodes = argsTree.Nodes; if (nodes.Count == 2 && valueList.Count == 7) { this.Id = new WinId(nodes[0]); this.ZAfter = new WinId(nodes[1]); this.Kind = (SubSystemKind)int.Parse(valueList[0]); this.State = IntParser.Parse <uint>(valueList[1]); this.StateChange = IntParser.Parse <uint>(valueList[2]); this.x = int.Parse(valueList[3]); this.y = int.Parse(valueList[4]); this.w = int.Parse(valueList[5]); this.h = int.Parse(valueList[6]); } else { throw new ArgumentException("argsTree"); } }
public async Task <bool> SetAutoDetectTiming(WinId winId, bool enable) { ThrowIfClientNotReady(); var request = new CPRequest(ObjectName, "SetAutoDetectTiming", winId, enable ? 1 : 0); var response = await client.SendAsync(request) as CPResponse; response.ThrowIfError(); return(response.Success); }
public async Task <bool> Freeze(WinId winId) { ThrowIfClientNotReady(); var request = new CPRequest(ObjectName, "Freeze", winId); var response = await client.SendAsync(request) as CPResponse; response.ThrowIfError(); return(response.Success); }
public async Task <string> GrabImage(WinId winId) { ThrowIfClientNotReady(); var request = new CPRequest(ObjectName, "GrabImage", winId); var response = await client.SendAsync(request) as CPResponse; response.ThrowIfError(); return(response.ValueList.Replace("\"", "")); }
public async Task <bool> SetChannel(WinId winId, int chNumber) { ThrowIfClientNotReady(); var request = new CPRequest(ObjectName, "SetChannel", winId, chNumber); var response = await client.SendAsync(request) as CPResponse; response.ThrowIfError(); return(response.Success); }
public async Task <bool> SelectInput(WinId winId, string inputName) { ThrowIfClientNotReady(); var request = new CPRequest(ObjectName, "SelectInput", winId, inputName); var response = await client.SendAsync(request) as CPResponse; response.ThrowIfError(); return(response.Success); }
public async Task <string> GetInput(WinId winId) { ThrowIfClientNotReady(); var request = new CPRequest(ObjectName, "GetInput", winId); var response = await client.SendAsync(request) as CPResponse; response.ThrowIfError(); return(response.ValueList); }
public async Task <int> GetChannel(WinId winId) { ThrowIfClientNotReady(); var request = new CPRequest(ObjectName, "GetChannel", winId); var response = await client.SendAsync(request) as CPResponse; response.ThrowIfError(); int chNumber = int.Parse(response.ValueList); return(chNumber); }
public async Task <CPRGBTiming> DetectTiming(WinId winId) { // неработает // { 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 } <- сервер возвращает такую хрень... // вместо 12 аргументов - 15 ThrowIfClientNotReady(); var request = new CPRequest(ObjectName, "DetectTiming", winId); var response = await client.SendAsync(request) as CPResponse; response.ThrowIfError(); var data = response.ValueList; return(new CPRGBTiming(data)); }
public async Task <PrevImage> GetPreview(WinId winId) { // недокументированный метод... // судя повсему используется для получения эскизов форм в ContorlPoint-е //= 00000000 128 96DLE... ThrowIfClientNotReady(); var request = new CPRequest(ObjectName, "GetPreview", winId); var response = await client.SendAsync(request) as CPResponse; response.ThrowIfError(); //=00000000 128 96DLE... return(response.Success ? new PrevImage(response.ValueList): null); }