/** * */ package de.ugoe.cs.autoquest.tasktrees.alignment.matrix; import java.util.HashSet; import java.util.LinkedList; import de.ugoe.cs.autoquest.tasktrees.treeifc.ITask; /** * @author Ralph Krimmel * */ public class NearbySubstitutionMatrix implements SubstitutionMatrix { private final int[] input1; private final int[] input2; private final int range; public NearbySubstitutionMatrix(int[] input1, int[] input2, int range) { this.input1 = input1; this.input2 = input2; this.range = range; } @Override public void generate(HashSet uniqueTasks) { } @Override public float getGapPenalty() { return -range - 1; } /* * (non-Javadoc) * * @see * de.ugoe.cs.autoquest.plugin.alignment.SubstitutionMatrix#getDistance(int, * int) */ @Override public float getScore(int pos1, int pos2) { final int difference = Math.abs(input1[pos1] - input2[pos2]); if (difference < range) { return range - difference; } else { return -range; } } @Override public void update(LinkedList newlyGeneratedTasks) { } }