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.double
Return the counts for a given Symbol.void
increaseCount
(AtomicSymbol s, double c) Set the probability or odds that Symbol s is emitted by this state.void
setCount
(AtomicSymbol s, double c) Set the count for the Symbol s.void
Set the counts in this Counts to be equal to the counts in c.void
Reset all the counts to zero.Methods inherited from class org.biojava.utils.AbstractChangeable
addChangeListener, addChangeListener, generateChangeSupport, getChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListener
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods 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:Count
The alphabet from which this Count is over.- Specified by:
getAlphabet
in interfaceCount
- Returns:
- the Alphabet associated with this Count
-
getCount
Description copied from interface:Count
Return the counts for a given Symbol.- Specified by:
getCount
in 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:Count
Set the count for the Symbol s.- Specified by:
setCount
in 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:Count
Set the probability or odds that Symbol s is emitted by this state.- Specified by:
increaseCount
in 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:Count
Set the counts in this Counts to be equal to the counts in c.- Specified by:
setCounts
in 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:Count
Reset all the counts to zero.- Specified by:
zeroCounts
in interfaceCount
- Throws:
ChangeVetoException
- if this Count does not allow the counts to be tampered with, or if one of the listeners vetoed this change
-