import java.io.File;
import java.io.IOException;
+import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
inputAlignmentTemp.deleteOnExit();
inputTableTemp = File.createTempFile("buffer", ".sto");
inputTableTemp.deleteOnExit();
- databaseFile = new File("D:/Thomas/uniref50.fasta");
}
/**
*/
private boolean runCommand() throws IOException, InterruptedException
{
+ Boolean dbFound = false;
+ String dbPath = "";
File file = new File(cmds.HMMERFOLDER + "/hmmsearch");
if (!file.canExecute())
{
break;
case "Trim Non-Matching Termini":
trim = true;
-
+ break;
+ case "Database":
+ dbFound = true;
+ dbPath = arg.getValue();
+ if (!MessageManager.getString("label.this_alignment")
+ .equals(dbPath))
+ {
+ databaseFile = new File(dbPath);
+ }
}
-
}
}
+ if (dbFound == false || MessageManager.getString("label.this_alignment")
+ .equals(dbPath))
+ {
+ AlignmentI alignment = af.getViewport().getAlignment();
+ AlignmentI copy = new Alignment(alignment);
+ copy.getHMMConsensusSequences(true);
+ StockholmFile stoFile = new StockholmFile(copy);
+ stoFile.setSeqs(copy.getSequencesArray());
+ String alignmentString = stoFile.print();
+ databaseFile = File.createTempFile("database", ".sto");
+ databaseFile.deleteOnExit();
+ PrintWriter writer = new PrintWriter(databaseFile);
+ writer.print(alignmentString);
+ writer.close();
+ }
+
command += hmmTemp.getAbsolutePath() + cmds.SPACE
+ databaseFile.getAbsolutePath();
return cmds.runCommand(command);
AlignmentI alignment = new Alignment(hmmAndSeqs);
AlignFrame frame = new AlignFrame(alignment, 1, 1);
frame.setSelectedHMMSequence(hmmSeq);
- frame.getViewport().initInformation();
List<ArgumentI> alignArgs = new ArrayList<>();
if (trim)
{