Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
06/01/15 14:21:02 (9 years ago)
Author:
pfleck
Message:

#2027

  • Added IThresholdTerminator interface for more flexibility. The ThresholdTerminatorView now uses the interface instead of a concrete terminator.
  • Added MaximumIterationsTerminator and SingleObjectiveQualityTerminator as common used Terminators.
Location:
branches/TerminationCriteria/HeuristicLab.Termination/3.3
Files:
3 added
5 edited

Legend:

Unmodified
Added
Removed
  • branches/TerminationCriteria/HeuristicLab.Termination/3.3/HeuristicLab.Termination-3.3.csproj

    r12402 r12410  
    7373  </PropertyGroup>
    7474  <ItemGroup>
     75    <Reference Include="HeuristicLab.Analysis-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
     76      <SpecificVersion>False</SpecificVersion>
     77      <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Analysis-3.3.dll</HintPath>
     78    </Reference>
    7579    <Reference Include="HeuristicLab.Collections-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
    7680      <SpecificVersion>False</SpecificVersion>
     
    141145  </ItemGroup>
    142146  <ItemGroup>
     147    <Compile Include="IThresholdTerminator.cs" />
     148    <Compile Include="MaximumIterationsTerminator.cs" />
     149    <Compile Include="SingleObjectiveQualityTerminator.cs" />
    143150    <Compile Include="ThresholdTerminator.cs" />
    144151    <Compile Include="Views\ThresholdTerminatorView.cs">
  • branches/TerminationCriteria/HeuristicLab.Termination/3.3/TerminationOperator.cs

    r12405 r12410  
    8282    public override IOperation InstrumentedApply() {
    8383      var next = new OperationCollection(base.InstrumentedApply());
    84       if (TerminateParameter.ActualValue != null && TerminateParameter.ActualValue.Value) {
     84      if (TerminateParameter.ActualValue.Value) {
    8585        if (TerminateBranch != null) next.Insert(0, ExecutionContext.CreateOperation(TerminateBranch));
    8686      } else {
  • branches/TerminationCriteria/HeuristicLab.Termination/3.3/ThresholdTerminator.cs

    r12408 r12410  
    3131  [Item("ThresholdTerminator", "Base class for all termination criteria which specifies some threshold.")]
    3232  [StorableClass]
    33   public abstract class ThresholdTerminator<T> : Terminator where T : class, IItem, IStringConvertibleValue, new() {
     33  public abstract class ThresholdTerminator<T> : Terminator, IThresholdTerminator where T : class, IItem, IStringConvertibleValue, new() {
    3434    public IFixedValueParameter<T> ThresholdParameter {
    3535      get { return (IFixedValueParameter<T>)Parameters["Threshold"]; }
     36    }
     37    IParameter IThresholdTerminator.ThresholdParameter {
     38      get { return ThresholdParameter; }
    3639    }
    3740
  • branches/TerminationCriteria/HeuristicLab.Termination/3.3/Views/ThresholdTerminatorView.Designer.cs

    r12408 r12410  
    2525
    2626namespace HeuristicLab.Termination.Views {
    27   partial class ThresholdTerminatorView<T> where T : class, IItem, IComparable, IStringConvertibleValue, new() {
     27  partial class ThresholdTerminatorView {
    2828    /// <summary>
    2929    /// Required designer variable.
  • branches/TerminationCriteria/HeuristicLab.Termination/3.3/Views/ThresholdTerminatorView.cs

    r12408 r12410  
    2020#endregion
    2121
    22 using System;
    23 using HeuristicLab.Core;
    2422using HeuristicLab.Core.Views;
    25 using HeuristicLab.Data;
    2623using HeuristicLab.MainForm;
    2724
     
    2926
    3027  [View("ThresholdTerminator View")]
    31   [Content(typeof(ThresholdTerminator<>), true)]
    32   public partial class ThresholdTerminatorView<T> : ItemView where T : class, IItem, IComparable, IStringConvertibleValue, new() {
     28  [Content(typeof(IThresholdTerminator), true)]
     29  public partial class ThresholdTerminatorView : ItemView {
    3330
    34     public new ThresholdTerminator<T> Content {
    35       get { return (ThresholdTerminator<T>)base.Content; }
     31    public new IThresholdTerminator Content {
     32      get { return (IThresholdTerminator)base.Content; }
    3633      set { base.Content = value; }
    3734    }
     
    4542      viewHost.Content = null;
    4643      if (Content != null) {
    47         if (Content.ThresholdParameter.Value != null)
    48           viewHost.Content = Content.ThresholdParameter.Value;
     44        if (Content.ThresholdParameter.ActualValue != null)
     45          viewHost.Content = Content.ThresholdParameter.ActualValue;
    4946        else
    5047          viewHost.Content = Content.ThresholdParameter;
Note: See TracChangeset for help on using the changeset viewer.