final case class Block(chr: String, start: Int, end: Int, orientation: Orientation) extends Region with Product with Serializable
A single contiguous block on a chromosome with an Orientation.
- chr
Chromosome name. Cannot start with "chr" (otherwise an IllegalArgumentException is thrown). All code in this library automatically strips "chr" from feature chromosome names before instantiating Blocks. For example, format.GTF22Record strips "chr" from GTF2.2 lines before creating Features. Client code that implements new ways to create features will need to do this as well.
- start
Zero-based start position (inclusive)
- end
Zero-based end position (exclusive)
- orientation
Block orientation
- Alphabetic
- By Inheritance
- Block
- Serializable
- Serializable
- Product
- Equals
- Region
- Ordered
- Comparable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
Block(chr: String, start: Int, end: Int, orientation: Orientation)
- chr
Chromosome name. Cannot start with "chr" (otherwise an IllegalArgumentException is thrown). All code in this library automatically strips "chr" from feature chromosome names before instantiating Blocks. For example, format.GTF22Record strips "chr" from GTF2.2 lines before creating Features. Client code that implements new ways to create features will need to do this as well.
- start
Zero-based start position (inclusive)
- end
Zero-based end position (exclusive)
- orientation
Block orientation
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
-
def
blocks: List[Block]
Returns a list of the Blocks of this Region.
Returns a list of the Blocks of this Region.
Regardless of Orientation, the returned list is in sorted order by chromosome coordinates.
- val chr: String
-
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, returns a negative integer.
If other Region is a Block, first compare chromosome, then start position, then end position, then Orientation according to Orientation.ArbitraryOrdering. Return the first non-zero comparison. If all are equal, return zero.
If other Region is a BlockSet, first compare spans ignoring introns, as if both were Blocks. If they have the same span, return a negative integer.
- 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
- Block → 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
- val orientation: Orientation
-
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
- val start: Int
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
Returns a string representation of this Block.
-
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( ... )