1 package compbio.data.sequence;
\r
3 import java.io.BufferedWriter;
\r
4 import java.io.IOException;
\r
5 import java.io.OutputStream;
\r
6 import java.io.OutputStreamWriter;
\r
7 import java.util.HashSet;
\r
8 import java.util.List;
\r
10 public class ScoreManager {
\r
12 private List<ScoreHolder> seqScores;
\r
14 private ScoreManager() {
\r
15 // Default JAXB constructor
\r
18 public int getNumberOfSeq() {
\r
19 return seqScores.size();
\r
22 public ScoreHolder getFirstSequenceScores() {
\r
23 if (seqScores.isEmpty())
\r
25 return seqScores.get(0);
\r
28 public ScoreHolder getAnnotationForSequence(String seqId) {
\r
29 for (ScoreHolder sch : seqScores) {
\r
30 if (sch.id.equals(seqId)) {
\r
37 public void writeOut(OutputStream outStream) throws IOException {
\r
38 BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(
\r
40 for (ScoreHolder oneSeqScores : seqScores) {
\r
41 oneSeqScores.writeOut(outStream);
\r
46 public static class ScoreHolder {
\r
49 public HashSet<Score> scores;
\r
51 public void writeOut(OutputStream outStream) throws IOException {
\r
52 BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(
\r
54 writer.write(">" + id + "\n");
\r
55 Score.write(scores, outStream);
\r
58 public Score getFirstScore() {
\r
59 if (scores.isEmpty())
\r
61 return scores.iterator().next();
\r
64 public Score getScoreByMethod(Enum<?> method) {
\r
65 for (Score sc : scores) {
\r
66 if (method == sc.getMethod()) {
\r
73 public int getNumberOfScores() {
\r
74 return scores.size();
\r