public TagAssociation(PairedTag sourceTag, PairedTag targetTag, Core.EditDistance.EditOperation op) { SourceTag = sourceTag; TargetTag = targetTag; Operation = op; }
public void Add(PairedTag srcTag, PairedTag trgTag, Core.EditDistance.EditOperation op) { System.Diagnostics.Debug.Assert(srcTag != null || trgTag != null); if (op == Core.EditDistance.EditOperation.Undefined) { if (srcTag == null) { op = Core.EditDistance.EditOperation.Insert; } else if (trgTag == null) { op = Core.EditDistance.EditOperation.Delete; } else { op = Core.EditDistance.EditOperation.Change; } } int idx = _Associations.Count; _Associations.Add(new TagAssociation(srcTag, trgTag, op)); if (srcTag != null) { System.Diagnostics.Debug.Assert(srcTag.Start < srcTag.End); _SrcPositionIdx.Add(srcTag.Start, idx); _SrcPositionIdx.Add(srcTag.End, idx); } if (trgTag != null) { System.Diagnostics.Debug.Assert(trgTag.Start < trgTag.End); _TrgPositionIdx.Add(trgTag.Start, idx); _TrgPositionIdx.Add(trgTag.End, idx); } }
public MatrixItem(double score, Core.EditDistance.EditOperation op, double similarity) { Score = score; Operation = op; Similarity = similarity; }