//Constructors /// <summary> /// Creates an initialized instance /// </summary> /// <param name="featureFilterCfg">Output feature filter settings</param> /// <param name="networksCfg">Forecasting networks settings</param> public ForecastTaskSettings(IFeatureFilterSettings featureFilterCfg, ForecastNetworksSettings networksCfg = null ) { FeatureFilterCfg = (IFeatureFilterSettings)featureFilterCfg.DeepClone(); NetworksCfg = networksCfg == null ? new ForecastNetworksSettings() : (ForecastNetworksSettings)networksCfg.DeepClone(); return; }
//Constructors /// <summary> /// Creates an unitialized instance /// </summary> /// <param name="name">The name of the input field.</param> /// <param name="featureFilterCfg">The configuration of the feature filter associated with the input field.</param> /// <param name="routeToReadout">Specifies whether to route the input field to the readout layer.</param> public ExternalFieldSettings(string name, IFeatureFilterSettings featureFilterCfg, bool routeToReadout = DefaultRouteToReadout ) { Name = name; FeatureFilterCfg = (IFeatureFilterSettings)featureFilterCfg.DeepClone(); RouteToReadout = routeToReadout; Check(); return; }
//Constructors /// <summary> /// Creates an unitialized instance /// </summary> /// <param name="name">Input field name</param> /// <param name="featureFilterCfg">Configuration of feature filter associated with the input field</param> /// <param name="routeToReadout">Specifies whether to route input field to readout layer together with other predictors</param> /// <param name="spikeCodeCfg">Configuration of spike code</param> public ExternalFieldSettings(string name, IFeatureFilterSettings featureFilterCfg, bool routeToReadout = DefaultRouteToReadout, SpikeCodeSettings spikeCodeCfg = null ) { Name = name; FeatureFilterCfg = (IFeatureFilterSettings)featureFilterCfg.DeepClone(); RouteToReadout = routeToReadout; SpikeCodeCfg = (SpikeCodeSettings)spikeCodeCfg?.DeepClone(); if (featureFilterCfg.Type == FeatureFilterBase.FeatureType.Real && spikeCodeCfg == null) { SpikeCodeCfg = new SpikeCodeSettings(); } Check(); return; }