git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
JAL-1894 update year/version in copyright
[jalview.git]
/
src
/
jalview
/
datamodel
/
Alignment.java
diff --git
a/src/jalview/datamodel/Alignment.java
b/src/jalview/datamodel/Alignment.java
index
482df7f
..
ef961d0
100755
(executable)
--- a/
src/jalview/datamodel/Alignment.java
+++ b/
src/jalview/datamodel/Alignment.java
@@
-1,6
+1,6
@@
/*
/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9.0b1)
+ * Copyright (C) 2015 The Jalview Authors
*
* This file is part of Jalview.
*
*
* This file is part of Jalview.
*
@@
-147,7
+147,9
@@
public class Alignment implements AlignmentI
*/
public static AlignmentI createAlignment(CigarArray compactAlignment)
{
*/
public static AlignmentI createAlignment(CigarArray compactAlignment)
{
- throw new Error(MessageManager.getString("error.alignment_cigararray_not_implemented"));
+ throw new Error(
+ MessageManager
+ .getString("error.alignment_cigararray_not_implemented"));
// this(compactAlignment.refCigars);
}
// this(compactAlignment.refCigars);
}
@@
-236,8
+238,7
@@
public class Alignment implements AlignmentI
}
if (sequences == null)
{
}
if (sequences == null)
{
- initAlignment(new SequenceI[]
- { snew });
+ initAlignment(new SequenceI[] { snew });
}
else
{
}
else
{
@@
-1588,38
+1589,37
@@
public class Alignment implements AlignmentI
}
}
}
}
+ private SequenceI seqrep = null;
- private SequenceI seqrep=null;
-
- /**
- *
- * @return the representative sequence for this group
- */
- public SequenceI getSeqrep()
- {
- return seqrep;
- }
+ /**
+ *
+ * @return the representative sequence for this group
+ */
+ public SequenceI getSeqrep()
+ {
+ return seqrep;
+ }
- /**
- * set the representative sequence for this group. Note - this affects the
- * interpretation of the Hidereps attribute.
- *
- * @param seqrep
- * the seqrep to set (null means no sequence representative)
- */
- public void setSeqrep(SequenceI seqrep)
- {
- this.seqrep = seqrep;
- }
+ /**
+ * set the representative sequence for this group. Note - this affects the
+ * interpretation of the Hidereps attribute.
+ *
+ * @param seqrep
+ * the seqrep to set (null means no sequence representative)
+ */
+ public void setSeqrep(SequenceI seqrep)
+ {
+ this.seqrep = seqrep;
+ }
- /**
- *
- * @return true if group has a sequence representative
- */
- public boolean hasSeqrep()
- {
- return seqrep != null;
- }
+ /**
+ *
+ * @return true if group has a sequence representative
+ */
+ public boolean hasSeqrep()
+ {
+ return seqrep != null;
+ }
@Override
public int getEndRes()
@Override
public int getEndRes()
@@
-1664,8
+1664,8
@@
public class Alignment implements AlignmentI
* identically. If this is nucleotide and the other is protein, make 3 gaps
* for each gap in the protein sequences. If this is protein and the other is
* nucleotide, insert a gap for each 3 gaps (or part thereof) between
* identically. If this is nucleotide and the other is protein, make 3 gaps
* for each gap in the protein sequences. If this is protein and the other is
* nucleotide, insert a gap for each 3 gaps (or part thereof) between
- * nucleotide bases. Does nothing if alignment of protein from cDNA is
- * requested (not yet implemented).
+ * nucleotide bases. If this is protein and the other is nucleotide, gaps
+ * protein to match the relative ordering of codons in the nucleotide.
*
* Parameters control whether gaps in exon (mapped) and intron (unmapped)
* regions are preserved. Gaps that connect introns to exons are treated
*
* Parameters control whether gaps in exon (mapped) and intron (unmapped)
* regions are preserved. Gaps that connect introns to exons are treated
@@
-1678,7
+1678,7
@@
public class Alignment implements AlignmentI
* @param preserveUnmappedGaps
* if true, gaps within and between unmapped codons are preserved
*/
* @param preserveUnmappedGaps
* if true, gaps within and between unmapped codons are preserved
*/
-// @Override
+ // @Override
public int alignAs(AlignmentI al, boolean preserveMappedGaps,
boolean preserveUnmappedGaps)
{
public int alignAs(AlignmentI al, boolean preserveMappedGaps,
boolean preserveUnmappedGaps)
{
@@
-1693,17
+1693,19
@@
public class Alignment implements AlignmentI
char thisGapChar = this.getGapCharacter();
String gap = thisIsNucleotide && thatIsProtein ? String
char thisGapChar = this.getGapCharacter();
String gap = thisIsNucleotide && thatIsProtein ? String
- .valueOf(new char[]
- { thisGapChar, thisGapChar, thisGapChar }) : String
- .valueOf(thisGapChar);
+ .valueOf(new char[] { thisGapChar, thisGapChar, thisGapChar })
+ : String.valueOf(thisGapChar);
+
+ // TODO handle intron regions? Needs a 'holistic' alignment of dna,
+ // not just sequence by sequence. But how to 'gap' intron regions?
/*
* Get mappings from 'that' alignment's sequences to this.
*/
for (SequenceI alignTo : getSequences())
{
/*
* Get mappings from 'that' alignment's sequences to this.
*/
for (SequenceI alignTo : getSequences())
{
- count += AlignmentUtils.alignSequenceAs(alignTo, al, gap, preserveMappedGaps,
- preserveUnmappedGaps) ? 1 : 0;
+ count += AlignmentUtils.alignSequenceAs(alignTo, al, gap,
+ preserveMappedGaps, preserveUnmappedGaps) ? 1 : 0;
}
return count;
}
}
return count;
}
@@
-1731,4
+1733,19
@@
public class Alignment implements AlignmentI
}
return names;
}
}
return names;
}
+
+ @Override
+ public boolean hasValidSequence()
+ {
+ boolean hasValidSeq = false;
+ for (SequenceI seq : getSequences())
+ {
+ if ((seq.getEnd() - seq.getStart()) > 0)
+ {
+ hasValidSeq = true;
+ break;
+ }
+ }
+ return hasValidSeq;
+ }
}
}