Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
02/13/10 04:37:49 (14 years ago)
Author:
swagner
Message:

Operator architecture refactoring (#95)

  • implemented reviewers' comments
  • added additional plugins HeuristicLab.Evolutionary, HeuristicLab.Permutation, HeuristicLab.Selection, and HeuristicLab.Routing.TSP
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Core/3.3/OperatorGraph.cs

    r2756 r2790  
    11#region License Information
    22/* HeuristicLab
    3  * Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
    44 *
    55 * This file is part of HeuristicLab.
     
    141141        operators.ItemsRemoved += new CollectionItemsChangedEventHandler<IOperator>(Operators_ItemsRemoved);
    142142        operators.CollectionReset += new CollectionItemsChangedEventHandler<IOperator>(Operators_CollectionReset);
     143        foreach (IOperator op in operators) {
     144          RegisterOperatorEvents(op);
     145          foreach (IParameter param in op.Parameters) {
     146            IValueParameter<IOperator> opParam = param as IValueParameter<IOperator>;
     147            if (opParam != null) RegisterOperatorParameterEvents(opParam);
     148          }
     149        }
    143150      }
    144151    }
    145152    private void DeregisterOperatorsEvents() {
    146153      if (operators != null) {
     154        foreach (IOperator op in operators) {
     155          foreach (IParameter param in op.Parameters) {
     156            IValueParameter<IOperator> opParam = param as IValueParameter<IOperator>;
     157            if (opParam != null) DeregisterOperatorParameterEvents(opParam);
     158          }
     159          DeregisterOperatorEvents(op);
     160        }
    147161        operators.Changed -= new ChangedEventHandler(Operators_Changed);
    148162        operators.ItemsAdded -= new CollectionItemsChangedEventHandler<IOperator>(Operators_ItemsAdded);
Note: See TracChangeset for help on using the changeset viewer.