- final String command = HMMERCommands.HMMBUILD + HMMERCommands.NAME
- + af.getName() + HMMERCommands.SPACE
- + HMMERCommands.JALVIEWDIRECTORY + HMMERCommands.HMMBUFFER
- + HMMERCommands.JALVIEWDIRECTORY + HMMERCommands.ALIGNMENTBUFFER;
- HMMERCommands.runCommand(command);
+ HMMFile file = new HMMFile(
+ new FileParse(hmmTemp.getAbsolutePath(), DataSourceType.FILE));
+ SequenceI[] seqs = file.getSeqsAsArray();
+ SequenceI seq = seqs[0];
+ seq.createDatasetSequence();
+ if (group != null)
+ {
+ seq.insertCharAt(0, group.getStartRes(), '-');
+ seq.insertCharAt(group.getEndRes() + 1,
+ alignment.getWidth() - group.getEndRes() - 1, '-');
+ seq.updateHMMMapping();
+ SequenceI topSeq = group.getSequencesInOrder(alignment)[0];
+ int topIndex = alignment.findIndex(topSeq);
+ alignment.insertSequenceAt(topIndex, seq);
+ group.setSeqrep(seq);
+ group.addSequence(seq, false);
+ }
+ else
+ {
+ alignment.insertSequenceAt(0, seq);
+ }
+
+ if (viewport != null)
+ {
+ viewport.alignmentChanged(viewport.getAlignPanel());
+ viewport.getAlignPanel().adjustAnnotationHeight();
+ viewport.updateSequenceIdColours();
+
+ if (viewport.getAlignPanel().alignFrame.getSelectedHMM() == null)
+ {
+ viewport.getAlignPanel().alignFrame.setSelectedHMMSequence(seq);
+ }
+ }
+ hmmTemp.delete();
+ stoTemp.delete();