Example #1
0
 // This method is called by the timer delegate.
 public void CheckStatus(Object stateInfo)
 {
     if (!isStop)
     {
         AutoResetEvent autoEvent = (AutoResetEvent)stateInfo;
         //Console.WriteLine("id: {0},  {1} Checking status {2,3}.",
         //    id, DateTime.Now.ToString("h:mm:ss.fff"),
         //    (++invokeCount).ToString());
         //this.Speed = this.ConstantSpeed * 600;//转/毫秒
         this.Round = this.Speed * (this.CurrentTime / (1000 * 60));
         //Console.WriteLine("id: {0}, Speed: {1}, CurrentTime: {2} ", id, Speed, this.CurrentTime);
         //Console.WriteLine("id: {0}, Round: {1}, CurrentTime: {2} ", id, Round, this.CurrentTime);
         if (CollectionParams.GetCollectionParams().ArrivedTime() || this.CurrentTime - this.TotalTime > 0)
         {
             // Reset the counter and signal the waiting thread.
             isStop           = true;
             this.currentTime = 0;
             this.totalTime   = 0;
             this.speed       = 0;
             this.round       = 0;
             autoEvent.Set();
         }
         this.CurrentTime += 100;
     }
     else
     {
         autoEvent.Set();
     }
 }
Example #2
0
        public override byte[] Encode()
        {
            byte[] param  = null;
            int    remain = NCFData.GetData().Configs[0].SampleData.Data["Time"].Count - Index;

            //达到测试预设时间
            if (CollectionParams.GetCollectionParams().ArrivedTime())
            {
                param = new byte[2] {
                    0x00, 0x02
                };
                return(this.Encode(message, param));
            }
            else if (CollectionParams.GetCollectionParams().ArrivedSize())
            {
                param = new byte[2] {
                    0x00, 0x04
                };
                return(this.Encode(message, param));
            }
            else
            {
                if (remain >= 5)
                {
                    param = CreateTransferParam(5);
                }
                else if (remain != 0)
                {
                    param = CreateTransferParam(remain);
                    Index = 0;
                }
            }
            //if (remain >= 5)
            //{
            //    param = CreateTransferParam(5);
            //}
            //else if (remain != 0)
            //{
            //    param = CreateTransferParam(remain);
            //    Index = 0;
            //}
            //else
            //{
            //    param = new byte[2] { 0x00, 0x02 };
            //    return this.Encode(message, param);
            //}
            //for test no data
            //param = CreateTransferParam(0);
            return(this.Encode(message, param));
        }
Example #3
0
 public override bool Decode(byte[] buf)
 {
     if (this.Decode(message, buf, out parameter))
     {
         var Time   = BitConverter.ToUInt16(parameter, 0);
         var Points = BitConverter.ToUInt32(parameter, 2);
         var Size   = BitConverter.ToUInt16(parameter, 6);
         CollectionParams.GetCollectionParams().SetParams(Time, Points, Size);
         SubWork.GetSubWork().ToLua.Size = Size;
         Console.WriteLine(string.Format("Time: {0}, Points: {1}, Size: {2}", Time, Points, Size));
         _c78.M = this.message;
         _c78.R = 0x01;
         return(true);
     }
     else
     {
         return(false);
     }
 }