コード例 #1
0
 public async void InjectValue(int a, int b)
 {
     if (CurrentBar.Inject(a, b))
     {
         AutoReset.WaitOne();
     }
 }
コード例 #2
0
        public XmlNode UpdateSettings(XmlDocument document)
        {
            XmlElement xmlSettings = document.CreateElement("Settings");

            XmlElement xmlReset = document.CreateElement("AutoReset");

            xmlReset.InnerText = AutoReset.ToString();
            xmlSettings.AppendChild(xmlReset);

            XmlElement xmlHighPriority = document.CreateElement("SetHighPriority");

            xmlHighPriority.InnerText = SetHighPriority.ToString();
            xmlSettings.AppendChild(xmlHighPriority);

            XmlElement xmlSplits = document.CreateElement("Splits");

            xmlSettings.AppendChild(xmlSplits);

            foreach (SplitInfo split in Splits)
            {
                XmlElement xmlSplit = document.CreateElement("Split");
                xmlSplit.InnerText = split.ToString();
                xmlSplits.AppendChild(xmlSplit);
            }

            return(xmlSettings);
        }
コード例 #3
0
        public void OnTick_ShouldReturnChildStatus(BehaviourStatus status)
        {
            var child = new MockBehaviour {
                ReturnStatus = status
            };

            var sut = new AutoReset <MockContext>(child);

            var behaviourStatus = sut.Tick(new MockContext());

            Assert.That(behaviourStatus, Is.EqualTo(status));
        }
コード例 #4
0
        public void WhenChildIsRunning_ContinueRunning()
        {
            var child = new MockBehaviour {
                ReturnStatus = BehaviourStatus.Running
            };

            var sut = new AutoReset <MockContext>(child);

            sut.Tick(new MockContext());

            Assert.That(child.ResetCount, Is.EqualTo(0));
        }
コード例 #5
0
        public void WhenChildTerminates_ResetChild(BehaviourStatus status)
        {
            var child = new MockBehaviour {
                ReturnStatus = status
            };

            var sut = new AutoReset <MockContext>(child);

            sut.Tick(new MockContext());

            Assert.That(child.ResetCount, Is.EqualTo(1));
        }
コード例 #6
0
 private async void StartFoo()
 {
     await Task.Factory.StartNew(() =>
     {
         while (State != FooState.Finished)
         {
             IResult result = CurrentBar.WaitForValue();     // This is blocking function, wait for a value
             OnValueInjected?.Invoke(this, new ResultEventArgs(result));
             AutoReset.Set();
             // .. rest of the loop
         }
     });
 }
コード例 #7
0
        public XmlNode GetSettings(XmlDocument document)
        {
            var settingsNode = document.CreateElement("Settings");

            settingsNode.AppendChild(ToElement(document, "Version", Assembly.GetExecutingAssembly().GetName().Version.ToString(3)));

            settingsNode.AppendChild(ToElement(document, "AutoStartTimer", AutoStartTimer.ToString()));
            settingsNode.AppendChild(ToElement(document, "AutoSelectFile", AutoSelectFile.ToString()));
            settingsNode.AppendChild(ToElement(document, "AutoReset", AutoReset.ToString()));

            foreach (var _split in CheckedSplits)
            {
                settingsNode.AppendChild(ToElement(document, _split.Name, _split.isEnabled.ToString()));
            }

            return(settingsNode);
        }
コード例 #8
0
 public void Visit(AutoReset <TContext> obj)
 {
     PrintNode(obj);
     VisitChild(obj);
 }