コード例 #1
0
 internal LYR001DataCache GetDataCache()
 {
     if (_dataCache == null ||
         _dataCache.IsComplete() ||
         _dataCache.IsTimeout())
     {
         _dataCache = new LYR001DataCache();
     }
     return(_dataCache);
 }
コード例 #2
0
ファイル: LYR001DeviceProcessor.cs プロジェクト: wpmyj/c3
        private void ProcessDataCache(LYR001Device d, LYR001DataCache dataCache)
        {
            if (dataCache.IsComplete())
            {
                GRData grdata = dataCache.ToGRData();
                d.DeviceDataManager.Last = grdata;

                // save
                //
                int id = GuidHelper.ConvertToInt32(d.Guid);
                DBI.Instance.InsertGRData(id, grdata);
            }
        }
コード例 #3
0
ファイル: LYR001DeviceProcessor.cs プロジェクト: wpmyj/c3
        /// <summary>
        ///
        /// </summary>
        /// <param name="task"></param>
        /// <param name="pr"></param>
        private void ProcessReadStatus(ITask task, IParseResult pr)
        {
            byte[]           bs         = (byte[])pr.Results["Status"];
            LYR001StatusData statusData = LYR001StatusDataParser.Parse(bs);


            LYR001Device    d     = (LYR001Device)task.Device;
            LYR001DataCache cache = d.DataCacheManager.GetDataCache();

            cache.StatusData = statusData;

            ProcessDataCache(d, cache);
        }
コード例 #4
0
ファイル: LYR001DeviceProcessor.cs プロジェクト: wpmyj/c3
        //#region ProcessReadStatus
        ///// <summary>
        /////
        ///// </summary>
        ///// <param name="task"></param>
        ///// <param name="parseResult"></param>
        //private void ProcessReadStatus(ITask task, IParseResult pr)
        //{
        //    LYR001Device d = (LYR001Device ) task.Device;

        //    byte[] bsStatus = (byte[])pr.Results["data"];
        //    Debug.Assert(bsStatus.Length == 4);
        //    byte b = bsStatus[3];
        //    bool hasPowerAlarm = (b & (byte)Math.Pow(2, 7)) > 0;
        //    d.StatusAndAlarmDictionary[LYR001Device.StatusAndAlarmEnum.AlaramPower] = hasPowerAlarm;
        //}
        //#endregion //ProcessReadStatus

        #region ProcessReadReal
        /// <summary>
        ///
        /// </summary>
        /// <param name="d"></param>
        /// <param name="parseResult"></param>
        private void ProcessReadReal(ITask task, IParseResult pr)
        {
            //GRData data = new GRData();
            LYR001AnalogData data = new LYR001AnalogData();

            //data.DT = DateTime.Now;

            data.GT1 = Convert.ToSingle(pr.Results["GT1"]);
            data.BT1 = Convert.ToSingle(pr.Results["BT1"]);
            data.GT2 = Convert.ToSingle(pr.Results["GT2"]);
            data.BT2 = Convert.ToSingle(pr.Results["BT2"]);
            data.OT  = Convert.ToSingle(pr.Results["OT"]);
            //data.GTBase2 = Convert.ToSingle(pr.Results["GTBase2"]);
            data.GP1 = Convert.ToSingle(pr.Results["GP1"]);
            data.BP1 = Convert.ToSingle(pr.Results["BP1"]);
            data.WL  = Convert.ToSingle(pr.Results["WL"]);
            data.GP2 = Convert.ToSingle(pr.Results["GP2"]);
            data.BP2 = Convert.ToSingle(pr.Results["BP2"]);
            data.I1  = Convert.ToSingle(pr.Results["I1"]);
            data.IR  = Convert.ToSingle(pr.Results["IR"]);
            //data.I2 = Convert.ToSingle(pr.Results["I2"]);
            //data.S2 = Convert.ToInt32(pr.Results["S2"]);
            data.S1 = Convert.ToInt32(pr.Results["S1"]);
            data.SR = Convert.ToInt32(pr.Results["SR"]);
            data.OD = Convert.ToInt32(pr.Results["OD"]);
            //data.IH1 = Convert.ToDouble (parseResult.Results ["IH1"]);
            //data.SH1 = Convert.ToDouble (parseResult.Results ["SH1"]);
            //data.IH1 = 0d;
            //data.SH1 = 0d;


            LYR001Device    d         = (LYR001Device)task.Device;
            LYR001DataCache dataCache = d.DataCacheManager.GetDataCache();

            dataCache.AnalogData = data;
            // TODO: process lyr001 data cache
            //
            //d.DeviceDataManager.Last = data;


            //// save
            ////
            //int id = GuidHelper.ConvertToInt32(d.Guid);
            //DBI.Instance.InsertGRData(id, data);

            ProcessDataCache(d, dataCache);
        }