public void WriteXmlDefaultsOverrideTest() { ClientConfig clientConfig = new ClientConfig() { SenderId = "testsenderid", SenderPassword = "******", }; RequestConfig requestConfig = new RequestConfig() { ControlId = "testcontrol", UniqueId = true, PolicyId = "testpolicy", }; string expected = @"<?xml version=""1.0"" encoding=""utf-8""?> <control> <senderid>testsenderid</senderid> <password>pass123!</password> <controlid>testcontrol</controlid> <uniqueid>true</uniqueid> <dtdversion>3.0</dtdversion> <policyid>testpolicy</policyid> <includewhitespace>false</includewhitespace> </control>"; ControlBlock controlBlock = new ControlBlock(clientConfig, requestConfig); this.CompareXml(expected, controlBlock); }
/// <summary> /// ControlBlock模式读取数据块 /// </summary> private void ControlBlockModeRead() { byte[] buffer; for (int i = 0; i < ControlBlock.Count; i++) { PLCDBBlock block = ControlBlock[i]; buffer = new byte[block.BufferLength]; int resNo = cycleReadConnection.ReadBlock( DBType, DBNumber, block.Start_Offset, block.BufferLength, ref buffer, out string errText); if (resNo != 0) { _log.Error( $"设备[{Name}]读取[{DBType}][{DBNumber}]" + $"Offset[{block.Start_Offset}]Length[{block.BufferLength}]" + $"失败,失败信息:[Code:{resNo},Message:{errText}]"); } else { DoSomething(ControlBlock.GetKey(i), buffer); } } }
static void Main(string[] args) { try { //ler arquivo .mips var separator = Path.DirectorySeparatorChar; string file; if (args.Length > 0) { file = args[0]; } else { Console.WriteLine("Digite o arquivo junto com o caminho completo: "); file = Console.ReadLine(); } var lines = RotinaLeituraConsole(file); ControlBlock bloco_controle = new ControlBlock(lines); Console.ReadKey(); } catch (Exception e) { Console.WriteLine(e.Message); } }
public void InvalidSenderIdTest() { SdkConfig config = new SdkConfig() { SenderId = null, SenderPassword = "******", }; ControlBlock controlBlock = new ControlBlock(config); }
public Message() { type = new MessageType(); controlBlock = new ControlBlock(); controlBlock.Command = new ControlCommand(); communicationBlock = new CommunicationBlock(); communicationBlock.clock = new VectorClockImpl(-1); communicationBlock.payload = new CommunicationPayload(); }
public void InvalidSenderPasswordTest() { SdkConfig config = new SdkConfig() { SenderId = "testsender", SenderPassword = null, }; ControlBlock controlBlock = new ControlBlock(config); }
public void WriteXmlInvalidDtdVersionTest() { SdkConfig config = new SdkConfig() { SenderId = "testsenderid", SenderPassword = "******", DtdVersion = "1.2", }; ControlBlock controlBlock = new ControlBlock(config); }
public void WriteXmlInvalidControlIdLongTest() { SdkConfig config = new SdkConfig() { SenderId = "testsenderid", SenderPassword = "******", ControlId = new StringBuilder(10 * 30).Insert(0, "1234567890", 30).ToString(), }; ControlBlock controlBlock = new ControlBlock(config); }
public void WriteXmlInvalidControlIdShortTest() { SdkConfig config = new SdkConfig() { SenderId = "testsenderid", SenderPassword = "******", ControlId = "unittest", }; ControlBlock controlBlock = new ControlBlock(config); }
// Add Commands for other buttons. // To be added: // ReturnToSurfaceCommand #endregion public ROVControlsViewModel() { server = "169.254.250.128"; port = 3000; block = new ControlBlock(); AlreadySentSpecial = false; if (ConnectROV()) { StartDispatchTimer(); } EventManager.RegisterClassHandler(typeof(System.Windows.Controls.Control), System.Windows.Controls.Control.KeyDownEvent, new KeyEventHandler(MovementController), true); }
public override void SetMessage(Message messageToSet) { var controlBlock = new ControlBlock(); controlBlockMap.Add(messageToSet, controlBlock); controlBlock.playingMessageNode = null; controlBlock.state = MessageState.Ready; controlBlock.messageStartTime = 0.0f; controlBlock.transparency = 0.0f; }
public void WriteXmlDefaultsOverride21Test() { SdkConfig config = new SdkConfig() { SenderId = "testsenderid", SenderPassword = "******", ControlId = "testcontrol", UniqueId = true, DtdVersion = "2.1", PolicyId = "testpolicy", Debug = true, }; string expected = @"<?xml version=""1.0"" encoding=""utf-8""?> <control> <senderid>testsenderid</senderid> <password>pass123!</password> <controlid>testcontrol</controlid> <uniqueid>true</uniqueid> <dtdversion>2.1</dtdversion> <policyid>testpolicy</policyid> <includewhitespace>false</includewhitespace> <debug>true</debug> </control>"; Stream stream = new MemoryStream(); XmlWriterSettings xmlSettings = new XmlWriterSettings(); xmlSettings.Encoding = Encoding.UTF8; xmlSettings.Indent = true; xmlSettings.IndentChars = " "; IaXmlWriter xml = new IaXmlWriter(stream, xmlSettings); ControlBlock controlBlock = new ControlBlock(config); controlBlock.WriteXml(ref xml); xml.Flush(); stream.Position = 0; StreamReader reader = new StreamReader(stream); Diff xmlDiff = DiffBuilder.Compare(expected).WithTest(reader.ReadToEnd()) .WithDifferenceEvaluator(DifferenceEvaluators.Default) .Build(); Assert.IsFalse(xmlDiff.HasDifferences(), xmlDiff.ToString()); }
/// <summary> /// Tag对象注册事件 /// </summary> /// <param name="group">TagGroup对象</param> /// <param name="tag">Tag对象</param> private void OnTagRegister(CustomGroup group, CustomTag tag) { _log.Trace($"Device[{Name}]:Tag[{tag.Name}],Offset[{tag.DB_Offset}]"); if (!(tag is SiemensTag)) { throw new Exception($"tag对象:{tag.Name}不是SiemensTag对象"); } SiemensTag siemensTag = tag as SiemensTag; switch (CycleReadMode) { case SiemensCycleReadMode.FullBlock: FullBlock.Add(siemensTag.DB_Offset, siemensTag.Length); break; case SiemensCycleReadMode.ControlBlock: if (siemensTag.Type == TagType.C) { string key = ""; if (group is SiemensTagGroup) { key = (group as SiemensTagGroup).Name; } else if (group is SiemensSubTagGroup) { SiemensSubTagGroup subGroup = group as SiemensSubTagGroup; key = $"{subGroup.Parent.Name}.{subGroup.Prefix}"; } PLCDBBlock block = ControlBlock[key]; if (block == null) { block = new PLCDBBlock(); ControlBlock.Add(key, block); } block.Add(siemensTag.DB_Offset, siemensTag.Length); } break; } }
/// <summary> /// Constructs the RequestBlock object with the supplied config and content /// </summary> /// <param name="config"></param> /// <param name="content"></param> public RequestBlock(SdkConfig config, Content content) { if (!String.IsNullOrWhiteSpace(config.Encoding)) { var encodingInfo = Encoding.GetEncodings().FirstOrDefault(info => info.Name == config.Encoding); if (encodingInfo != null) { Encoding encoding = encodingInfo.GetEncoding(); } else { throw new ArgumentException("Requested encoding is not supported"); } } else { encoding = Encoding.GetEncoding("UTF-8"); } control = new ControlBlock(config); operation = new OperationBlock(config, content); }
// Use this for initialization void Start() { symbolej1 = new bool[12, 16]; symbolej2 = new bool[12, 16]; blocksFixesj1 = new bool[12, 16]; blocksFixesj2 = new bool[12, 16]; ost.GetComponent<AudioSource>().Play(); runej1.AddComponent<SpriteRenderer>(); runej2.AddComponent<SpriteRenderer>(); sideRune1j1.AddComponent<SpriteRenderer>(); sideRune2j1.AddComponent<SpriteRenderer>(); sideRune3j1.AddComponent<SpriteRenderer>(); sideRune4j1.AddComponent<SpriteRenderer>(); sideRune1j2.AddComponent<SpriteRenderer>(); sideRune2j2.AddComponent<SpriteRenderer>(); sideRune3j2.AddComponent<SpriteRenderer>(); sideRune4j2.AddComponent<SpriteRenderer>(); runeEau = Resources.Load<Sprite>("runeEau1"); runeFeu = Resources.Load<Sprite>("runeFeu1"); runeTerre = Resources.Load<Sprite>("runeTerre1"); runeNuit = Resources.Load<Sprite>("runeNuit1"); runeEauS = Resources.Load<Sprite>("RuneEauS"); runeFeuS = Resources.Load<Sprite>("RuneFeuS"); runeTerreS = Resources.Load<Sprite>("RuneTerreS"); runeNuitS = Resources.Load<Sprite>("RuneNuitS"); runeEau1VS = Resources.Load<Sprite>("runeEau1VS"); runeFeu1VS = Resources.Load<Sprite>("runeFeu1VS"); runeTerre1VS = Resources.Load<Sprite>("runeTerre1VS"); runeNuit1VS = Resources.Load<Sprite>("runeNuit1VS"); runeEau2VS = Resources.Load<Sprite>("runeEau2VS"); runeFeu2VS = Resources.Load<Sprite>("runeFeu2VS"); runeTerre2VS = Resources.Load<Sprite>("runeTerre2VS"); runeNuit2VS = Resources.Load<Sprite>("runeNuit2VS"); //arrangement "aléatoire" des 4 runes dans runesTab runesTab = new Sprite[4]; sideRunesTabJ1 = new Sprite[4]; sideRunesVTabJ1 = new Sprite[4]; sideRunesTabJ2 = new Sprite[4]; sideRunesVTabJ2 = new Sprite[4]; System.Random rnd = new System.Random(); int x = rnd.Next(0, 4); switch (x) { case 0: runesTab[0] = runeNuit; runesTab[1] = runeEau; runesTab[2] = runeFeu; runesTab[3] = runeTerre; sideRunesTabJ1[0] = runeNuitS; sideRunesTabJ1[1] = runeEauS; sideRunesTabJ1[2] = runeFeuS; sideRunesTabJ1[3] = runeTerreS; sideRunesVTabJ1[0] = runeNuit1VS; sideRunesVTabJ1[1] = runeEau1VS; sideRunesVTabJ1[2] = runeFeu1VS; sideRunesVTabJ1[3] = runeTerre1VS; sideRunesTabJ2[0] = runeNuitS; sideRunesTabJ2[1] = runeEauS; sideRunesTabJ2[2] = runeFeuS; sideRunesTabJ2[3] = runeTerreS; sideRunesVTabJ2[0] = runeNuit2VS; sideRunesVTabJ2[1] = runeEau2VS; sideRunesVTabJ2[2] = runeFeu2VS; sideRunesVTabJ2[3] = runeTerre2VS; break; case 1: runesTab[0] = runeEau; runesTab[1] = runeFeu; runesTab[2] = runeNuit; runesTab[3] = runeTerre; sideRunesTabJ1[0] = runeEauS; sideRunesTabJ1[1] = runeFeuS; sideRunesTabJ1[2] = runeNuitS; sideRunesTabJ1[3] = runeTerreS; sideRunesVTabJ1[0] = runeEau1VS; sideRunesVTabJ1[1] = runeFeu1VS; sideRunesVTabJ1[2] = runeNuit1VS; sideRunesVTabJ1[3] = runeTerre1VS; sideRunesTabJ2[0] = runeEauS; sideRunesTabJ2[1] = runeFeuS; sideRunesTabJ2[2] = runeNuitS; sideRunesTabJ2[3] = runeTerreS; sideRunesVTabJ2[0] = runeEau2VS; sideRunesVTabJ2[1] = runeFeu2VS; sideRunesVTabJ2[2] = runeNuit2VS; sideRunesVTabJ2[3] = runeTerre2VS; break; case 2: runesTab[0] = runeTerre; runesTab[1] = runeNuit; runesTab[2] = runeEau; runesTab[3] = runeFeu; sideRunesTabJ1[0] = runeTerreS; sideRunesTabJ1[1] = runeNuitS; sideRunesTabJ1[2] = runeEauS; sideRunesTabJ1[3] = runeFeuS; sideRunesVTabJ1[0] = runeTerre1VS; sideRunesVTabJ1[1] = runeNuit1VS; sideRunesVTabJ1[2] = runeEau1VS; sideRunesVTabJ1[3] = runeFeu1VS; sideRunesTabJ2[0] = runeTerreS; sideRunesTabJ2[1] = runeNuitS; sideRunesTabJ2[2] = runeEauS; sideRunesTabJ2[3] = runeFeuS; sideRunesVTabJ2[0] = runeTerre2VS; sideRunesVTabJ2[1] = runeNuit2VS; sideRunesVTabJ2[2] = runeEau2VS; sideRunesVTabJ2[3] = runeFeu2VS; break; case 3: runesTab[0] = runeFeu; runesTab[1] = runeTerre; runesTab[2] = runeEau; runesTab[3] = runeNuit; sideRunesTabJ1[0] = runeFeuS; sideRunesTabJ1[1] = runeTerreS; sideRunesTabJ1[2] = runeEauS; sideRunesTabJ1[3] = runeNuitS; sideRunesVTabJ1[0] = runeFeu1VS; sideRunesVTabJ1[1] = runeTerre1VS; sideRunesVTabJ1[2] = runeEau1VS; sideRunesVTabJ1[3] = runeNuit1VS; sideRunesTabJ2[0] = runeFeuS; sideRunesTabJ2[1] = runeTerreS; sideRunesTabJ2[2] = runeEauS; sideRunesTabJ2[3] = runeNuitS; sideRunesVTabJ2[0] = runeFeu2VS; sideRunesVTabJ2[1] = runeTerre2VS; sideRunesVTabJ2[2] = runeEau2VS; sideRunesVTabJ2[3] = runeNuit2VS; break; } runej1.GetComponent<SpriteRenderer>().sprite = runesTab[cmpRJ1]; sideRune1j1.GetComponent<SpriteRenderer>().sprite = sideRunesTabJ1[cmpRJ1]; sideRune2j1.GetComponent<SpriteRenderer>().sprite = sideRunesTabJ1[cmpRJ1+1]; sideRune3j1.GetComponent<SpriteRenderer>().sprite = sideRunesTabJ1[cmpRJ1+2]; sideRune4j1.GetComponent<SpriteRenderer>().sprite = sideRunesTabJ1[cmpRJ1+3]; runej2.GetComponent<SpriteRenderer>().sprite = runesTab[cmpRJ2]; sideRune1j2.GetComponent<SpriteRenderer>().sprite = sideRunesTabJ2[cmpRJ2]; sideRune2j2.GetComponent<SpriteRenderer>().sprite = sideRunesTabJ2[cmpRJ2 + 1]; sideRune3j2.GetComponent<SpriteRenderer>().sprite = sideRunesTabJ2[cmpRJ2 + 2]; sideRune4j2.GetComponent<SpriteRenderer>().sprite = sideRunesTabJ2[cmpRJ2 + 3]; switch (runej1.GetComponent<SpriteRenderer>().sprite.name) { case "RuneTerre1": genereSymbole(3, 1); genereSymbole(3, 2); break; case "RuneEau1": genereSymbole(1, 1); genereSymbole(1, 2); break; case "RuneFeu1": genereSymbole(2, 1); genereSymbole(2, 2); break; case "RuneNuit1": genereSymbole(4, 1); genereSymbole(4, 2); break; } poolBlock = new ControlBlock[5012]; for (int i = 0; i < 5012; i++) { poolBlock[i] = new ControlBlock(this); } for (int i = 0; i < 12; i++) for (int j = 0; j < 16; j++) { blocksFixesj1[i, j] = false; blocksFixesj2[i, j] = false; } spawnJ1(0); spawnJ2(0); }
public RequestBlock(ClientConfig clientConfig, RequestConfig requestConfig, List <IFunction> content) { this.Encoding = requestConfig.Encoding; this.Control = new ControlBlock(clientConfig, requestConfig); this.Operation = new OperationBlock(clientConfig, requestConfig, content); }
public Message(Message msg) { type = msg.type; controlBlock = new Message.ControlBlock(msg.controlBlock); communicationBlock = new Message.CommunicationBlock(msg.communicationBlock); }
public override int GetHashCode() { return(Pubkey.GetHashCode() + ControlBlock.GetHashCode() + TapScript.GetHashCode()); }
void spawnPiece(ControlBlock cb, int joueur) { float x, y; x = 0.0f; y = y0; GameObject newPiece; ControlBlock newControlBlock; if (joueur == 1) { x = j1x0 + 6 * moveUnit; } else if (joueur == 2) { x = j2x0 + 6 * moveUnit; } if (cb.currentBlock.name.Equals(doubleBlock.name)) { newPiece = (GameObject)GameObject.Instantiate(doubleBlock, new Vector3(x, y, 0), cb.currentBlock.transform.rotation); } else if(cb.currentBlock.name.Equals(tripleBlock1.name)) { newPiece = (GameObject)GameObject.Instantiate(tripleBlock1, new Vector3(x, y, 0), cb.currentBlock.transform.rotation); } else { newPiece = (GameObject)GameObject.Instantiate(tripleBlock2, new Vector3(x, y, 0), cb.currentBlock.transform.rotation); } newPiece.gameObject.tag = "j" + joueur; newPiece.transform.Rotate(0, 0, cb.orientation * 90); newControlBlock = new ControlBlock(this); newControlBlock.currentBlock = newPiece; newControlBlock.orientation = cb.orientation; if (joueur == 1) { j1.pieceCourante = newControlBlock; } else { j2.pieceCourante = newControlBlock; } }
public bool Equals(TaprootScriptData other) { return(Pubkey.Equals(other.Pubkey) && ControlBlock.Equals(other.ControlBlock) && TapScript.Equals(other.TapScript)); }