Animatroller.Framework.Effect.Sweeper.UpdateOutput C# (CSharp) Method

UpdateOutput() private method

private UpdateOutput ( ) : void
return void
        private void UpdateOutput()
        {
            double value1;
            double value2;
            double value3;
            long valueTicks;

            lock (lockObject)
            {
                value1 = SweeperTables.DataValues1[SweeperTables.GetScaledIndex(this.index1, this.positions + 1)];
                value2 = SweeperTables.DataValues2[SweeperTables.GetScaledIndex(this.index2, this.positions + 1)];
                value3 = SweeperTables.DataValues3[SweeperTables.GetScaledIndex(this.index3, this.positions + 1)];

                valueTicks = this.ticks;
            }

            if (Monitor.TryEnter(lockJobs))
            {
                try
                {
                    foreach (var job in jobs)
                        job(
                            zeroToOne: value1,
                            negativeOneToOne: value2,
                            zeroToOneToZero: value3,
                            forced: false,
                            totalTicks: valueTicks,
                            final: this.ended);
                }
                catch (Exception ex)
                {
                    log.Error("Exception in Sweeper job" + ex.ToString());
                }
                finally
                {
                    Monitor.Exit(lockJobs);
                }
            }
            else
                log.Warn("Missed execute task in Sweeper job");
        }