org.biojava.bio.symbol
Class DNAAmbPack

java.lang.Object
  extended byorg.biojava.bio.symbol.DNAAmbPack
All Implemented Interfaces:
Packing, java.io.Serializable

public class DNAAmbPack
extends java.lang.Object
implements Packing, java.io.Serializable

Packing utility class for DNA. Also represents ambiguity.

Author:
Matthew Pocock, David Huen (bugfix)
See Also:
Serialized Form

Constructor Summary
DNAAmbPack()
           
 
Method Summary
 FiniteAlphabet getAlphabet()
          The FiniteAlphabet this packing is for.
 boolean handlesAmbiguity()
           Flag to state if ambiguities are stored.
 byte pack(Symbol sym)
           Return a byte representing the packing of a symbol.
 Symbol unpack(byte b)
           Return the symbol for a packing.
 byte wordSize()
           The number of bits required to pack a symbol.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DNAAmbPack

public DNAAmbPack()
Method Detail

getAlphabet

public FiniteAlphabet getAlphabet()
Description copied from interface: Packing
The FiniteAlphabet this packing is for.

Specified by:
getAlphabet in interface Packing
Returns:
the FiniteAlphabet that we can pack

pack

public byte pack(Symbol sym)
Description copied from interface: Packing

Return a byte representing the packing of a symbol. The bits will be from 1 >> 0 through to 1 >> (wordSize - 1).

Specified by:
pack in interface Packing
Parameters:
sym - the Symbol to pack
Returns:
a byte containing the packed symbol

unpack

public Symbol unpack(byte b)
Description copied from interface: Packing

Return the symbol for a packing.

Specified by:
unpack in interface Packing
Parameters:
b - the byte pattern for a Symbol
Returns:
the Symbol that was packed

wordSize

public byte wordSize()
Description copied from interface: Packing

The number of bits required to pack a symbol.

Specified by:
wordSize in interface Packing
Returns:
the word size as a byte

handlesAmbiguity

public boolean handlesAmbiguity()
Description copied from interface: Packing

Flag to state if ambiguities are stored.

Packings are free to either store ambiguity information or to discard it (presumably converting all ambiguities to a standard AtomicSymbol and then packing that). You can check wether ambiguities are handled by calling this method.

Specified by:
handlesAmbiguity in interface Packing
Returns:
true if ambiguities are stored, false otherwise