Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
03/28/18 17:17:31 (6 years ago)
Author:
pfleck
Message:

#2906

  • Implemented for classification, clustering, etc.
  • Simplified Transformation interfaces (read-only, ...).
  • Started moving transformation logic out of ProblemData.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2906_Transformations/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisTransformation.cs

    r15865 r15870  
    2020#endregion
    2121
    22 using System;
    2322using HeuristicLab.Common;
    2423using HeuristicLab.Core;
     
    4039    }
    4140
    42     private IValueParameter<ITransformation> TransformationParameter {
    43       get { return (IValueParameter<ITransformation>)Parameters["Transformation"]; }
     41    private ValueParameter<ITransformation> TransformationParameter {
     42      get { return (ValueParameter<ITransformation>)Parameters["Transformation"]; }
    4443    }
    4544    #endregion
     
    4847    public string OriginalVariable {
    4948      get { return OriginalVariableParameter.Value.Value; }
    50       set { OriginalVariableParameter.Value.Value = value; }
    5149    }
    5250
    5351    public string TransformedVariable {
    5452      get { return TransformedVariableParameter.Value.Value; }
    55       set { TransformedVariableParameter.Value.Value = value; }
    5653    }
    5754
    5855    public ITransformation Transformation {
    5956      get { return TransformationParameter.Value; }
    60       set { TransformationParameter.Value = value; }
    6157    }
    6258    #endregion
    6359
    6460    #region Constructor, Cloning & Persistence
    65     public DataAnalysisTransformation()
    66       : this("", "", new IdentityTransformation()) {
    67     }
    6861    public DataAnalysisTransformation(string originalVariable, string transformedVariable, ITransformation transformation)
    6962      : base() {
    70       Parameters.Add(new FixedValueParameter<StringValue>("Original Variable", new StringValue(originalVariable)));
    71       Parameters.Add(new FixedValueParameter<StringValue>("Transformed Variable", new StringValue(transformedVariable)));
    72       Parameters.Add(new ValueParameter<ITransformation>("Transformation", transformation));
    73 
    74       RegisterEventHandlers();
     63      Parameters.Add(new FixedValueParameter<StringValue>("Original Variable", new StringValue(originalVariable).AsReadOnly()));
     64      Parameters.Add(new FixedValueParameter<StringValue>("Transformed Variable", new StringValue(transformedVariable).AsReadOnly()));
     65      Parameters.Add(new ValueParameter<ITransformation>("Transformation", transformation)); // TODO: should be readonly/fixed
    7566    }
    7667
    7768    protected DataAnalysisTransformation(DataAnalysisTransformation original, Cloner cloner)
    7869      : base(original, cloner) {
    79       RegisterEventHandlers();
    8070    }
    8171
     
    8979
    9080    [StorableHook(HookType.AfterDeserialization)]
    91     private void AfterDeserialization() {
    92       RegisterEventHandlers();
    93     }
    94     #endregion
    95 
    96     #region Event-Handling
    97     private void RegisterEventHandlers() {
    98       OriginalVariableParameter.Value.ValueChanged += OriginalVariableParameterValue_ValueChanged;
    99       TransformedVariableParameter.Value.ValueChanged += TransformedVariableParameterValue_ValueChanged;
    100       TransformationParameter.ValueChanged += TransformationParameter_ValueChanged;
    101     }
    102 
    103     private void OriginalVariableParameterValue_ValueChanged(object sender, EventArgs e) {
    104       OnToStringChanged();
    105     }
    106     private void TransformedVariableParameterValue_ValueChanged(object sender, EventArgs e) {
    107       OnToStringChanged();
    108     }
    109     private void TransformationParameter_ValueChanged(object sender, EventArgs e) {
    110       OnToStringChanged();
    111     }
    11281    #endregion
    11382
Note: See TracChangeset for help on using the changeset viewer.