- Timestamp:
- 05/26/15 16:15:54 (10 years ago)
- Location:
- branches/TerminationCriteria
- Files:
-
- 5 edited
- 8 moved
Legend:
- Unmodified
- Added
- Removed
-
branches/TerminationCriteria/HeuristicLab.Algorithms.OffspringSelectionGeneticAlgorithm/3.3/OffspringSelectionGeneticAlgorithm.cs
r12368 r12402 116 116 get { return (IFixedValueParameter<BoolValue>)Parameters["FillPopulationWithParents"]; } 117 117 } 118 private IValueParameter<MultiTerminat ionCriterion> TerminationCriteriaParameter {119 get { return (IValueParameter<MultiTerminat ionCriterion>)Parameters["TerminationCriteria"]; }118 private IValueParameter<MultiTerminator> TerminatorsParameter { 119 get { return (IValueParameter<MultiTerminator>)Parameters["Terminators"]; } 120 120 } 121 121 #endregion … … 203 203 set { FillPopulationWithParentsParameter.Value.Value = value; } 204 204 } 205 private MultiTerminat ionCriterion TerminationCriteria{206 get { return Terminat ionCriteriaParameter.Value; }205 private MultiTerminator Terminators { 206 get { return TerminatorsParameter.Value; } 207 207 } 208 208 private RandomCreator RandomCreator { … … 222 222 private SuccessfulOffspringAnalyzer successfulOffspringAnalyzer; 223 223 [Storable] 224 private ComparisonTerminat ionCriterion<IntValue> maximumGenerationsTerminationCriterion;225 [Storable] 226 private ComparisonTerminat ionCriterion<IntValue> maximumEvaluatedSolutionsTerminationCriterion;227 [Storable] 228 private ComparisonTerminat ionCriterion<DoubleValue> maximumSelectionPressureTerminationCriterion;229 [Storable] 230 private ComparisonTerminat ionCriterion<DoubleValue> qualityTerminationCriterion;231 [Storable] 232 private ExecutionTimeTerminat ionCriterion executionTimeTerminationCriterion;224 private ComparisonTerminator<IntValue> generationsTerminator; 225 [Storable] 226 private ComparisonTerminator<IntValue> evaluatedSolutionsTerminator; 227 [Storable] 228 private ComparisonTerminator<DoubleValue> selectionPressureTerminator; 229 [Storable] 230 private ComparisonTerminator<DoubleValue> qualityTerminator; 231 [Storable] 232 private ExecutionTimeTerminator executionTimeTerminator; 233 233 #endregion 234 234 … … 255 255 selectionPressureAnalyzer = cloner.Clone(original.selectionPressureAnalyzer); 256 256 successfulOffspringAnalyzer = cloner.Clone(original.successfulOffspringAnalyzer); 257 maximumGenerationsTerminationCriterion = cloner.Clone(original.maximumGenerationsTerminationCriterion);258 maximumEvaluatedSolutionsTerminationCriterion = cloner.Clone(original.maximumEvaluatedSolutionsTerminationCriterion);259 maximumSelectionPressureTerminationCriterion = cloner.Clone(original.maximumSelectionPressureTerminationCriterion);260 qualityTerminat ionCriterion = cloner.Clone(original.qualityTerminationCriterion);261 executionTimeTerminat ionCriterion = cloner.Clone(original.executionTimeTerminationCriterion);257 generationsTerminator = cloner.Clone(original.generationsTerminator); 258 evaluatedSolutionsTerminator = cloner.Clone(original.evaluatedSolutionsTerminator); 259 selectionPressureTerminator = cloner.Clone(original.selectionPressureTerminator); 260 qualityTerminator = cloner.Clone(original.qualityTerminator); 261 executionTimeTerminator = cloner.Clone(original.executionTimeTerminator); 262 262 Initialize(); 263 263 } … … 287 287 Parameters.Add(new ValueParameter<IntValue>("MaximumEvaluatedSolutions", "The maximum number of evaluated solutions (approximately).", new IntValue(int.MaxValue))); 288 288 Parameters.Add(new FixedValueParameter<BoolValue>("FillPopulationWithParents", "True if the population should be filled with parent individual or false if worse children should be used when the maximum selection pressure is exceeded.", new BoolValue(false)) { Hidden = true }); 289 Parameters.Add(new ValueParameter<MultiTerminat ionCriterion>("TerminationCriteria", "The termination criteria which sould be checked.", new MultiTerminationCriterion()));289 Parameters.Add(new ValueParameter<MultiTerminator>("Terminators", "The termination criteria which sould be checked.", new MultiTerminator())); 290 290 291 291 RandomCreator randomCreator = new RandomCreator(); … … 351 351 UpdateAnalyzers(); 352 352 353 maximumGenerationsTerminationCriterion = new ComparisonTerminationCriterion<IntValue>("Generations", new IntValue(50), ComparisonType.GreaterOrEqual) { Name = "MaximumGenerations" };354 maximumEvaluatedSolutionsTerminationCriterion = new ComparisonTerminationCriterion<IntValue>("EvaluatedSolutions", "MaximumEvaluatedSolutions", ComparisonType.GreaterOrEqual) { Name = "MaximumEvaluations" };355 maximumSelectionPressureTerminationCriterion = new ComparisonTerminationCriterion<DoubleValue>("SelectionPressure", "MaximumSelectionPressure", ComparisonType.GreaterOrEqual) { Name = "MaximumSelection Pressure" };356 qualityTerminat ionCriterion = new ComparisonTerminationCriterion<DoubleValue>() { Name = "Maximum/MinimumQuality" };357 executionTimeTerminat ionCriterion = new ExecutionTimeTerminationCriterion(this, TimeSpan.FromMinutes(5)) { Name = "MaximumExecution Time" };358 ParameterizeTerminat ionCriteria();359 UpdateTerminat ionCriteria();353 generationsTerminator = new ComparisonTerminator<IntValue>("Generations", new IntValue(50), ComparisonType.GreaterOrEqual) { Name = "Generations" }; 354 evaluatedSolutionsTerminator = new ComparisonTerminator<IntValue>("EvaluatedSolutions", "MaximumEvaluatedSolutions", ComparisonType.GreaterOrEqual) { Name = "Evaluations" }; 355 selectionPressureTerminator = new ComparisonTerminator<DoubleValue>("SelectionPressure", "MaximumSelectionPressure", ComparisonType.GreaterOrEqual) { Name = "Selection Pressure" }; 356 qualityTerminator = new ComparisonTerminator<DoubleValue>() { Name = "Quality" }; 357 executionTimeTerminator = new ExecutionTimeTerminator(this, TimeSpan.FromMinutes(5)) { Name = "Execution Time" }; 358 ParameterizeTerminators(); 359 UpdateTerminators(); 360 360 361 361 Initialize(); … … 377 377 ParameterizeSelectors(); 378 378 ParameterizeAnalyzers(); 379 ParameterizeTerminat ionCriteria();379 ParameterizeTerminators(); 380 380 ParameterizeIterationBasedOperators(); 381 381 UpdateCrossovers(); 382 382 UpdateMutators(); 383 383 UpdateAnalyzers(); 384 UpdateTerminat ionCriteria();384 UpdateTerminators(); 385 385 Problem.Evaluator.QualityParameter.ActualNameChanged += new EventHandler(Evaluator_QualityParameter_ActualNameChanged); 386 386 base.OnProblemChanged(); … … 407 407 UpdateMutators(); 408 408 UpdateAnalyzers(); 409 UpdateTerminat ionCriteria();409 UpdateTerminators(); 410 410 base.Problem_OperatorsChanged(sender, e); 411 411 } … … 485 485 } 486 486 } 487 private void ParameterizeTerminat ionCriteria() {487 private void ParameterizeTerminators() { 488 488 if (Problem != null) { 489 489 bool maximization = ((BoolValue)Problem.MaximizationParameter.ActualValue).Value; 490 qualityTerminationCriterion.Name = maximization ? "Maximum Quality" : "Minimum Quality"; 491 qualityTerminationCriterion.Comparison = new Comparison(maximization ? ComparisonType.GreaterOrEqual : ComparisonType.LessOrEqual); 492 qualityTerminationCriterion.ValueParameter.ActualName = qualityAnalyzer.CurrentBestQualityParameter.Name; 493 qualityTerminationCriterion.ThresholdParameter.Value = new DoubleValue(maximization ? double.MaxValue : double.MinValue); 490 qualityTerminator.Comparison = new Comparison(maximization ? ComparisonType.GreaterOrEqual : ComparisonType.LessOrEqual); 491 qualityTerminator.ValueParameter.ActualName = qualityAnalyzer.CurrentBestQualityParameter.Name; 492 qualityTerminator.ThresholdParameter.Value = new DoubleValue(maximization ? double.MaxValue : double.MinValue); 494 493 } 495 494 } … … 551 550 Analyzer.Operators.Add(successfulOffspringAnalyzer, successfulOffspringAnalyzer.EnabledByDefault); 552 551 } 553 private void UpdateTerminat ionCriteria() {554 Terminat ionCriteria.Operators.Clear();555 if (Problem != null) { 556 foreach (var terminat ionCriterion in Problem.Operators.OfType<ITerminationCriterion>())557 Terminat ionCriteria.Operators.Add(terminationCriterion);558 } 559 Terminat ionCriteria.Operators.Add(maximumGenerationsTerminationCriterion);560 Terminat ionCriteria.Operators.Add(maximumEvaluatedSolutionsTerminationCriterion);561 Terminat ionCriteria.Operators.Add(maximumSelectionPressureTerminationCriterion);562 Terminat ionCriteria.Operators.Add(qualityTerminationCriterion, checkedState: false);563 Terminat ionCriteria.Operators.Add(executionTimeTerminationCriterion, checkedState: false);552 private void UpdateTerminators() { 553 Terminators.Operators.Clear(); 554 if (Problem != null) { 555 foreach (var terminator in Problem.Operators.OfType<ITerminator>()) 556 Terminators.Operators.Add(terminator); 557 } 558 Terminators.Operators.Add(generationsTerminator); 559 Terminators.Operators.Add(evaluatedSolutionsTerminator); 560 Terminators.Operators.Add(selectionPressureTerminator); 561 Terminators.Operators.Add(qualityTerminator, checkedState: false); 562 Terminators.Operators.Add(executionTimeTerminator, checkedState: false); 564 563 } 565 564 private OffspringSelectionGeneticAlgorithmMainLoop FindMainLoop(IOperator start) { -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/ComparisonTerminator.cs
r12401 r12402 28 28 29 29 namespace HeuristicLab.Termination { 30 [Item("ComparisonTerminat ionCriterion", "An termination criterion which compares two values.")]30 [Item("ComparisonTerminator", "An termination criterion which compares two values.")] 31 31 [StorableClass] 32 public class ComparisonTerminat ionCriterion<T> : ThresholdTerminationCriterion<T> where T : class, IItem, IComparable {32 public class ComparisonTerminator<T> : ThresholdTerminator<T> where T : class, IItem, IComparable { 33 33 public ILookupParameter<T> ValueParameter { 34 34 get { return (ILookupParameter<T>)Parameters["Value"]; } … … 45 45 46 46 [StorableConstructor] 47 protected ComparisonTerminat ionCriterion(bool deserializing) : base(deserializing) { }48 protected ComparisonTerminat ionCriterion(ComparisonTerminationCriterion<T> original, Cloner cloner)47 protected ComparisonTerminator(bool deserializing) : base(deserializing) { } 48 protected ComparisonTerminator(ComparisonTerminator<T> original, Cloner cloner) 49 49 : base(original, cloner) { } 50 50 public override IDeepCloneable Clone(Cloner cloner) { 51 return new ComparisonTerminat ionCriterion<T>(this, cloner);51 return new ComparisonTerminator<T>(this, cloner); 52 52 } 53 public ComparisonTerminat ionCriterion()53 public ComparisonTerminator() 54 54 : base() { 55 55 Parameters.Add(new LookupParameter<T>("Value", "The left side value of the comparison.")); 56 56 Parameters.Add(new ValueParameter<Comparison>("Comparison", "The type of comparison.", new Comparison(ComparisonType.GreaterOrEqual)) { Hidden = true }); 57 57 } 58 public ComparisonTerminat ionCriterion(string leftSideActualName, string rightSideActualName, ComparisonType comparison = ComparisonType.GreaterOrEqual)58 public ComparisonTerminator(string leftSideActualName, string rightSideActualName, ComparisonType comparison = ComparisonType.GreaterOrEqual) 59 59 : this() { 60 60 ValueParameter.ActualName = leftSideActualName; … … 62 62 Comparison.Value = comparison; 63 63 } 64 public ComparisonTerminat ionCriterion(string leftSideActualName, T rightSideValue, ComparisonType comparison = ComparisonType.GreaterOrEqual)64 public ComparisonTerminator(string leftSideActualName, T rightSideValue, ComparisonType comparison = ComparisonType.GreaterOrEqual) 65 65 : this() { 66 66 ValueParameter.ActualName = leftSideActualName; … … 91 91 } 92 92 } 93 94 95 93 } 96 94 } -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/ExecutionTimeTerminator.cs
r12401 r12402 27 27 28 28 namespace HeuristicLab.Termination { 29 [Item("ExecutionTimeTerminat ionCriterion", "A termination criterion based on execution time of an algorithm.")]29 [Item("ExecutionTimeTerminator", "A termination criterion based on execution time of an algorithm.")] 30 30 [StorableClass] 31 public class ExecutionTimeTerminat ionCriterion : ThresholdTerminationCriterion<TimeSpanValue> {31 public class ExecutionTimeTerminator : ThresholdTerminator<TimeSpanValue> { 32 32 33 33 [Storable] … … 35 35 36 36 [StorableConstructor] 37 protected ExecutionTimeTerminat ionCriterion(bool deserializing) : base(deserializing) { }38 protected ExecutionTimeTerminat ionCriterion(ExecutionTimeTerminationCriterionoriginal, Cloner cloner)37 protected ExecutionTimeTerminator(bool deserializing) : base(deserializing) { } 38 protected ExecutionTimeTerminator(ExecutionTimeTerminator original, Cloner cloner) 39 39 : base(original, cloner) { 40 40 executable = cloner.Clone(executable); 41 41 } 42 42 public override IDeepCloneable Clone(Cloner cloner) { 43 return new ExecutionTimeTerminat ionCriterion(this, cloner);43 return new ExecutionTimeTerminator(this, cloner); 44 44 } 45 public ExecutionTimeTerminat ionCriterion(IExecutable executable)45 public ExecutionTimeTerminator(IExecutable executable) 46 46 : this(executable, new TimeSpan(0, 10, 0)) { } 47 public ExecutionTimeTerminat ionCriterion(IExecutable executable, TimeSpan maximumExecutionTime) {47 public ExecutionTimeTerminator(IExecutable executable, TimeSpan maximumExecutionTime) { 48 48 this.executable = executable; 49 49 ThresholdParameter.Value = new TimeSpanValue(maximumExecutionTime); 50 50 51 Name = " MaximumExecution Time";51 Name = "Execution Time"; 52 52 } 53 53 -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/HeuristicLab.Termination-3.3.csproj
r12368 r12402 141 141 </ItemGroup> 142 142 <ItemGroup> 143 <Compile Include="ThresholdTerminat ionCriterion.cs" />144 <Compile Include="Views\ThresholdTerminat ionCriterionView.cs">143 <Compile Include="ThresholdTerminator.cs" /> 144 <Compile Include="Views\ThresholdTerminatorView.cs"> 145 145 <SubType>UserControl</SubType> 146 146 </Compile> 147 <Compile Include="Views\ThresholdTerminat ionCriterionView.Designer.cs">148 <DependentUpon>ThresholdTerminat ionCriterionView.cs</DependentUpon>147 <Compile Include="Views\ThresholdTerminatorView.Designer.cs"> 148 <DependentUpon>ThresholdTerminatorView.cs</DependentUpon> 149 149 </Compile> 150 <Compile Include="ITerminat ionCriterion.cs" />151 <Compile Include="ComparisonTerminat ionCriterion.cs" />152 <Compile Include="MultiTerminat ionCriterion.cs" />153 <Compile Include="ExecutionTimeTerminat ionCriterion.cs" />154 <Compile Include="Terminat ionCriterion.cs" />150 <Compile Include="ITerminator.cs" /> 151 <Compile Include="ComparisonTerminator.cs" /> 152 <Compile Include="MultiTerminator.cs" /> 153 <Compile Include="ExecutionTimeTerminator.cs" /> 154 <Compile Include="Terminator.cs" /> 155 155 <Compile Include="TerminationOperator.cs" /> 156 156 <None Include="HeuristicLab.snk" /> -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/ITerminator.cs
r12401 r12402 26 26 /// An interface which represents an operator for checking a termination criterion. 27 27 /// </summary> 28 public interface ITerminat ionCriterion: IOperator {28 public interface ITerminator : IOperator { 29 29 } 30 30 } -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/MultiTerminator.cs
r12401 r12402 31 31 32 32 namespace HeuristicLab.Termination { 33 [Item("MultiTerminat ionCriterion", "A multi operator, containing termination criteria.")]33 [Item("MultiTerminator", "A multi operator, containing termination criteria.")] 34 34 [StorableClass] 35 public sealed class MultiTerminat ionCriterion : CheckedMultiOperator<ITerminationCriterion>, ITerminationCriterion{35 public sealed class MultiTerminator : CheckedMultiOperator<ITerminator>, ITerminator { 36 36 public static new Image StaticItemImage { 37 37 get { return HeuristicLab.Common.Resources.VSImageLibrary.Object; } … … 49 49 50 50 [StorableConstructor] 51 private MultiTerminat ionCriterion(bool deserializing) : base(deserializing) { }52 private MultiTerminat ionCriterion(MultiTerminationCriterionoriginal, Cloner cloner) : base(original, cloner) { }53 public override IDeepCloneable Clone(Cloner cloner) { return new MultiTerminat ionCriterion(this, cloner); }51 private MultiTerminator(bool deserializing) : base(deserializing) { } 52 private MultiTerminator(MultiTerminator original, Cloner cloner) : base(original, cloner) { } 53 public override IDeepCloneable Clone(Cloner cloner) { return new MultiTerminator(this, cloner); } 54 54 55 public MultiTerminat ionCriterion()55 public MultiTerminator() 56 56 : base() { 57 57 Parameters.Add(new LookupParameter<BoolValue>("Terminate", "The parameter which will be set to determine if execution should be terminated or should continue.")); -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/Plugin.cs.frame
r12301 r12402 26 26 /// Plugin class for HeuristicLab.Termination plugin. 27 27 /// </summary> 28 [Plugin("HeuristicLab.Termination", "Provides a generic TerminationOperator as well as different generic TerminationCriteria.", "3.3.11.$WCREV$")]28 [Plugin("HeuristicLab.Termination", "Provides the TerminationOperator as well as different generic Terminators.", "3.3.11.$WCREV$")] 29 29 [PluginFile("HeuristicLab.Termination-3.3.dll", PluginFileType.Assembly)] 30 30 [PluginDependency("HeuristicLab.Collections", "3.3")] -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/Properties/AssemblyInfo.cs.frame
r12301 r12402 27 27 // associated with an assembly. 28 28 [assembly: AssemblyTitle("HeuristicLab.Termination")] 29 [assembly: AssemblyDescription("HeuristicLab Termination criteria")]29 [assembly: AssemblyDescription("HeuristicLab Termination")] 30 30 [assembly: AssemblyConfiguration("")] 31 31 [assembly: AssemblyCompany("")] -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/TerminationOperator.cs
r12355 r12402 31 31 [StorableClass] 32 32 public sealed class TerminationOperator : InstrumentedOperator { 33 public ILookupParameter<ITerminat ionCriterion> TerminationCriteriaParameter {34 get { return (ILookupParameter<ITerminat ionCriterion>)Parameters["TerminationCriteria"]; }33 public ILookupParameter<ITerminator> TerminatorParameter { 34 get { return (ILookupParameter<ITerminator>)Parameters["Terminator"]; } 35 35 } 36 36 public ILookupParameter<BoolValue> TerminateParameter { … … 64 64 public TerminationOperator() 65 65 : base() { 66 Parameters.Add(new LookupParameter<ITerminat ionCriterion>("TerminationCriteria", "The termination criteria which sould be checked."));66 Parameters.Add(new LookupParameter<ITerminator>("Terminator", "The termination criteria which sould be checked.", "Terminators")); 67 67 Parameters.Add(new LookupParameter<BoolValue>("Terminate", "The parameter which will be set to determine if execution should be terminated or schould continue.")); 68 68 Parameters.Add(new OperatorParameter("ContinueBranch", "The operator which is executed if no termination criteria has met.")); … … 74 74 75 75 var placeholder = new Placeholder() { Name = "Check termination criteria (Placeholder)" }; 76 placeholder.OperatorParameter.ActualName = Terminat ionCriteriaParameter.Name;76 placeholder.OperatorParameter.ActualName = TerminatorParameter.Name; 77 77 78 78 BeforeExecutionOperators.Add(assigner); -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/Terminator.cs
r12401 r12402 28 28 29 29 namespace HeuristicLab.Termination { 30 [Item("Terminat ionCriterion", "A base class for all termination criteria.")]30 [Item("Terminator", "A base class for all termination criteria.")] 31 31 [StorableClass] 32 public abstract class Terminat ionCriterion : InstrumentedOperator, ITerminationCriterion{32 public abstract class Terminator : InstrumentedOperator, ITerminator { 33 33 public ILookupParameter<BoolValue> TerminateParameter { 34 34 get { return (ILookupParameter<BoolValue>)Parameters["Terminate"]; } … … 36 36 37 37 [StorableConstructor] 38 protected Terminat ionCriterion(bool deserializing) : base(deserializing) { }39 protected Terminat ionCriterion(TerminationCriterionoriginal, Cloner cloner) : base(original, cloner) { }38 protected Terminator(bool deserializing) : base(deserializing) { } 39 protected Terminator(Terminator original, Cloner cloner) : base(original, cloner) { } 40 40 41 protected Terminat ionCriterion()41 protected Terminator() 42 42 : base() { 43 43 Parameters.Add(new LookupParameter<BoolValue>("Terminate", "The parameter which will be set to determine if execution should be terminated or should continue.")); -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/ThresholdTerminator.cs
r12401 r12402 27 27 28 28 namespace HeuristicLab.Termination { 29 [Item("ThresholdTerminat ionCriterion", "Base class for all termination criteria which specifies some threshold.")]29 [Item("ThresholdTerminator", "Base class for all termination criteria which specifies some threshold.")] 30 30 [StorableClass] 31 public abstract class ThresholdTerminat ionCriterion<T> : TerminationCriterionwhere T : class, IItem {31 public abstract class ThresholdTerminator<T> : Terminator where T : class, IItem { 32 32 public IValueLookupParameter<T> ThresholdParameter { 33 33 get { return (IValueLookupParameter<T>)Parameters["Threshold"]; } … … 35 35 36 36 [StorableConstructor] 37 protected ThresholdTerminat ionCriterion(bool deserializing) : base(deserializing) { }37 protected ThresholdTerminator(bool deserializing) : base(deserializing) { } 38 38 [StorableHook(HookType.AfterDeserialization)] 39 39 private void AfterDeserialization() { 40 40 Initialize(); 41 41 } 42 protected ThresholdTerminat ionCriterion(ThresholdTerminationCriterion<T> original, Cloner cloner)42 protected ThresholdTerminator(ThresholdTerminator<T> original, Cloner cloner) 43 43 : base(original, cloner) { 44 44 Initialize(); 45 45 } 46 protected ThresholdTerminat ionCriterion()46 protected ThresholdTerminator() 47 47 : base() { 48 48 Parameters.Add(new ValueLookupParameter<T>("Threshold", "The limit of the termiation criterion.")); -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/Views/ThresholdTerminatorView.Designer.cs
r12401 r12402 21 21 22 22 namespace HeuristicLab.Termination.Views { 23 partial class ThresholdTerminat ionCriterionView<T> {23 partial class ThresholdTerminatorView<T> { 24 24 /// <summary> 25 25 /// Required designer variable. … … 62 62 this.viewHost.ViewType = null; 63 63 // 64 // ThresholdTerminat ionCriterionView64 // ThresholdTerminatorView 65 65 // 66 66 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 67 67 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 68 68 this.Controls.Add(this.viewHost); 69 this.Name = "ThresholdTerminat ionCriterionView";69 this.Name = "ThresholdTerminatorView"; 70 70 this.ResumeLayout(false); 71 71 -
branches/TerminationCriteria/HeuristicLab.Termination/3.3/Views/ThresholdTerminatorView.cs
r12401 r12402 27 27 namespace HeuristicLab.Termination.Views { 28 28 29 [View("ThresholdTerminat ionCriterionView")]30 [Content(typeof(ThresholdTerminat ionCriterion<>), true)]31 public partial class ThresholdTerminat ionCriterionView<T> : ItemView where T : class, IItem, IComparable {29 [View("ThresholdTerminator View")] 30 [Content(typeof(ThresholdTerminator<>), true)] 31 public partial class ThresholdTerminatorView<T> : ItemView where T : class, IItem, IComparable { 32 32 33 public new ThresholdTerminat ionCriterion<T> Content {34 get { return (ThresholdTerminat ionCriterion<T>)base.Content; }33 public new ThresholdTerminator<T> Content { 34 get { return (ThresholdTerminator<T>)base.Content; } 35 35 set { base.Content = value; } 36 36 } 37 37 38 public ThresholdTerminat ionCriterionView() {38 public ThresholdTerminatorView() { 39 39 InitializeComponent(); 40 40 }
Note: See TracChangeset
for help on using the changeset viewer.