package dr.evoxml;
import dr.evolution.datatype.HiddenNucleotides;
import dr.xml.*;
/**
* @author Alexei Drummond
*/
public class HiddenNucleotideParser extends AbstractXMLObjectParser {
public static final String HIDDEN_NUCLEOTIDES = "hiddenNucleotides";
public static final String HIDDEN_CLASS_COUNT = "classCount";
public String getParserName() {
return HIDDEN_NUCLEOTIDES;
}
public Object parseXMLObject(XMLObject xo) throws XMLParseException {
int hiddenClassCount = xo.getIntegerAttribute(HIDDEN_CLASS_COUNT);
return new HiddenNucleotides(hiddenClassCount);
}
public String getParserDescription() {
return "A nucleotide data type that allows hidden substitution classes";
}
public Class getReturnType() {
return HiddenNucleotides.class;
}
public XMLSyntaxRule[] getSyntaxRules() {
return new XMLSyntaxRule[]{AttributeRule.newIntegerRule(HIDDEN_CLASS_COUNT)};
}
}