package dr.app.beauti.components.ancestralstates;
import dr.app.beauti.components.ComponentFactory;
import dr.app.beauti.generator.ComponentGenerator;
import dr.app.beauti.options.BeautiOptions;
import dr.app.beauti.options.ComponentOptions;
/**
* @author Andrew Rambaut
* @version $Id$
*/
public class AncestralStatesComponentFactory implements ComponentFactory {
private AncestralStatesComponentFactory() {
// singleton pattern - private constructor
}
public ComponentGenerator getGenerator(final BeautiOptions beautiOptions) {
if (generator == null) {
generator = new AncestralStatesComponentGenerator(beautiOptions);
}
return generator;
}
public ComponentOptions getOptions(final BeautiOptions beautiOptions) {
if (options == null) {
options = new AncestralStatesComponentOptions();
}
return options;
}
private AncestralStatesComponentGenerator generator = null;
private AncestralStatesComponentOptions options = null;
public static ComponentFactory INSTANCE = new AncestralStatesComponentFactory();
}