Package org.biojava.bio.dist
Class IndexedCount
java.lang.Object
org.biojava.utils.AbstractChangeable
org.biojava.bio.dist.IndexedCount
- All Implemented Interfaces:
Serializable,Count,Changeable
An encapsulation of a count over the Symbols within a FiniteAlphabet using
an AlphabetIndex object.
- Since:
- 1.1
- Author:
- Matthew Pocock, Mark Schreiber (serialization), Thomas Down (more serialization...)
- See Also:
-
Field Summary
-
Constructor Summary
ConstructorsConstructorDescriptionIndexedCount(AlphabetIndex indexer) Get a new InexedCount for an alphabet indexer.Get a new IdexedCount for an alphabet using the default indexer. -
Method Summary
Modifier and TypeMethodDescriptionThe alphabet from which this Count is over.doubleReturn the counts for a given Symbol.voidincreaseCount(AtomicSymbol s, double c) Set the probability or odds that Symbol s is emitted by this state.voidsetCount(AtomicSymbol s, double c) Set the count for the Symbol s.voidSet the counts in this Counts to be equal to the counts in c.voidReset all the counts to zero.Methods inherited from class org.biojava.utils.AbstractChangeable
addChangeListener, addChangeListener, generateChangeSupport, getChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListenerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.biojava.utils.Changeable
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener
-
Constructor Details
-
IndexedCount
Get a new IdexedCount for an alphabet using the default indexer.- Parameters:
fa- the FiniteAlphabet to count
-
IndexedCount
Get a new InexedCount for an alphabet indexer.- Parameters:
indexer- the AlphabetIndex used to map between symbols and indecies
-
-
Method Details
-
getAlphabet
Description copied from interface:CountThe alphabet from which this Count is over.- Specified by:
getAlphabetin interfaceCount- Returns:
- the Alphabet associated with this Count
-
getCount
Description copied from interface:CountReturn the counts for a given Symbol.- Specified by:
getCountin interfaceCount- Parameters:
s- the Symbol- Returns:
- the number of counts for this symbol
- Throws:
IllegalSymbolException- if s is not from this Count's alphabet
-
setCount
Description copied from interface:CountSet the count for the Symbol s.- Specified by:
setCountin interfaceCount- Parameters:
s- the Symbol emittedc- the new count for the Symbol- Throws:
IllegalSymbolException- if s is not from this state's alphabet, or if it is an ambiguity symbol and the implementation can't handle this caseChangeVetoException- if this distribution does not allow counts to be tampered with, or if one of the listeners vetoed this change
-
increaseCount
public void increaseCount(AtomicSymbol s, double c) throws IllegalSymbolException, ChangeVetoException Description copied from interface:CountSet the probability or odds that Symbol s is emitted by this state.- Specified by:
increaseCountin interfaceCount- Parameters:
s- the Symbol emittedc- the delta to add to the count for the Symbol- Throws:
IllegalSymbolException- if s is not from this state's alphabet, or if it is an ambiguity symbol and the implementation can't handle this caseChangeVetoException- if this Count does not allow counts to be tampered with, or if one of the listeners vetoed this change
-
setCounts
Description copied from interface:CountSet the counts in this Counts to be equal to the counts in c.- Specified by:
setCountsin interfaceCount- Parameters:
c- the Count object to copy the counts from- Throws:
IllegalAlphabetException- if c has a different Alphabet to this CountChangeVetoException- if this Count does not allow the counts to be tampered with, or if one of the listeners vetoed this change
-
zeroCounts
Description copied from interface:CountReset all the counts to zero.- Specified by:
zeroCountsin interfaceCount- Throws:
ChangeVetoException- if this Count does not allow the counts to be tampered with, or if one of the listeners vetoed this change
-