org.biojava.bio.dist
Interface DistributionFactory

All Known Implementing Classes:
DistributionFactory.DefaultDistributionFactory, OrderNDistributionFactory

public interface DistributionFactory

A thing that can make Distributions.

This decouples programs from needing to know what implementation of Distribution to instantiate for a given alphabet. It also lets you parameterise model creation for things like profile HMMs.

Author:
Matthew Pocock

Nested Class Summary
static class DistributionFactory.DefaultDistributionFactory
           The default DistributionFactory implementation.
 
Field Summary
static DistributionFactory DEFAULT
           The default DistributionFactory object.
 
Method Summary
 Distribution createDistribution(Alphabet alpha)
          Generate a new Distribution as requested.
 

Field Detail

DEFAULT

public static final DistributionFactory DEFAULT

The default DistributionFactory object.

You may wish to alias this within your scripts with something like: DistributionFactory dFact = DistributionFactory.DEFAULT; dFact.createDistribution(...);

Method Detail

createDistribution

public Distribution createDistribution(Alphabet alpha)
                                throws IllegalAlphabetException
Generate a new Distribution as requested.

Parameters:
alpha - the emission alphabet for the state
Throws:
IllegalAlphabetException - if the factory is unable to generate a distribution for the required alphabet