Package beagleutil
Class ChromIds
- java.lang.Object
-
- beagleutil.ChromIds
-
public final class ChromIds extends java.lang.ObjectClass
The singleton instance ofChromIdsis a singleton class that represents a list of chromosome identifiers.ChromIdsis thread-safe.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetIndex(java.lang.String id)Returns the index of the specified chromosome identifier.intgetIndexIfIndexed(java.lang.String id)Returns the index of the specified chromosome identifier, or returns-1if the specified chromosome identifier is not indexed.int[]getIndices(java.lang.String[] ids)Returns an array of chromosome identifier indices corresponding to the specified array of chromosome identifiers.java.lang.Stringid(int index)Returns the chromosome identifier with the specified index.java.lang.String[]ids()Returns the list of chromosome identifiers as an array.static ChromIdsinstance()Returns the singletonChromIdsinstance.intsize()Returns the number of indexed chromosomes identifiers.java.lang.StringtoString()Returnsjava.util.Arrays.toString(this.ids()).
-
-
-
Method Detail
-
instance
public static ChromIds instance()
Returns the singletonChromIdsinstance.- Returns:
- the singleton
ChromIdsinstance
-
getIndex
public int getIndex(java.lang.String id)
Returns the index of the specified chromosome identifier. If the chromosome identifiers is not yet indexed, the chromosome identifier will be indexed. Chromosome identifier indices are assigned in consecutive order beginning with 0.- Parameters:
id- a chromosome identifier- Returns:
- the index of the specified chromosome identifier
- Throws:
java.lang.IllegalArgumentException- ifid.isEmpty()java.lang.NullPointerException- ifid == null
-
getIndices
public int[] getIndices(java.lang.String[] ids)
Returns an array of chromosome identifier indices corresponding to the specified array of chromosome identifiers. If a sample identifier is not yet indexed, the sample identifier will be indexed. Sample identifier indices are assigned in increasing order starting with 0.- Parameters:
ids- an array of sample identifiers- Returns:
- an array of sample identifier indices
- Throws:
java.lang.IllegalArgumentException- if there is ajsatisfying(0 <= j && j < ids.length) && ids[j].isEmpty()java.lang.NullPointerException- ifids == nulljava.lang.NullPointerException- if there is ajsatisfying(0 <= j && j < ids.length) && (ids[j] == null)
-
getIndexIfIndexed
public int getIndexIfIndexed(java.lang.String id)
Returns the index of the specified chromosome identifier, or returns-1if the specified chromosome identifier is not indexed.- Parameters:
id- a chromosome identifier.- Returns:
- the index of the specified chromosome identifier, or
-1if the specified chromosome identifier is not indexed. - Throws:
java.lang.IllegalArgumentException- ifid.isEmpty()java.lang.NullPointerException- ifid == null
-
size
public int size()
Returns the number of indexed chromosomes identifiers.- Returns:
- the number of indexed chromosomes identifiers
-
id
public java.lang.String id(int index)
Returns the chromosome identifier with the specified index.- Parameters:
index- a chromosome identifier index.- Returns:
- the specified chromosome identifier.
- Throws:
java.lang.IndexOutOfBoundsException- ifindex < 0 || index >= this.size()
-
ids
public java.lang.String[] ids()
Returns the list of chromosome identifiers as an array. The returned array will have lengththis.size(), and it will satisfythis.ids()[k].equals(this.id(k)) == truefor0 <= k < this.size().- Returns:
- an array of chromosome identifiers
-
toString
public java.lang.String toString()
Returnsjava.util.Arrays.toString(this.ids()).- Overrides:
toStringin classjava.lang.Object- Returns:
- a string representation of
this
-
-