Changeset 10755 for branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Tracking/SymbolicDataAnalysisExpressionAfterManipulatorOperator.cs
- Timestamp:
- 04/16/14 17:15:33 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Tracking/SymbolicDataAnalysisExpressionAfterManipulatorOperator.cs
r10677 r10755 7 7 8 8 namespace HeuristicLab.Problems.DataAnalysis.Symbolic { 9 public class SymbolicDataAnalysisExpressionAfterManipulatorOperator : BeforeManipulatorOperator<ISymbolicExpressionTree> {9 public class SymbolicDataAnalysisExpressionAfterManipulatorOperator : AfterManipulatorOperator<ISymbolicExpressionTree> { 10 10 private readonly SymbolicExpressionTreeNodeSimilarityComparer comparer; 11 11 … … 19 19 20 20 public override IOperation Apply() { 21 var vChild = (IGenealogyGraphNode<ISymbolicExpressionTree>)GenealogyGraph[ChildParameter.ActualValue] .First();21 var vChild = (IGenealogyGraphNode<ISymbolicExpressionTree>)GenealogyGraph[ChildParameter.ActualValue]; 22 22 var nodesBefore = (List<ISymbolicExpressionTreeNode>)vChild.InArcs.First().Data; 23 var nodesAfter = ChildParameter.ActualValue.IterateNodes Breadth().ToList();23 var nodesAfter = ChildParameter.ActualValue.IterateNodesPrefix().ToList(); 24 24 IFragment<ISymbolicExpressionTreeNode> fragment = null; 25 25 26 26 for (int i = 0; i < Math.Min(nodesAfter.Count, nodesBefore.Count); ++i) { 27 if (comparer.Equals(nodesAfter[i], nodesBefore[i])) continue; 27 var a = nodesAfter[i]; 28 var b = nodesBefore[i]; 29 if (ReferenceEquals(a, b) && comparer.Equals(a, b)) continue; 28 30 fragment = new Fragment<ISymbolicExpressionTreeNode> { 29 Root = nodesAfter[i],30 Index = i31 Root = a, 32 Index1 = i 31 33 }; 32 34 }
Note: See TracChangeset
for help on using the changeset viewer.