final case class BlockSet(blocks: List[Block]) extends Region with Product with Serializable
A collection of non-overlapping Blocks on the same chromosome with the same Orientation
A BlockSet can represent the structure of, e.g., a spliced RNA transcript.
A BlockSet must have at least two Blocks. For Regions with one Block, use a Block instead. The list of Blocks passed to the constructor must be non-overlapping and on the same chromosome, and have the same Orientation. They must be in ascending order of chromosome position.
- blocks
Nonempty list of Blocks
- Alphabetic
- By Inheritance
- BlockSet
- Serializable
- Serializable
- Product
- Equals
- Region
- Ordered
- Comparable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
<(that: Region): Boolean
- Definition Classes
- Ordered
-
def
<=(that: Region): Boolean
- Definition Classes
- Ordered
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
>(that: Region): Boolean
- Definition Classes
- Ordered
-
def
>=(that: Region): Boolean
- Definition Classes
- Ordered
-
def
addBlock(block: Block): Region
Returns a merged Region representing this plus an additional Block.
Returns a merged Region representing this plus an additional Block.
The new Block is merged into this Region as in the Region.union method.
If this and the new Block have incompatible Orientations or are on different chromosomes, an exception is thrown.
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- val blocks: List[Block]
-
def
chr: String
Returns the name of the chromosome on which this Region is located.
-
def
chrPos(relativePos: Int): Int
Returns the position in chromosome coordinates corresponding to a relative position along this Region.
Returns the position in chromosome coordinates corresponding to a relative position along this Region.
The requested relative position counts with respect to the "beginning" or "5-prime end" of this Region. It counts along the Blocks only, ignoring intervening areas ("introns").
For example, if this Region has Orientation Plus, the relative position zero would map to the start position in chromosome coordinates by this method, and the relative position Region.size minus one would map to the last position (the end position minus one) in chromosome coordinates. If this Region has Orientation Minus, position zero would map to the last position of the Region (the end position minus one) by this method, and Region.size minus one would map to the start position.
This Region must have Orientation Plus or Minus. The requested relative position must be between zero (inclusive) and Region.size (exclusive). Otherwise, an exception is thrown.
- relativePos
Zero-based relative position with respect to this Region
- returns
The zero-based position in chromosome coordinates
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
compare(that: Region): Int
Returns the result of comparing this with another Region.
Returns the result of comparing this with another Region.
If other Region is Empty, return a negative integer.
If other Region is a Block, return -1 times the reverse comparison as in Block.compare.
If other Region is a BlockSet, first compare spans as if they were single blocks as in Block.compare. Next compare number of blocks. If the Regions have the same number of blocks, compare first respective pair of different Blocks starting from the left as in Block.compare. Return the first non-zero comparison, or zero if all of these comparisons are zero.
- that
Other Region
- returns
Negative integer if this is less than other, zero if neither is greater, positive integer if this is greater than other
- Definition Classes
- BlockSet → Ordered
-
def
compareTo(that: Region): Int
- Definition Classes
- Ordered → Comparable
-
def
contains(feat: Region): Boolean
Returns a boolean value representing whether this Region contains another Region.
Returns a boolean value representing whether this Region contains another Region.
In order to contain the other, the two Regions must be on the same chromosome, have compatible Orientations, and every block of the other Region must be fully contained in the span of a block of this Region.
- returns
True if this Region contains the other, false otherwise
-
def
containsCompatibleIntrons(o: Region): Boolean
Returns a boolean value representing whether this Region contains another Region and their introns are compatible.
Returns a boolean value representing whether this Region contains another Region and their introns are compatible.
That is, no INTERNAL block boundary for one of the Regions can fall strictly within a Block of the other Region.
- o
Other Region
- returns
True if this Region contains the other and their introns are compatible, false otherwise
- Definition Classes
- Region
- val end: Int
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
getIntrons: List[Block]
Returns a list of Blocks representing the introns of this Region.
Returns a list of Blocks representing the introns of this Region.
The returned list is in order from left to right. Each Block in the returned list is the span of a gap between two Blocks of this Region. The returned Blocks have the same Orientation as this Region. The start position of each returned Block is equal to the end position (exclusive) of the previous adjacent Block in this Region. The end position of each returned Block (exclusive) is equal to the start position of the following adjacent Block in this Region.
If this Region is empty or has only one Block, Nil is returned.
- returns
A list of Blocks representing the gaps between the Blocks of this Region, or Nil if this Region has less than two Blocks.
- Definition Classes
- Region
-
def
intersection(feat: Region): Region
Returns a Region representing the intersection of this with another Region.
Returns a Region representing the intersection of this with another Region.
If the two Regions overlap (Region.overlaps), a Region is returned whose blocks are the disjoint sections of overlap between the blocks of the two original Regions, and whose Orientation is the consensus (Orientation.consensus) of those of the two original Regions. If the two Regions do not overlap, Empty is returned.
-
def
isEmpty: Boolean
Returns a boolean value representing whether this Region is empty.
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
minus(feat: Region): Region
Returns a Region representing this minus the overlap with another Region.
Returns a Region representing this minus the overlap with another Region.
If the two Regions overlap (Region.overlaps), a Region is returned whose blocks are the sections of this Region's blocks that are not part of the overlap. Otherwise, this is returned. In either case, the returned Region has the same Orientation as this Region.
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- def numBlocks: Int
-
def
orientation: Orientation
Returns the Orientation of this region.
Returns the Orientation of this region.
-
def
overlaps(feat: Region): Boolean
Returns a boolean value representing whether this Region overlaps another Region.
-
def
overlapsCompatibleIntrons(o: Region): Boolean
Returns a boolean value representing whether this Region overlaps another Region and their introns are compatible.
-
def
overlapsSpan(o: Region): Boolean
Returns a boolean value representing whether the span of this Region overlaps the span of another Region.
Returns a boolean value representing whether the span of this Region overlaps the span of another Region. That is, intron/exon structure is ignored and only the full span (from start to end) of the Regions are considered. Orientations must be compatible.
- Definition Classes
- Region
-
def
relativePos(chrPos: Int): Option[Int]
Returns the position relative to this Region accounting for splicing and Orientation.
Returns the position relative to this Region accounting for splicing and Orientation.
The returned position counts with respect to the "beginning" or "5-prime end" of this Region. It counts along the Blocks only, ignoring intervening areas ("introns").
For example, if this Region has Orientation Plus, the start position would map to position zero by this method, and the last position (the end position minus one) would map to position Region.size minus one. If this Region has Orientation Minus, the last position of the Region (the end position minus one) would map to position zero by this method, and the start position would map to position Region.size minus one.
This Region must have Orientation Plus or Minus. Otherwise an exception is thrown.
If the requested chromosome position does not lie within one of the Blocks of this Region, None is returned.
-
def
size: Int
Returns the sum of the lengths of the Blocks of this Region.
Returns the sum of the lengths of the Blocks of this Region.
Block length is the end position minus the start position, where, as always, start position is inclusive and end position is exclusive. Therefore, size is the number of individual genomic positions included in the Region.
The size of Empty is zero.
- Definition Classes
- Region
-
def
start: Int
Returns the zero-based start position of this region.
Returns the zero-based start position of this region.
Regardless of Orientation, this is the smallest (leftmost) position of the region in chromosome coordinates. The start position is inclusive. (All coordinate intervals are half open. All genomic positions are zero-based.)
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
Returns a string representation of this BlockSet.
-
def
trim(newStart: Int, newEnd: Int): Region
Returns a Region resulting from trimming back the start and end positions of this Region.
Returns a Region resulting from trimming back the start and end positions of this Region.
This Region is truncated to the new start and end positions in chromosome coordinates. This may mean some Blocks are removed altogether, some are shortened, and some are left intact. If the new start or end position is outside the span of this Region, that parameter will not affect the returned Region.
As always, start positions are inclusive and end positions are exclusive.
- newStart
New zero-based start position in chromosome coordinates
- newEnd
New zero-based end position in chromosome coordinates
- returns
Region representing this with truncated start and end positions
- Definition Classes
- Region
-
def
union(feat: Region): Region
Returns a Region representing the union of this with another Region.
Returns a Region representing the union of this with another Region.
If the two Regions are on the same chromosome and have compatible Orientations, the blocks will be merged and assigned the consensus Orientation (Orientation.consensus) for the final returned Region.
If this or the other Region is Empty, the non-empty Region will be returned, or if both are Empty, Empty will be returned.
Otherwise, an exception is thrown.
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )