Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
09/20/19 16:23:42 (5 years ago)
Author:
dpiringe
Message:

#3026:

  • changed the namespace from ParameterTest to HeuristicLab.Manufacture
  • added an extension method for Type to get the distance of an interface based on the target type
  • renamed methods ToData, SetValue to Extract, Inject
  • new implementation of the template generation with transformers (not the final name)
  • started to use the new transformers for the instantiation of IOptimizer-objects (out of a template)
  • new transformers: LookupParameterTransformer and DummyTransformer
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/3026_IntegrationIntoSymSpace/HeuristicLab.Manufacture/ParameterTransformer/ConstrainedValueParameterTransformer.cs

    r17263 r17266  
    66using HeuristicLab.Core;
    77
    8 namespace ParameterTest.ParameterTransformer {
     8namespace HeuristicLab.Manufacture {
    99  public class ConstrainedValueParameterTransformer : ParameterBaseTransformer {
    10     public override void SetValue(IParameter parameter, ParameterData data) {
     10    public override void InjectData(IParameter parameter, ParameterData data) {
    1111      foreach (var x in parameter.Cast<dynamic>().ValidValues)
    1212        if (x.GetType().Name == CastValue<string>(data.Default))
    1313          parameter.ActualValue = x;
    1414    }
     15
     16    public override ParameterData ExtractData(IParameter value) {
     17      return new ParameterData() {
     18        Name = value.Name,
     19        Default = value.ActualValue?.GetType().Name,
     20        Range = GetValidValues(value)
     21      };
     22    }
     23
     24    #region Helper
     25    private object[] GetValidValues(IParameter value) {
     26      List<object> list = new List<object>();
     27      var values = value.Cast<dynamic>().ValidValues;
     28      foreach (var x in values) list.Add(x);
     29      return list.Select(x => x.GetType().Name).ToArray();
     30    }
     31    #endregion
    1532  }
    1633}
Note: See TracChangeset for help on using the changeset viewer.