public BioCLocation getTotalLocation ( ) { checkArgument ( getLocationCount ( ) > 0 , "No location added" ) ; RangeSet < Integer > rangeSet = TreeRangeSet . create ( ) ; for ( BioCLocation location : getLocations ( ) ) { rangeSet . add ( Range . closedOpen ( location . getOffset ( ) , location . getOffset ( ) + location . getLength ( ) ) ) ; } Range < Integer > totalSpan = rangeSet . span ( ) ; return new BioCLocation ( totalSpan . lowerEndpoint ( ) , totalSpan . upperEndpoint ( ) - totalSpan . lowerEndpoint ( ) ) ; }
Returns the minimal range which encloses all locations in this annotation .