}
return seq;
}
+
+ /* (non-Javadoc)
+ * @see jalview.datamodel.SequenceI#createDatasetSequence()
+ */
+ public SequenceI createDatasetSequence()
+ {
+ if (datasetSequence==null)
+ {
+ datasetSequence = new Sequence(getName(),
+ AlignSeq.extractGaps(
+ jalview.util.Comparison.GapChars,
+ getSequenceAsString()),
+ getStart(),
+ getEnd());
+ datasetSequence.setSequenceFeatures(getSequenceFeatures());
+ datasetSequence.setDescription(getDescription());
+ setSequenceFeatures(null);
+ // move database references onto dataset sequence
+ datasetSequence.setDBRef(getDBRef());
+ setDBRef(null);
+ }
+ return datasetSequence;
+ }
/* (non-Javadoc)
* @see jalview.datamodel.SequenceI#setAlignmentAnnotation(AlignmmentAnnotation[] annotations)
*/
* @return null or array of annotations.
*/
public AlignmentAnnotation[] getAnnotation(String label);
+ /**
+ * create a new dataset sequence (if necessary)
+ * for this sequence and sets this sequence to refer to it.
+ * This call will move any features or references on the sequence onto the dataset.
+ * @return dataset sequence for this sequence
+ */
+ public SequenceI createDatasetSequence();
}