public override void ReportInProgress(IBuildDetail build)
 {
     var sequence = new PulseSequence {
         Color = BusylightColor.Blue,
         Step1 = 0,
         Step2 = 255,
         Step3 = 0,
         Step4 = 255
     };
     _busylight.Pulse(sequence);
 }
示例#2
0
        public static PulseSequence GetPulseSequense()
        {
            var sequence = new PulseSequence();

            sequence.Color = BusylightColor.Red;
            sequence.Step1 = 1;
            sequence.Step2 = 64;
            sequence.Step3 = 11;
            sequence.Step4 = 55;
            sequence.Step5 = 255;
            sequence.Step6 = 228;
            sequence.Step7 = 64;
            return(sequence);
        }
示例#3
0
        /// <summary>
        /// Устанавливаем данные импорта
        /// </summary>
        public void SetDataImport(PulseSequence pulseSequence)
        {
            List <Variable>       variablelist = new List <Variable>();
            List <TableSequence>  tableList    = new List <TableSequence>( );
            List <StreamSequence> streamList   = new List <StreamSequence>( );

            if (pulseSequence.sequenceParameters.variableSequence != null)
            {
                foreach (SequenceParameters.Parameter parametr in pulseSequence.sequenceParameters.variableSequence)
                {
                    SequenceVariable variable  = new SequenceVariable( );
                    Type             typeValue = Value.GetAutoType(parametr.value, parametr.minimum, parametr.maximum);
                    variable.Name       = parametr.name;
                    variable.IsReadOnly = parametr.isReadOnly;

                    if (!string.IsNullOrWhiteSpace(parametr.minimum))
                    {
                        variable.Min = (Value)Activator.CreateInstance(typeValue, new object[] { parametr.minimum, null });
                    }
                    if (!string.IsNullOrWhiteSpace(parametr.maximum))
                    {
                        variable.Max = (Value)Activator.CreateInstance(typeValue, new object[] { parametr.maximum, null });
                    }
                    variable.Value = (Value)Activator.CreateInstance(typeValue, new object[] { parametr.value, null });

                    variablelist.Add(variable);
                }
            }
            SequenceVariables = variablelist.ToArray( );

            variablelist.Clear( );
            if (pulseSequence.sequenceParameters.variableTable != null)
            {
                foreach (SequenceParameters.Parameter parametr in pulseSequence.sequenceParameters.variableTable)
                {
                    TableVariable variable = new TableVariable( );
                    variable.Name       = parametr.name;
                    variable.IsReadOnly = parametr.isReadOnly;
                    if (!string.IsNullOrWhiteSpace(parametr.minimum))
                    {
                        variable.Min = Value.CreateInstance(parametr.minimum);
                    }
                    if (!string.IsNullOrWhiteSpace(parametr.maximum))
                    {
                        if (variable.Min != null)
                        {
                            variable.Max = (Value)Activator.CreateInstance(variable.Min.GetType( ), new object[] { parametr.maximum, null });
                        }
                        else
                        {
                            variable.Max = Value.CreateInstance(parametr.maximum);
                        }
                    }
                    if (variable.Min != null)
                    {
                        variable.Value = (Value)Activator.CreateInstance(variable.Min.GetType( ), new object[] { parametr.value, null });
                    }
                    else if (variable.Max != null)
                    {
                        variable.Value = (Value)Activator.CreateInstance(variable.Max.GetType( ), new object[] { parametr.value, null });
                    }
                    else
                    {
                        variable.Value = Value.CreateInstance(parametr.value);
                    }

                    variablelist.Add(variable);
                }
            }
            TableVariables = variablelist.ToArray( );

            foreach (SequenceTable table in pulseSequence.sequenceTables)
            {
                tableList.Add(TableSequence.CreateInstance(table));
            }
            Tables = tableList.ToArray( );

            foreach (SequenceRow row in pulseSequence.sequenceRows)
            {
                streamList.Add(new StreamSequence(row));
            }
            Streams = streamList.ToArray( );
        }