public SequentialDataTransform(IHost host, SequentialTransformerBase <TInput, TOutput, TState> parent, IDataView input, IStatefulRowMapper mapper) : base(parent.Host, input) { Metadata = new MetadataDispatcher(1); _parent = parent; _transform = CreateLambdaTransform(_parent.Host, input, _parent.InputColumnName, _parent.OutputColumnName, InitFunction, _parent.WindowSize > 0, _parent.OutputColumnType); _mapper = mapper; _bindings = new ColumnBindings(input.Schema, _mapper.GetOutputColumns()); }
private Bindings(OptionalColumnTransform parent, ColumnType[] columnTypes, int[] srcCols, int[] srcColsWithOptionalColumn, Schema input, Schema inputWithOptionalColumn, bool user, string[] names) : base(input, user, names) { Contracts.AssertValue(parent); Contracts.Assert(Utils.Size(columnTypes) == InfoCount); Contracts.Assert(Utils.Size(srcCols) == InfoCount); Contracts.AssertValue(inputWithOptionalColumn); ColumnTypes = columnTypes; SrcCols = srcCols; _parent = parent; _metadata = new MetadataDispatcher(InfoCount); _inputWithOptionalColumn = inputWithOptionalColumn; _srcColsWithOptionalColumn = srcColsWithOptionalColumn; SetMetadata(); }