Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
07/27/10 17:05:00 (14 years ago)
Author:
mkommend
Message:

Added correct handling of adding and removing runs in experiments and batch runs (ticket #1111).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Optimization/3.3/Experiment.cs

    r4110 r4115  
    240240    }
    241241    private void Optimizers_CollectionReset(object sender, CollectionItemsChangedEventArgs<IndexedItem<IOptimizer>> e) {
    242       foreach (IndexedItem<IOptimizer> item in e.OldItems) {
    243         DeregisterOptimizerEvents(item.Value);
    244       }
     242      foreach (IndexedItem<IOptimizer> item in e.OldItems)
     243        RemoveOptimizer(item.Value);
    245244      foreach (IndexedItem<IOptimizer> item in e.Items)
    246245        AddOptimizer(item.Value);
     
    251250    }
    252251    private void Optimizers_ItemsRemoved(object sender, CollectionItemsChangedEventArgs<IndexedItem<IOptimizer>> e) {
    253       foreach (IndexedItem<IOptimizer> item in e.Items) {
    254         DeregisterOptimizerEvents(item.Value);
    255       }
     252      foreach (IndexedItem<IOptimizer> item in e.Items)
     253        RemoveOptimizer(item.Value);
    256254    }
    257255    private void Optimizers_ItemsReplaced(object sender, CollectionItemsChangedEventArgs<IndexedItem<IOptimizer>> e) {
    258       foreach (IndexedItem<IOptimizer> item in e.OldItems) {
    259         DeregisterOptimizerEvents(item.Value);
    260       }
     256      foreach (IndexedItem<IOptimizer> item in e.OldItems)
     257        RemoveOptimizer(item.Value);
    261258      foreach (IndexedItem<IOptimizer> item in e.Items)
    262259        AddOptimizer(item.Value);
     
    266263      Runs.AddRange(optimizer.Runs);
    267264      optimizer.Prepare();
     265    }
     266    private void RemoveOptimizer(IOptimizer optimizer) {
     267      DeregisterOptimizerEvents(optimizer);
     268      Runs.RemoveRange(optimizer.Runs);
    268269    }
    269270
Note: See TracChangeset for help on using the changeset viewer.