Package imp
Class RefHapHash
- java.lang.Object
-
- imp.RefHapHash
-
public class RefHapHash extends java.lang.Object
Class
RefHapHash
stores a hash code for each haplotype in a sublist of reference haplotypes. The hash code is computed from the allele sequence carried by the reference haplotype.Instances of class
RefHapHash
are immutable.
-
-
Constructor Summary
Constructors Constructor Description RefHapHash(java.util.concurrent.atomic.AtomicReferenceArray<StateProbs> stateProbs, int targMarker, RefGT refHapPairs, int start, int end)
Constructs a newRefHapHash
instance for the specified data.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
end()
Returns the ending reference marker index (exclusive) for the reference haplotype allele sequences.int
hap(int index)
Return the specified haplotype in the sublist of reference haplotypes.int
hap2Index(int hap)
Returns the index of the specified haplotype in the sublist of reference haplotypes.int
hash(int index)
Return a hash code computed from the allele sequence of the specified haplotype in the sublist of reference haplotypes.int
nHaps()
Returns the size of the sublist of reference haplotypes.RefGT
refGT()
Returns the phased reference genotypes.void
setAlleles(int index, int[] alleles)
Copies the alleles betweenthis.start()
(inclusive) andthis.end()
(exclusive) of the specified haplotype in the sublist of reference haplotypes to the specified array.int
start()
Returns the starting reference marker index (inclusive) for the reference haplotype allele sequences.int
targMarker()
Returns the target marker.
-
-
-
Constructor Detail
-
RefHapHash
public RefHapHash(java.util.concurrent.atomic.AtomicReferenceArray<StateProbs> stateProbs, int targMarker, RefGT refHapPairs, int start, int end)
Constructs a newRefHapHash
instance for the specified data. The sublist of reference haplotypes is the ordered list of distinct reference haplotypes with stored state probability data at the specified target marker in thestateProbs
parameter.- Parameters:
stateProbs
- HMM state probabilities at the genotyped markers in the target samplestargMarker
- a target marker indexrefHapPairs
- the reference haplotypesstart
- the starting reference marker index (inclusive) for the reference haplotype allele sequencesend
- the ending reference marker index (exclusive) for the reference haplotype allele sequences- Throws:
java.lang.IndexOutOfBoundsException
- iftargMarker < 0
java.lang.IndexOutOfBoundsException
- if there exists aj
satisfying(0 <= j && j < stateProbs.size()) && (targMarker >= stateProbs.get(j).nMarkers())
java.lang.IllegalArgumentException
- ifstart < 0 || start >= end || end > refHapPairs.nMarkers()
java.lang.NullPointerException
- ifstateProbs == null || refHapPairs == null
java.lang.NullPointerException
- if there exists aj
satisfying(0 <= j && j < stateProbs.size()) && (stateProbs.get(j) == null)
-
-
Method Detail
-
targMarker
public int targMarker()
Returns the target marker.- Returns:
- the target marker
-
refGT
public RefGT refGT()
Returns the phased reference genotypes.- Returns:
- the phased reference genotypes
-
start
public int start()
Returns the starting reference marker index (inclusive) for the reference haplotype allele sequences.- Returns:
- the starting reference marker index (inclusive) for the reference haplotype allele sequences
-
end
public int end()
Returns the ending reference marker index (exclusive) for the reference haplotype allele sequences.- Returns:
- the ending reference marker index (exclusive) for the reference haplotype allele sequences
-
setAlleles
public void setAlleles(int index, int[] alleles)
Copies the alleles betweenthis.start()
(inclusive) andthis.end()
(exclusive) of the specified haplotype in the sublist of reference haplotypes to the specified array.- Parameters:
index
- an index in the sublist of reference haplotypesalleles
- the array to which haplotype alleles will be copied- Throws:
java.lang.IllegalArgumentException
- ifalleles.length < (this.end() - this.start())
java.lang.NullPointerException
- ifalleles == null
-
nHaps
public int nHaps()
Returns the size of the sublist of reference haplotypes.- Returns:
- the size of the sublist of reference haplotypes
-
hap2Index
public int hap2Index(int hap)
Returns the index of the specified haplotype in the sublist of reference haplotypes. Returns (-insertionPoint - 1) if the specified haplotype is not found in the sublist of reference haplotypes.- Parameters:
hap
- a reference haplotype index- Returns:
- the index of the specified haplotype in the sublist of reference haplotypes
-
hap
public int hap(int index)
Return the specified haplotype in the sublist of reference haplotypes.- Parameters:
index
- an index in the sublist of reference haplotypes- Returns:
- the specified haplotype in the sublist of reference haplotypes
-
hash
public int hash(int index)
Return a hash code computed from the allele sequence of the specified haplotype in the sublist of reference haplotypes. The hash code is computed from the allele sequence between markers with indexthis.start()
(inclusive) andthis.end()
(exclusive).- Parameters:
index
- an index in the sublist of reference haplotypes- Returns:
- a hash code computed from the allele sequence of the specified haplotype in the sublist of reference haplotypes
-
-