示例#1
0
        /// <summary>
        /// Updates dependent action
        /// </summary>
        /// <param name="consumer">Consumer</param>
        /// <returns>Action</returns>
        protected virtual Action UpdateDependentAction(IDataConsumer consumer)
        {
            List <object>        l  = new List <object>();
            List <IMeasurements> lm = new List <IMeasurements>();

            consumer.GetDependent(l, lm);
            return(() =>
            {
                foreach (IMeasurements m in lm)
                {
                    m.IsUpdated = false;
                    m.UpdateMeasurements();
                }
            });
        }
示例#2
0
        /// <summary>
        /// Updates started action
        /// </summary>
        /// <param name="consumer">Consumer</param>
        /// <returns>Action</returns>
        protected virtual Action <double> UpdateStatredAction(IDataConsumer consumer)
        {
            List <IMeasurements> lm = new List <IMeasurements>();
            List <object>        l  = new List <object>();

            consumer.GetDependent(l, lm);
            List <IStarted> ls = new List <IStarted>();

            foreach (object o in l)
            {
                if (o is IStarted)
                {
                    ls.Add(o as IStarted);
                }
            }
            return((double t) =>
            {
                foreach (IStarted s in ls)
                {
                    s.Start(t);
                }
            });
        }