public IList <ProcParam <SequenceProcEnv> > GetParameters() { var cond = new SingleSelectParameter("Condition", new[] { "Greatest", "Least", "First Not Empty" }); var operand = new SequenceMultiSelectParameter("Other Candidates", (v) => v.Type != SequenceType.Label); return(new ProcParam <SequenceProcEnv>[] { cond, operand }); }
public IList <ProcParam <SequenceProcEnv> > GetParameters() { var arith = new SingleSelectParameter("Operation", new[] { "Add", "Subtract", "Multiply", "Divide", "Max", "Min" }); var operand = new SequenceMultiSelectParameter("Other operands", (v) => v.Type != SequenceType.Label); return(new ProcParam <SequenceProcEnv>[] { arith, operand }); }
public SequenceData Operate(IList <ProcParam <SequenceProcEnv> > args, SequenceProcEnv env) { SequenceMultiSelectParameter others = args[0] as SequenceMultiSelectParameter; List <TimeSeriesValues> sequences = new List <TimeSeriesValues>(); sequences.Add(env.SelectedSequence.Values); sequences.AddRange(others.Value.Select(d => d.Values)); List <string> columnNames = new List <string>(); int sequenceIndex = 0; foreach (TimeSeriesValues sequence in sequences) { sequenceIndex++; foreach (string name in sequence.ColumnNames) { columnNames.Add(string.Format("{0}.{1}", sequenceIndex, name)); } } TimeSeriesValues values = new TimeSeriesValues(columnNames); foreach (var pair in TimeSeriesValuesCalculation.EnumerateCompositeSequences(sequences)) { values[pair.Key] = pair.Value; } return(new SequenceData(values, null, PathEx.GiveName("Composite", new string[] { env.SelectedSequence.Title }.Union(others.Value.Select(d => d.Title))))); }
public IList <ProcParam <SequenceProcEnv> > GetParameters() { var operand = new SequenceMultiSelectParameter("Other operands", (v) => v.Type != SequenceType.Numeric); var sep = new StringParameter("Separator"); sep.Value = "+"; var useEmpty = new BooleanParameter("Use Empty Label"); return(new ProcParam <SequenceProcEnv>[] { operand, sep, useEmpty }); }
public IList <ProcParam <SequenceProcEnv> > GetParameters() { var row = new SequenceMultiSelectParameter("Sequence for Target Label", x => x.Type != SequenceType.Numeric); var sep = new StringParameter("Separator"); sep.Value = "+"; var multi = new BooleanParameter("Allow Multi-Label per one row"); var useEmpty = new BooleanParameter("Use Empty Label"); return(new ProcParam <SequenceProcEnv>[] { row, sep, multi, useEmpty }); }
public IList <ProcParam <SequenceProcEnv> > GetParameters() { SequenceMultiSelectParameter others = new SequenceMultiSelectParameter("Other Sequences", v => (v.Type & SequenceType.Numeric) != 0); return(new ProcParam <SequenceProcEnv>[] { others }); }