Esempio n. 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="arg"></param>
        public void OnRealTagChanged(TagChangedArg arg)
        {
            foreach (var vv in arg.AddedTags.Where(e => e.Value.StartsWith(this.Name) && !AllowTagIds.Contains(e.Key)))
            {
                AllowTagIds.Add(vv.Key);
            }

            foreach (var vv in arg.ChangedTags)
            {
                if (vv.Value.StartsWith(this.Name))
                {
                    if (!AllowTagIds.Contains(vv.Key))
                    {
                        AllowTagIds.Add(vv.Key);
                    }
                }
                else
                {
                    if (AllowTagIds.Contains(vv.Key))
                    {
                        AllowTagIds.Remove(vv.Key);
                    }
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="addTags"></param>
        /// <param name="changedTags"></param>
        public void NotifyRealTagChanged(Dictionary <int, string> addTags, Dictionary <int, string> changedTags)
        {
            TagChangedArg tca = new TagChangedArg()
            {
                AddedTags = addTags, ChangedTags = changedTags
            };

            foreach (var vv in mDrivers)
            {
                vv.Value.OnRealTagChanged(tca);
            }
        }
Esempio n. 3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="arg"></param>
        public void OnRealTagChanged(TagChangedArg arg)
        {
            var tags = arg.AddedTags.Where(e => e.Value.StartsWith("Sim"));

            foreach (var vv in tags)
            {
                var vtag = mTagService.GetTagById(vv.Key);
                if (mTagIdCach.ContainsKey(vv.Value))
                {
                    mTagIdCach[vv.Value].Add(vtag);
                }
                else
                {
                    mTagIdCach.Add(vv.Value, new List <Tagbase>()
                    {
                        vtag
                    });
                }
            }

            var cgtags = arg.ChangedTags;

            foreach (var vvt in mTagIdCach)
            {
                vvt.Value.RemoveAll((tag) => { return(cgtags.ContainsKey(tag.Id)); });
            }

            tags = arg.ChangedTags.Where(e => e.Value.StartsWith("Sim"));

            foreach (var vv in tags)
            {
                var vtag = mTagService.GetTagById(vv.Key);
                if (mTagIdCach.ContainsKey(vv.Value))
                {
                    mTagIdCach[vv.Value].Add(vtag);
                }
                else
                {
                    mTagIdCach.Add(vv.Value, new List <Tagbase>()
                    {
                        vtag
                    });
                }
            }

            mCosNeedReload       = true;
            mSinNeedReload       = true;
            mStepPointNeedReload = true;
            mStepNeedReload      = true;
            mSquareNeedReload    = true;
            mDatetimeReload      = true;
        }