/// <summary>
        /// updates an already existing object
        /// </summary>
        public virtual void UpdateObject(int par1, object par2Obj)
        {
            WatchableObject watchableobject = (WatchableObject)WatchedObjects[par1];

            if (!par2Obj.Equals(watchableobject.GetObject()))
            {
                watchableobject.SetObject(par2Obj);
                watchableobject.SetWatching(true);
                ObjectChanged = true;
            }
        }
        public virtual void UpdateWatchedObjectsFromList(List <WatchableObject> par1List)
        {
            foreach (WatchableObject watchableobject in par1List)
            {
                WatchableObject watchableobject1 = WatchedObjects[Convert.ToInt32(watchableobject.GetDataValueId())];

                if (watchableobject1 != null)
                {
                    watchableobject1.SetObject(watchableobject.GetObject());
                }
            }
        }