public virtual void ExtendWith(int tag) { BeamBestSequenceFinder.TagSeq.TagList last = info; info = new BeamBestSequenceFinder.TagSeq.TagList(); info.tag = tag; info.last = last; size++; }
public virtual int[] Tags() { int[] t = new int[Size()]; int i = Size() - 1; for (BeamBestSequenceFinder.TagSeq.TagList tl = info; tl != null; tl = tl.last) { t[i] = tl.tag; i--; } return(t); }
public virtual int[] TmpTags(int count, int s) { if (tmp == null || tmp.Length < s) { //tmp = new int[1024*128]; tmp = new int[s]; } BeamBestSequenceFinder.TagSeq.TagList tl = info; int i = Size() - 1; while (tl != null && count >= 0) { tmp[i] = tl.tag; i--; count--; tl = tl.last; } return(tmp); }