All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.opencb.biodata.models.variant.avro.VariantStats Maven / Gradle / Ivy

The newest version!
/**
 * Autogenerated by Avro
 * 
 * DO NOT EDIT DIRECTLY
 */
package org.opencb.biodata.models.variant.avro;  
@SuppressWarnings("all")
@org.apache.avro.specific.AvroGenerated
public class VariantStats extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord {
  public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"VariantStats\",\"namespace\":\"org.opencb.biodata.models.variant.avro\",\"fields\":[{\"name\":\"cohortId\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"},\"doc\":\"* Unique cohort identifier within the study.\\n         *\"},{\"name\":\"sampleCount\",\"type\":[\"null\",\"int\"],\"doc\":\"* Count of samples with non-missing genotypes in this variant from the cohort.\\n         * This value is used as denominator for genotypeFreq.\\n         *\"},{\"name\":\"fileCount\",\"type\":[\"null\",\"int\"],\"doc\":\"* Count of files with samples from the cohort that reported this variant.\\n         * This value is used as denominator for filterFreq.\\n         *\"},{\"name\":\"alleleCount\",\"type\":[\"null\",\"int\"],\"doc\":\"* Total number of alleles in called genotypes. It does not include missing alleles.\\n         * This value is used as denominator for refAlleleFreq and altAlleleFreq.\\n         *\"},{\"name\":\"refAlleleCount\",\"type\":[\"null\",\"int\"],\"doc\":\"* Number of reference alleles found in this variant.\\n         *\"},{\"name\":\"altAlleleCount\",\"type\":[\"null\",\"int\"],\"doc\":\"* Number of main alternate alleles found in this variants. It does not include secondary alternates.\\n         *\"},{\"name\":\"refAlleleFreq\",\"type\":[\"null\",\"float\"],\"doc\":\"* Reference allele frequency calculated from refAlleleCount and alleleCount, in the range [0,1]\\n         *\"},{\"name\":\"altAlleleFreq\",\"type\":[\"null\",\"float\"],\"doc\":\"* Alternate allele frequency calculated from altAlleleCount and alleleCount, in the range [0,1]\\n         *\"},{\"name\":\"missingAlleleCount\",\"type\":[\"null\",\"int\"],\"doc\":\"* Number of missing alleles.\\n         *\"},{\"name\":\"missingGenotypeCount\",\"type\":[\"null\",\"int\"],\"doc\":\"* Number of genotypes with all alleles missing (e.g. ./.). It does not count partially missing genotypes like \\\"./0\\\" or \\\"./1\\\".\\n         *\"},{\"name\":\"genotypeCount\",\"type\":{\"type\":\"map\",\"values\":\"int\",\"avro.java.string\":\"String\"},\"doc\":\"* Number of occurrences for each genotype.\\n         * This does not include genotype with all alleles missing (e.g. ./.), but it includes partially missing genotypes like \\\"./0\\\" or \\\"./1\\\".\\n         * Total sum of counts should be equal to the count of samples.\\n         *\",\"default\":{}},{\"name\":\"genotypeFreq\",\"type\":{\"type\":\"map\",\"values\":\"float\",\"avro.java.string\":\"String\"},\"doc\":\"* Genotype frequency for each genotype found calculated from the genotypeCount and samplesCount, in the range [0,1]\\n         * The sum of frequencies should be 1.\\n         *\",\"default\":{}},{\"name\":\"filterCount\",\"type\":{\"type\":\"map\",\"values\":\"int\",\"avro.java.string\":\"String\"},\"doc\":\"* The number of occurrences for each FILTER value in files from samples in this cohort reporting this variant.\\n         * As each file can contain more than one filter value (usually separated by ';'), the total sum of counts could be greater than the count of files.\\n         *\"},{\"name\":\"filterFreq\",\"type\":{\"type\":\"map\",\"values\":\"float\",\"avro.java.string\":\"String\"},\"doc\":\"* Frequency of each filter calculated from the filterCount and filesCount, in the range [0,1]\\n         *\"},{\"name\":\"qualityCount\",\"type\":[\"null\",\"int\"],\"doc\":\"* The number of files from samples in this cohort reporting this variant with valid QUAL values.\\n         * This value is used as denominator to obtain the qualityAvg.\"},{\"name\":\"qualityAvg\",\"type\":[\"null\",\"float\"],\"doc\":\"* The average Quality value for files with valid QUAL values from samples in this cohort reporting this variant.\\n         * Some files may not have defined the QUAL value, so the sampling could be less than the filesCount.\\n         *\"},{\"name\":\"maf\",\"type\":[\"null\",\"float\"],\"doc\":\"* Minor allele frequency. Frequency of the less common allele between the reference and the main alternate alleles.\\n         * This value does not take into acconunt secondary alternates.\\n         *\"},{\"name\":\"mgf\",\"type\":[\"null\",\"float\"],\"doc\":\"* Minor genotype frequency. Frequency of the less common genotype seen in this variant.\\n         * This value takes into account all values from the genotypeFreq map.\\n         *\"},{\"name\":\"mafAllele\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"* Allele with minor frequency.\\n         *\"},{\"name\":\"mgfGenotype\",\"type\":[\"null\",{\"type\":\"string\",\"avro.java.string\":\"String\"}],\"doc\":\"* Genotype with minor frequency.\\n         *\"}]}");
  public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
  /** * Unique cohort identifier within the study.
         * */
   private java.lang.String cohortId;
  /** * Count of samples with non-missing genotypes in this variant from the cohort.
         * This value is used as denominator for genotypeFreq.
         * */
   private java.lang.Integer sampleCount;
  /** * Count of files with samples from the cohort that reported this variant.
         * This value is used as denominator for filterFreq.
         * */
   private java.lang.Integer fileCount;
  /** * Total number of alleles in called genotypes. It does not include missing alleles.
         * This value is used as denominator for refAlleleFreq and altAlleleFreq.
         * */
   private java.lang.Integer alleleCount;
  /** * Number of reference alleles found in this variant.
         * */
   private java.lang.Integer refAlleleCount;
  /** * Number of main alternate alleles found in this variants. It does not include secondary alternates.
         * */
   private java.lang.Integer altAlleleCount;
  /** * Reference allele frequency calculated from refAlleleCount and alleleCount, in the range [0,1]
         * */
   private java.lang.Float refAlleleFreq;
  /** * Alternate allele frequency calculated from altAlleleCount and alleleCount, in the range [0,1]
         * */
   private java.lang.Float altAlleleFreq;
  /** * Number of missing alleles.
         * */
   private java.lang.Integer missingAlleleCount;
  /** * Number of genotypes with all alleles missing (e.g. ./.). It does not count partially missing genotypes like "./0" or "./1".
         * */
   private java.lang.Integer missingGenotypeCount;
  /** * Number of occurrences for each genotype.
         * This does not include genotype with all alleles missing (e.g. ./.), but it includes partially missing genotypes like "./0" or "./1".
         * Total sum of counts should be equal to the count of samples.
         * */
   private java.util.Map genotypeCount;
  /** * Genotype frequency for each genotype found calculated from the genotypeCount and samplesCount, in the range [0,1]
         * The sum of frequencies should be 1.
         * */
   private java.util.Map genotypeFreq;
  /** * The number of occurrences for each FILTER value in files from samples in this cohort reporting this variant.
         * As each file can contain more than one filter value (usually separated by ';'), the total sum of counts could be greater than the count of files.
         * */
   private java.util.Map filterCount;
  /** * Frequency of each filter calculated from the filterCount and filesCount, in the range [0,1]
         * */
   private java.util.Map filterFreq;
  /** * The number of files from samples in this cohort reporting this variant with valid QUAL values.
         * This value is used as denominator to obtain the qualityAvg. */
   private java.lang.Integer qualityCount;
  /** * The average Quality value for files with valid QUAL values from samples in this cohort reporting this variant.
         * Some files may not have defined the QUAL value, so the sampling could be less than the filesCount.
         * */
   private java.lang.Float qualityAvg;
  /** * Minor allele frequency. Frequency of the less common allele between the reference and the main alternate alleles.
         * This value does not take into acconunt secondary alternates.
         * */
   private java.lang.Float maf;
  /** * Minor genotype frequency. Frequency of the less common genotype seen in this variant.
         * This value takes into account all values from the genotypeFreq map.
         * */
   private java.lang.Float mgf;
  /** * Allele with minor frequency.
         * */
   private java.lang.String mafAllele;
  /** * Genotype with minor frequency.
         * */
   private java.lang.String mgfGenotype;

  /**
   * Default constructor.  Note that this does not initialize fields
   * to their default values from the schema.  If that is desired then
   * one should use newBuilder(). 
   */
  public VariantStats() {}

  /**
   * All-args constructor.
   */
  public VariantStats(java.lang.String cohortId, java.lang.Integer sampleCount, java.lang.Integer fileCount, java.lang.Integer alleleCount, java.lang.Integer refAlleleCount, java.lang.Integer altAlleleCount, java.lang.Float refAlleleFreq, java.lang.Float altAlleleFreq, java.lang.Integer missingAlleleCount, java.lang.Integer missingGenotypeCount, java.util.Map genotypeCount, java.util.Map genotypeFreq, java.util.Map filterCount, java.util.Map filterFreq, java.lang.Integer qualityCount, java.lang.Float qualityAvg, java.lang.Float maf, java.lang.Float mgf, java.lang.String mafAllele, java.lang.String mgfGenotype) {
    this.cohortId = cohortId;
    this.sampleCount = sampleCount;
    this.fileCount = fileCount;
    this.alleleCount = alleleCount;
    this.refAlleleCount = refAlleleCount;
    this.altAlleleCount = altAlleleCount;
    this.refAlleleFreq = refAlleleFreq;
    this.altAlleleFreq = altAlleleFreq;
    this.missingAlleleCount = missingAlleleCount;
    this.missingGenotypeCount = missingGenotypeCount;
    this.genotypeCount = genotypeCount;
    this.genotypeFreq = genotypeFreq;
    this.filterCount = filterCount;
    this.filterFreq = filterFreq;
    this.qualityCount = qualityCount;
    this.qualityAvg = qualityAvg;
    this.maf = maf;
    this.mgf = mgf;
    this.mafAllele = mafAllele;
    this.mgfGenotype = mgfGenotype;
  }

  public org.apache.avro.Schema getSchema() { return SCHEMA$; }
  // Used by DatumWriter.  Applications should not call. 
  public java.lang.Object get(int field$) {
    switch (field$) {
    case 0: return cohortId;
    case 1: return sampleCount;
    case 2: return fileCount;
    case 3: return alleleCount;
    case 4: return refAlleleCount;
    case 5: return altAlleleCount;
    case 6: return refAlleleFreq;
    case 7: return altAlleleFreq;
    case 8: return missingAlleleCount;
    case 9: return missingGenotypeCount;
    case 10: return genotypeCount;
    case 11: return genotypeFreq;
    case 12: return filterCount;
    case 13: return filterFreq;
    case 14: return qualityCount;
    case 15: return qualityAvg;
    case 16: return maf;
    case 17: return mgf;
    case 18: return mafAllele;
    case 19: return mgfGenotype;
    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
    }
  }
  // Used by DatumReader.  Applications should not call. 
  @SuppressWarnings(value="unchecked")
  public void put(int field$, java.lang.Object value$) {
    switch (field$) {
    case 0: cohortId = (java.lang.String)value$; break;
    case 1: sampleCount = (java.lang.Integer)value$; break;
    case 2: fileCount = (java.lang.Integer)value$; break;
    case 3: alleleCount = (java.lang.Integer)value$; break;
    case 4: refAlleleCount = (java.lang.Integer)value$; break;
    case 5: altAlleleCount = (java.lang.Integer)value$; break;
    case 6: refAlleleFreq = (java.lang.Float)value$; break;
    case 7: altAlleleFreq = (java.lang.Float)value$; break;
    case 8: missingAlleleCount = (java.lang.Integer)value$; break;
    case 9: missingGenotypeCount = (java.lang.Integer)value$; break;
    case 10: genotypeCount = (java.util.Map)value$; break;
    case 11: genotypeFreq = (java.util.Map)value$; break;
    case 12: filterCount = (java.util.Map)value$; break;
    case 13: filterFreq = (java.util.Map)value$; break;
    case 14: qualityCount = (java.lang.Integer)value$; break;
    case 15: qualityAvg = (java.lang.Float)value$; break;
    case 16: maf = (java.lang.Float)value$; break;
    case 17: mgf = (java.lang.Float)value$; break;
    case 18: mafAllele = (java.lang.String)value$; break;
    case 19: mgfGenotype = (java.lang.String)value$; break;
    default: throw new org.apache.avro.AvroRuntimeException("Bad index");
    }
  }

  /**
   * Gets the value of the 'cohortId' field.
   * * Unique cohort identifier within the study.
         *   */
  public java.lang.String getCohortId() {
    return cohortId;
  }

  /**
   * Sets the value of the 'cohortId' field.
   * * Unique cohort identifier within the study.
         *   * @param value the value to set.
   */
  public void setCohortId(java.lang.String value) {
    this.cohortId = value;
  }

  /**
   * Gets the value of the 'sampleCount' field.
   * * Count of samples with non-missing genotypes in this variant from the cohort.
         * This value is used as denominator for genotypeFreq.
         *   */
  public java.lang.Integer getSampleCount() {
    return sampleCount;
  }

  /**
   * Sets the value of the 'sampleCount' field.
   * * Count of samples with non-missing genotypes in this variant from the cohort.
         * This value is used as denominator for genotypeFreq.
         *   * @param value the value to set.
   */
  public void setSampleCount(java.lang.Integer value) {
    this.sampleCount = value;
  }

  /**
   * Gets the value of the 'fileCount' field.
   * * Count of files with samples from the cohort that reported this variant.
         * This value is used as denominator for filterFreq.
         *   */
  public java.lang.Integer getFileCount() {
    return fileCount;
  }

  /**
   * Sets the value of the 'fileCount' field.
   * * Count of files with samples from the cohort that reported this variant.
         * This value is used as denominator for filterFreq.
         *   * @param value the value to set.
   */
  public void setFileCount(java.lang.Integer value) {
    this.fileCount = value;
  }

  /**
   * Gets the value of the 'alleleCount' field.
   * * Total number of alleles in called genotypes. It does not include missing alleles.
         * This value is used as denominator for refAlleleFreq and altAlleleFreq.
         *   */
  public java.lang.Integer getAlleleCount() {
    return alleleCount;
  }

  /**
   * Sets the value of the 'alleleCount' field.
   * * Total number of alleles in called genotypes. It does not include missing alleles.
         * This value is used as denominator for refAlleleFreq and altAlleleFreq.
         *   * @param value the value to set.
   */
  public void setAlleleCount(java.lang.Integer value) {
    this.alleleCount = value;
  }

  /**
   * Gets the value of the 'refAlleleCount' field.
   * * Number of reference alleles found in this variant.
         *   */
  public java.lang.Integer getRefAlleleCount() {
    return refAlleleCount;
  }

  /**
   * Sets the value of the 'refAlleleCount' field.
   * * Number of reference alleles found in this variant.
         *   * @param value the value to set.
   */
  public void setRefAlleleCount(java.lang.Integer value) {
    this.refAlleleCount = value;
  }

  /**
   * Gets the value of the 'altAlleleCount' field.
   * * Number of main alternate alleles found in this variants. It does not include secondary alternates.
         *   */
  public java.lang.Integer getAltAlleleCount() {
    return altAlleleCount;
  }

  /**
   * Sets the value of the 'altAlleleCount' field.
   * * Number of main alternate alleles found in this variants. It does not include secondary alternates.
         *   * @param value the value to set.
   */
  public void setAltAlleleCount(java.lang.Integer value) {
    this.altAlleleCount = value;
  }

  /**
   * Gets the value of the 'refAlleleFreq' field.
   * * Reference allele frequency calculated from refAlleleCount and alleleCount, in the range [0,1]
         *   */
  public java.lang.Float getRefAlleleFreq() {
    return refAlleleFreq;
  }

  /**
   * Sets the value of the 'refAlleleFreq' field.
   * * Reference allele frequency calculated from refAlleleCount and alleleCount, in the range [0,1]
         *   * @param value the value to set.
   */
  public void setRefAlleleFreq(java.lang.Float value) {
    this.refAlleleFreq = value;
  }

  /**
   * Gets the value of the 'altAlleleFreq' field.
   * * Alternate allele frequency calculated from altAlleleCount and alleleCount, in the range [0,1]
         *   */
  public java.lang.Float getAltAlleleFreq() {
    return altAlleleFreq;
  }

  /**
   * Sets the value of the 'altAlleleFreq' field.
   * * Alternate allele frequency calculated from altAlleleCount and alleleCount, in the range [0,1]
         *   * @param value the value to set.
   */
  public void setAltAlleleFreq(java.lang.Float value) {
    this.altAlleleFreq = value;
  }

  /**
   * Gets the value of the 'missingAlleleCount' field.
   * * Number of missing alleles.
         *   */
  public java.lang.Integer getMissingAlleleCount() {
    return missingAlleleCount;
  }

  /**
   * Sets the value of the 'missingAlleleCount' field.
   * * Number of missing alleles.
         *   * @param value the value to set.
   */
  public void setMissingAlleleCount(java.lang.Integer value) {
    this.missingAlleleCount = value;
  }

  /**
   * Gets the value of the 'missingGenotypeCount' field.
   * * Number of genotypes with all alleles missing (e.g. ./.). It does not count partially missing genotypes like "./0" or "./1".
         *   */
  public java.lang.Integer getMissingGenotypeCount() {
    return missingGenotypeCount;
  }

  /**
   * Sets the value of the 'missingGenotypeCount' field.
   * * Number of genotypes with all alleles missing (e.g. ./.). It does not count partially missing genotypes like "./0" or "./1".
         *   * @param value the value to set.
   */
  public void setMissingGenotypeCount(java.lang.Integer value) {
    this.missingGenotypeCount = value;
  }

  /**
   * Gets the value of the 'genotypeCount' field.
   * * Number of occurrences for each genotype.
         * This does not include genotype with all alleles missing (e.g. ./.), but it includes partially missing genotypes like "./0" or "./1".
         * Total sum of counts should be equal to the count of samples.
         *   */
  public java.util.Map getGenotypeCount() {
    return genotypeCount;
  }

  /**
   * Sets the value of the 'genotypeCount' field.
   * * Number of occurrences for each genotype.
         * This does not include genotype with all alleles missing (e.g. ./.), but it includes partially missing genotypes like "./0" or "./1".
         * Total sum of counts should be equal to the count of samples.
         *   * @param value the value to set.
   */
  public void setGenotypeCount(java.util.Map value) {
    this.genotypeCount = value;
  }

  /**
   * Gets the value of the 'genotypeFreq' field.
   * * Genotype frequency for each genotype found calculated from the genotypeCount and samplesCount, in the range [0,1]
         * The sum of frequencies should be 1.
         *   */
  public java.util.Map getGenotypeFreq() {
    return genotypeFreq;
  }

  /**
   * Sets the value of the 'genotypeFreq' field.
   * * Genotype frequency for each genotype found calculated from the genotypeCount and samplesCount, in the range [0,1]
         * The sum of frequencies should be 1.
         *   * @param value the value to set.
   */
  public void setGenotypeFreq(java.util.Map value) {
    this.genotypeFreq = value;
  }

  /**
   * Gets the value of the 'filterCount' field.
   * * The number of occurrences for each FILTER value in files from samples in this cohort reporting this variant.
         * As each file can contain more than one filter value (usually separated by ';'), the total sum of counts could be greater than the count of files.
         *   */
  public java.util.Map getFilterCount() {
    return filterCount;
  }

  /**
   * Sets the value of the 'filterCount' field.
   * * The number of occurrences for each FILTER value in files from samples in this cohort reporting this variant.
         * As each file can contain more than one filter value (usually separated by ';'), the total sum of counts could be greater than the count of files.
         *   * @param value the value to set.
   */
  public void setFilterCount(java.util.Map value) {
    this.filterCount = value;
  }

  /**
   * Gets the value of the 'filterFreq' field.
   * * Frequency of each filter calculated from the filterCount and filesCount, in the range [0,1]
         *   */
  public java.util.Map getFilterFreq() {
    return filterFreq;
  }

  /**
   * Sets the value of the 'filterFreq' field.
   * * Frequency of each filter calculated from the filterCount and filesCount, in the range [0,1]
         *   * @param value the value to set.
   */
  public void setFilterFreq(java.util.Map value) {
    this.filterFreq = value;
  }

  /**
   * Gets the value of the 'qualityCount' field.
   * * The number of files from samples in this cohort reporting this variant with valid QUAL values.
         * This value is used as denominator to obtain the qualityAvg.   */
  public java.lang.Integer getQualityCount() {
    return qualityCount;
  }

  /**
   * Sets the value of the 'qualityCount' field.
   * * The number of files from samples in this cohort reporting this variant with valid QUAL values.
         * This value is used as denominator to obtain the qualityAvg.   * @param value the value to set.
   */
  public void setQualityCount(java.lang.Integer value) {
    this.qualityCount = value;
  }

  /**
   * Gets the value of the 'qualityAvg' field.
   * * The average Quality value for files with valid QUAL values from samples in this cohort reporting this variant.
         * Some files may not have defined the QUAL value, so the sampling could be less than the filesCount.
         *   */
  public java.lang.Float getQualityAvg() {
    return qualityAvg;
  }

  /**
   * Sets the value of the 'qualityAvg' field.
   * * The average Quality value for files with valid QUAL values from samples in this cohort reporting this variant.
         * Some files may not have defined the QUAL value, so the sampling could be less than the filesCount.
         *   * @param value the value to set.
   */
  public void setQualityAvg(java.lang.Float value) {
    this.qualityAvg = value;
  }

  /**
   * Gets the value of the 'maf' field.
   * * Minor allele frequency. Frequency of the less common allele between the reference and the main alternate alleles.
         * This value does not take into acconunt secondary alternates.
         *   */
  public java.lang.Float getMaf() {
    return maf;
  }

  /**
   * Sets the value of the 'maf' field.
   * * Minor allele frequency. Frequency of the less common allele between the reference and the main alternate alleles.
         * This value does not take into acconunt secondary alternates.
         *   * @param value the value to set.
   */
  public void setMaf(java.lang.Float value) {
    this.maf = value;
  }

  /**
   * Gets the value of the 'mgf' field.
   * * Minor genotype frequency. Frequency of the less common genotype seen in this variant.
         * This value takes into account all values from the genotypeFreq map.
         *   */
  public java.lang.Float getMgf() {
    return mgf;
  }

  /**
   * Sets the value of the 'mgf' field.
   * * Minor genotype frequency. Frequency of the less common genotype seen in this variant.
         * This value takes into account all values from the genotypeFreq map.
         *   * @param value the value to set.
   */
  public void setMgf(java.lang.Float value) {
    this.mgf = value;
  }

  /**
   * Gets the value of the 'mafAllele' field.
   * * Allele with minor frequency.
         *   */
  public java.lang.String getMafAllele() {
    return mafAllele;
  }

  /**
   * Sets the value of the 'mafAllele' field.
   * * Allele with minor frequency.
         *   * @param value the value to set.
   */
  public void setMafAllele(java.lang.String value) {
    this.mafAllele = value;
  }

  /**
   * Gets the value of the 'mgfGenotype' field.
   * * Genotype with minor frequency.
         *   */
  public java.lang.String getMgfGenotype() {
    return mgfGenotype;
  }

  /**
   * Sets the value of the 'mgfGenotype' field.
   * * Genotype with minor frequency.
         *   * @param value the value to set.
   */
  public void setMgfGenotype(java.lang.String value) {
    this.mgfGenotype = value;
  }

  /** Creates a new VariantStats RecordBuilder */
  public static org.opencb.biodata.models.variant.avro.VariantStats.Builder newBuilder() {
    return new org.opencb.biodata.models.variant.avro.VariantStats.Builder();
  }
  
  /** Creates a new VariantStats RecordBuilder by copying an existing Builder */
  public static org.opencb.biodata.models.variant.avro.VariantStats.Builder newBuilder(org.opencb.biodata.models.variant.avro.VariantStats.Builder other) {
    return new org.opencb.biodata.models.variant.avro.VariantStats.Builder(other);
  }
  
  /** Creates a new VariantStats RecordBuilder by copying an existing VariantStats instance */
  public static org.opencb.biodata.models.variant.avro.VariantStats.Builder newBuilder(org.opencb.biodata.models.variant.avro.VariantStats other) {
    return new org.opencb.biodata.models.variant.avro.VariantStats.Builder(other);
  }
  
  /**
   * RecordBuilder for VariantStats instances.
   */
  public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBase
    implements org.apache.avro.data.RecordBuilder {

    private java.lang.String cohortId;
    private java.lang.Integer sampleCount;
    private java.lang.Integer fileCount;
    private java.lang.Integer alleleCount;
    private java.lang.Integer refAlleleCount;
    private java.lang.Integer altAlleleCount;
    private java.lang.Float refAlleleFreq;
    private java.lang.Float altAlleleFreq;
    private java.lang.Integer missingAlleleCount;
    private java.lang.Integer missingGenotypeCount;
    private java.util.Map genotypeCount;
    private java.util.Map genotypeFreq;
    private java.util.Map filterCount;
    private java.util.Map filterFreq;
    private java.lang.Integer qualityCount;
    private java.lang.Float qualityAvg;
    private java.lang.Float maf;
    private java.lang.Float mgf;
    private java.lang.String mafAllele;
    private java.lang.String mgfGenotype;

    /** Creates a new Builder */
    private Builder() {
      super(org.opencb.biodata.models.variant.avro.VariantStats.SCHEMA$);
    }
    
    /** Creates a Builder by copying an existing Builder */
    private Builder(org.opencb.biodata.models.variant.avro.VariantStats.Builder other) {
      super(other);
      if (isValidValue(fields()[0], other.cohortId)) {
        this.cohortId = data().deepCopy(fields()[0].schema(), other.cohortId);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.sampleCount)) {
        this.sampleCount = data().deepCopy(fields()[1].schema(), other.sampleCount);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.fileCount)) {
        this.fileCount = data().deepCopy(fields()[2].schema(), other.fileCount);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.alleleCount)) {
        this.alleleCount = data().deepCopy(fields()[3].schema(), other.alleleCount);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.refAlleleCount)) {
        this.refAlleleCount = data().deepCopy(fields()[4].schema(), other.refAlleleCount);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.altAlleleCount)) {
        this.altAlleleCount = data().deepCopy(fields()[5].schema(), other.altAlleleCount);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.refAlleleFreq)) {
        this.refAlleleFreq = data().deepCopy(fields()[6].schema(), other.refAlleleFreq);
        fieldSetFlags()[6] = true;
      }
      if (isValidValue(fields()[7], other.altAlleleFreq)) {
        this.altAlleleFreq = data().deepCopy(fields()[7].schema(), other.altAlleleFreq);
        fieldSetFlags()[7] = true;
      }
      if (isValidValue(fields()[8], other.missingAlleleCount)) {
        this.missingAlleleCount = data().deepCopy(fields()[8].schema(), other.missingAlleleCount);
        fieldSetFlags()[8] = true;
      }
      if (isValidValue(fields()[9], other.missingGenotypeCount)) {
        this.missingGenotypeCount = data().deepCopy(fields()[9].schema(), other.missingGenotypeCount);
        fieldSetFlags()[9] = true;
      }
      if (isValidValue(fields()[10], other.genotypeCount)) {
        this.genotypeCount = data().deepCopy(fields()[10].schema(), other.genotypeCount);
        fieldSetFlags()[10] = true;
      }
      if (isValidValue(fields()[11], other.genotypeFreq)) {
        this.genotypeFreq = data().deepCopy(fields()[11].schema(), other.genotypeFreq);
        fieldSetFlags()[11] = true;
      }
      if (isValidValue(fields()[12], other.filterCount)) {
        this.filterCount = data().deepCopy(fields()[12].schema(), other.filterCount);
        fieldSetFlags()[12] = true;
      }
      if (isValidValue(fields()[13], other.filterFreq)) {
        this.filterFreq = data().deepCopy(fields()[13].schema(), other.filterFreq);
        fieldSetFlags()[13] = true;
      }
      if (isValidValue(fields()[14], other.qualityCount)) {
        this.qualityCount = data().deepCopy(fields()[14].schema(), other.qualityCount);
        fieldSetFlags()[14] = true;
      }
      if (isValidValue(fields()[15], other.qualityAvg)) {
        this.qualityAvg = data().deepCopy(fields()[15].schema(), other.qualityAvg);
        fieldSetFlags()[15] = true;
      }
      if (isValidValue(fields()[16], other.maf)) {
        this.maf = data().deepCopy(fields()[16].schema(), other.maf);
        fieldSetFlags()[16] = true;
      }
      if (isValidValue(fields()[17], other.mgf)) {
        this.mgf = data().deepCopy(fields()[17].schema(), other.mgf);
        fieldSetFlags()[17] = true;
      }
      if (isValidValue(fields()[18], other.mafAllele)) {
        this.mafAllele = data().deepCopy(fields()[18].schema(), other.mafAllele);
        fieldSetFlags()[18] = true;
      }
      if (isValidValue(fields()[19], other.mgfGenotype)) {
        this.mgfGenotype = data().deepCopy(fields()[19].schema(), other.mgfGenotype);
        fieldSetFlags()[19] = true;
      }
    }
    
    /** Creates a Builder by copying an existing VariantStats instance */
    private Builder(org.opencb.biodata.models.variant.avro.VariantStats other) {
            super(org.opencb.biodata.models.variant.avro.VariantStats.SCHEMA$);
      if (isValidValue(fields()[0], other.cohortId)) {
        this.cohortId = data().deepCopy(fields()[0].schema(), other.cohortId);
        fieldSetFlags()[0] = true;
      }
      if (isValidValue(fields()[1], other.sampleCount)) {
        this.sampleCount = data().deepCopy(fields()[1].schema(), other.sampleCount);
        fieldSetFlags()[1] = true;
      }
      if (isValidValue(fields()[2], other.fileCount)) {
        this.fileCount = data().deepCopy(fields()[2].schema(), other.fileCount);
        fieldSetFlags()[2] = true;
      }
      if (isValidValue(fields()[3], other.alleleCount)) {
        this.alleleCount = data().deepCopy(fields()[3].schema(), other.alleleCount);
        fieldSetFlags()[3] = true;
      }
      if (isValidValue(fields()[4], other.refAlleleCount)) {
        this.refAlleleCount = data().deepCopy(fields()[4].schema(), other.refAlleleCount);
        fieldSetFlags()[4] = true;
      }
      if (isValidValue(fields()[5], other.altAlleleCount)) {
        this.altAlleleCount = data().deepCopy(fields()[5].schema(), other.altAlleleCount);
        fieldSetFlags()[5] = true;
      }
      if (isValidValue(fields()[6], other.refAlleleFreq)) {
        this.refAlleleFreq = data().deepCopy(fields()[6].schema(), other.refAlleleFreq);
        fieldSetFlags()[6] = true;
      }
      if (isValidValue(fields()[7], other.altAlleleFreq)) {
        this.altAlleleFreq = data().deepCopy(fields()[7].schema(), other.altAlleleFreq);
        fieldSetFlags()[7] = true;
      }
      if (isValidValue(fields()[8], other.missingAlleleCount)) {
        this.missingAlleleCount = data().deepCopy(fields()[8].schema(), other.missingAlleleCount);
        fieldSetFlags()[8] = true;
      }
      if (isValidValue(fields()[9], other.missingGenotypeCount)) {
        this.missingGenotypeCount = data().deepCopy(fields()[9].schema(), other.missingGenotypeCount);
        fieldSetFlags()[9] = true;
      }
      if (isValidValue(fields()[10], other.genotypeCount)) {
        this.genotypeCount = data().deepCopy(fields()[10].schema(), other.genotypeCount);
        fieldSetFlags()[10] = true;
      }
      if (isValidValue(fields()[11], other.genotypeFreq)) {
        this.genotypeFreq = data().deepCopy(fields()[11].schema(), other.genotypeFreq);
        fieldSetFlags()[11] = true;
      }
      if (isValidValue(fields()[12], other.filterCount)) {
        this.filterCount = data().deepCopy(fields()[12].schema(), other.filterCount);
        fieldSetFlags()[12] = true;
      }
      if (isValidValue(fields()[13], other.filterFreq)) {
        this.filterFreq = data().deepCopy(fields()[13].schema(), other.filterFreq);
        fieldSetFlags()[13] = true;
      }
      if (isValidValue(fields()[14], other.qualityCount)) {
        this.qualityCount = data().deepCopy(fields()[14].schema(), other.qualityCount);
        fieldSetFlags()[14] = true;
      }
      if (isValidValue(fields()[15], other.qualityAvg)) {
        this.qualityAvg = data().deepCopy(fields()[15].schema(), other.qualityAvg);
        fieldSetFlags()[15] = true;
      }
      if (isValidValue(fields()[16], other.maf)) {
        this.maf = data().deepCopy(fields()[16].schema(), other.maf);
        fieldSetFlags()[16] = true;
      }
      if (isValidValue(fields()[17], other.mgf)) {
        this.mgf = data().deepCopy(fields()[17].schema(), other.mgf);
        fieldSetFlags()[17] = true;
      }
      if (isValidValue(fields()[18], other.mafAllele)) {
        this.mafAllele = data().deepCopy(fields()[18].schema(), other.mafAllele);
        fieldSetFlags()[18] = true;
      }
      if (isValidValue(fields()[19], other.mgfGenotype)) {
        this.mgfGenotype = data().deepCopy(fields()[19].schema(), other.mgfGenotype);
        fieldSetFlags()[19] = true;
      }
    }

    /** Gets the value of the 'cohortId' field */
    public java.lang.String getCohortId() {
      return cohortId;
    }
    
    /** Sets the value of the 'cohortId' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setCohortId(java.lang.String value) {
      validate(fields()[0], value);
      this.cohortId = value;
      fieldSetFlags()[0] = true;
      return this; 
    }
    
    /** Checks whether the 'cohortId' field has been set */
    public boolean hasCohortId() {
      return fieldSetFlags()[0];
    }
    
    /** Clears the value of the 'cohortId' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearCohortId() {
      cohortId = null;
      fieldSetFlags()[0] = false;
      return this;
    }

    /** Gets the value of the 'sampleCount' field */
    public java.lang.Integer getSampleCount() {
      return sampleCount;
    }
    
    /** Sets the value of the 'sampleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setSampleCount(java.lang.Integer value) {
      validate(fields()[1], value);
      this.sampleCount = value;
      fieldSetFlags()[1] = true;
      return this; 
    }
    
    /** Checks whether the 'sampleCount' field has been set */
    public boolean hasSampleCount() {
      return fieldSetFlags()[1];
    }
    
    /** Clears the value of the 'sampleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearSampleCount() {
      sampleCount = null;
      fieldSetFlags()[1] = false;
      return this;
    }

    /** Gets the value of the 'fileCount' field */
    public java.lang.Integer getFileCount() {
      return fileCount;
    }
    
    /** Sets the value of the 'fileCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setFileCount(java.lang.Integer value) {
      validate(fields()[2], value);
      this.fileCount = value;
      fieldSetFlags()[2] = true;
      return this; 
    }
    
    /** Checks whether the 'fileCount' field has been set */
    public boolean hasFileCount() {
      return fieldSetFlags()[2];
    }
    
    /** Clears the value of the 'fileCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearFileCount() {
      fileCount = null;
      fieldSetFlags()[2] = false;
      return this;
    }

    /** Gets the value of the 'alleleCount' field */
    public java.lang.Integer getAlleleCount() {
      return alleleCount;
    }
    
    /** Sets the value of the 'alleleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setAlleleCount(java.lang.Integer value) {
      validate(fields()[3], value);
      this.alleleCount = value;
      fieldSetFlags()[3] = true;
      return this; 
    }
    
    /** Checks whether the 'alleleCount' field has been set */
    public boolean hasAlleleCount() {
      return fieldSetFlags()[3];
    }
    
    /** Clears the value of the 'alleleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearAlleleCount() {
      alleleCount = null;
      fieldSetFlags()[3] = false;
      return this;
    }

    /** Gets the value of the 'refAlleleCount' field */
    public java.lang.Integer getRefAlleleCount() {
      return refAlleleCount;
    }
    
    /** Sets the value of the 'refAlleleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setRefAlleleCount(java.lang.Integer value) {
      validate(fields()[4], value);
      this.refAlleleCount = value;
      fieldSetFlags()[4] = true;
      return this; 
    }
    
    /** Checks whether the 'refAlleleCount' field has been set */
    public boolean hasRefAlleleCount() {
      return fieldSetFlags()[4];
    }
    
    /** Clears the value of the 'refAlleleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearRefAlleleCount() {
      refAlleleCount = null;
      fieldSetFlags()[4] = false;
      return this;
    }

    /** Gets the value of the 'altAlleleCount' field */
    public java.lang.Integer getAltAlleleCount() {
      return altAlleleCount;
    }
    
    /** Sets the value of the 'altAlleleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setAltAlleleCount(java.lang.Integer value) {
      validate(fields()[5], value);
      this.altAlleleCount = value;
      fieldSetFlags()[5] = true;
      return this; 
    }
    
    /** Checks whether the 'altAlleleCount' field has been set */
    public boolean hasAltAlleleCount() {
      return fieldSetFlags()[5];
    }
    
    /** Clears the value of the 'altAlleleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearAltAlleleCount() {
      altAlleleCount = null;
      fieldSetFlags()[5] = false;
      return this;
    }

    /** Gets the value of the 'refAlleleFreq' field */
    public java.lang.Float getRefAlleleFreq() {
      return refAlleleFreq;
    }
    
    /** Sets the value of the 'refAlleleFreq' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setRefAlleleFreq(java.lang.Float value) {
      validate(fields()[6], value);
      this.refAlleleFreq = value;
      fieldSetFlags()[6] = true;
      return this; 
    }
    
    /** Checks whether the 'refAlleleFreq' field has been set */
    public boolean hasRefAlleleFreq() {
      return fieldSetFlags()[6];
    }
    
    /** Clears the value of the 'refAlleleFreq' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearRefAlleleFreq() {
      refAlleleFreq = null;
      fieldSetFlags()[6] = false;
      return this;
    }

    /** Gets the value of the 'altAlleleFreq' field */
    public java.lang.Float getAltAlleleFreq() {
      return altAlleleFreq;
    }
    
    /** Sets the value of the 'altAlleleFreq' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setAltAlleleFreq(java.lang.Float value) {
      validate(fields()[7], value);
      this.altAlleleFreq = value;
      fieldSetFlags()[7] = true;
      return this; 
    }
    
    /** Checks whether the 'altAlleleFreq' field has been set */
    public boolean hasAltAlleleFreq() {
      return fieldSetFlags()[7];
    }
    
    /** Clears the value of the 'altAlleleFreq' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearAltAlleleFreq() {
      altAlleleFreq = null;
      fieldSetFlags()[7] = false;
      return this;
    }

    /** Gets the value of the 'missingAlleleCount' field */
    public java.lang.Integer getMissingAlleleCount() {
      return missingAlleleCount;
    }
    
    /** Sets the value of the 'missingAlleleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setMissingAlleleCount(java.lang.Integer value) {
      validate(fields()[8], value);
      this.missingAlleleCount = value;
      fieldSetFlags()[8] = true;
      return this; 
    }
    
    /** Checks whether the 'missingAlleleCount' field has been set */
    public boolean hasMissingAlleleCount() {
      return fieldSetFlags()[8];
    }
    
    /** Clears the value of the 'missingAlleleCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearMissingAlleleCount() {
      missingAlleleCount = null;
      fieldSetFlags()[8] = false;
      return this;
    }

    /** Gets the value of the 'missingGenotypeCount' field */
    public java.lang.Integer getMissingGenotypeCount() {
      return missingGenotypeCount;
    }
    
    /** Sets the value of the 'missingGenotypeCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setMissingGenotypeCount(java.lang.Integer value) {
      validate(fields()[9], value);
      this.missingGenotypeCount = value;
      fieldSetFlags()[9] = true;
      return this; 
    }
    
    /** Checks whether the 'missingGenotypeCount' field has been set */
    public boolean hasMissingGenotypeCount() {
      return fieldSetFlags()[9];
    }
    
    /** Clears the value of the 'missingGenotypeCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearMissingGenotypeCount() {
      missingGenotypeCount = null;
      fieldSetFlags()[9] = false;
      return this;
    }

    /** Gets the value of the 'genotypeCount' field */
    public java.util.Map getGenotypeCount() {
      return genotypeCount;
    }
    
    /** Sets the value of the 'genotypeCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setGenotypeCount(java.util.Map value) {
      validate(fields()[10], value);
      this.genotypeCount = value;
      fieldSetFlags()[10] = true;
      return this; 
    }
    
    /** Checks whether the 'genotypeCount' field has been set */
    public boolean hasGenotypeCount() {
      return fieldSetFlags()[10];
    }
    
    /** Clears the value of the 'genotypeCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearGenotypeCount() {
      genotypeCount = null;
      fieldSetFlags()[10] = false;
      return this;
    }

    /** Gets the value of the 'genotypeFreq' field */
    public java.util.Map getGenotypeFreq() {
      return genotypeFreq;
    }
    
    /** Sets the value of the 'genotypeFreq' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setGenotypeFreq(java.util.Map value) {
      validate(fields()[11], value);
      this.genotypeFreq = value;
      fieldSetFlags()[11] = true;
      return this; 
    }
    
    /** Checks whether the 'genotypeFreq' field has been set */
    public boolean hasGenotypeFreq() {
      return fieldSetFlags()[11];
    }
    
    /** Clears the value of the 'genotypeFreq' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearGenotypeFreq() {
      genotypeFreq = null;
      fieldSetFlags()[11] = false;
      return this;
    }

    /** Gets the value of the 'filterCount' field */
    public java.util.Map getFilterCount() {
      return filterCount;
    }
    
    /** Sets the value of the 'filterCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setFilterCount(java.util.Map value) {
      validate(fields()[12], value);
      this.filterCount = value;
      fieldSetFlags()[12] = true;
      return this; 
    }
    
    /** Checks whether the 'filterCount' field has been set */
    public boolean hasFilterCount() {
      return fieldSetFlags()[12];
    }
    
    /** Clears the value of the 'filterCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearFilterCount() {
      filterCount = null;
      fieldSetFlags()[12] = false;
      return this;
    }

    /** Gets the value of the 'filterFreq' field */
    public java.util.Map getFilterFreq() {
      return filterFreq;
    }
    
    /** Sets the value of the 'filterFreq' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setFilterFreq(java.util.Map value) {
      validate(fields()[13], value);
      this.filterFreq = value;
      fieldSetFlags()[13] = true;
      return this; 
    }
    
    /** Checks whether the 'filterFreq' field has been set */
    public boolean hasFilterFreq() {
      return fieldSetFlags()[13];
    }
    
    /** Clears the value of the 'filterFreq' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearFilterFreq() {
      filterFreq = null;
      fieldSetFlags()[13] = false;
      return this;
    }

    /** Gets the value of the 'qualityCount' field */
    public java.lang.Integer getQualityCount() {
      return qualityCount;
    }
    
    /** Sets the value of the 'qualityCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setQualityCount(java.lang.Integer value) {
      validate(fields()[14], value);
      this.qualityCount = value;
      fieldSetFlags()[14] = true;
      return this; 
    }
    
    /** Checks whether the 'qualityCount' field has been set */
    public boolean hasQualityCount() {
      return fieldSetFlags()[14];
    }
    
    /** Clears the value of the 'qualityCount' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearQualityCount() {
      qualityCount = null;
      fieldSetFlags()[14] = false;
      return this;
    }

    /** Gets the value of the 'qualityAvg' field */
    public java.lang.Float getQualityAvg() {
      return qualityAvg;
    }
    
    /** Sets the value of the 'qualityAvg' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setQualityAvg(java.lang.Float value) {
      validate(fields()[15], value);
      this.qualityAvg = value;
      fieldSetFlags()[15] = true;
      return this; 
    }
    
    /** Checks whether the 'qualityAvg' field has been set */
    public boolean hasQualityAvg() {
      return fieldSetFlags()[15];
    }
    
    /** Clears the value of the 'qualityAvg' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearQualityAvg() {
      qualityAvg = null;
      fieldSetFlags()[15] = false;
      return this;
    }

    /** Gets the value of the 'maf' field */
    public java.lang.Float getMaf() {
      return maf;
    }
    
    /** Sets the value of the 'maf' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setMaf(java.lang.Float value) {
      validate(fields()[16], value);
      this.maf = value;
      fieldSetFlags()[16] = true;
      return this; 
    }
    
    /** Checks whether the 'maf' field has been set */
    public boolean hasMaf() {
      return fieldSetFlags()[16];
    }
    
    /** Clears the value of the 'maf' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearMaf() {
      maf = null;
      fieldSetFlags()[16] = false;
      return this;
    }

    /** Gets the value of the 'mgf' field */
    public java.lang.Float getMgf() {
      return mgf;
    }
    
    /** Sets the value of the 'mgf' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setMgf(java.lang.Float value) {
      validate(fields()[17], value);
      this.mgf = value;
      fieldSetFlags()[17] = true;
      return this; 
    }
    
    /** Checks whether the 'mgf' field has been set */
    public boolean hasMgf() {
      return fieldSetFlags()[17];
    }
    
    /** Clears the value of the 'mgf' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearMgf() {
      mgf = null;
      fieldSetFlags()[17] = false;
      return this;
    }

    /** Gets the value of the 'mafAllele' field */
    public java.lang.String getMafAllele() {
      return mafAllele;
    }
    
    /** Sets the value of the 'mafAllele' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setMafAllele(java.lang.String value) {
      validate(fields()[18], value);
      this.mafAllele = value;
      fieldSetFlags()[18] = true;
      return this; 
    }
    
    /** Checks whether the 'mafAllele' field has been set */
    public boolean hasMafAllele() {
      return fieldSetFlags()[18];
    }
    
    /** Clears the value of the 'mafAllele' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearMafAllele() {
      mafAllele = null;
      fieldSetFlags()[18] = false;
      return this;
    }

    /** Gets the value of the 'mgfGenotype' field */
    public java.lang.String getMgfGenotype() {
      return mgfGenotype;
    }
    
    /** Sets the value of the 'mgfGenotype' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder setMgfGenotype(java.lang.String value) {
      validate(fields()[19], value);
      this.mgfGenotype = value;
      fieldSetFlags()[19] = true;
      return this; 
    }
    
    /** Checks whether the 'mgfGenotype' field has been set */
    public boolean hasMgfGenotype() {
      return fieldSetFlags()[19];
    }
    
    /** Clears the value of the 'mgfGenotype' field */
    public org.opencb.biodata.models.variant.avro.VariantStats.Builder clearMgfGenotype() {
      mgfGenotype = null;
      fieldSetFlags()[19] = false;
      return this;
    }

    @Override
    public VariantStats build() {
      try {
        VariantStats record = new VariantStats();
        record.cohortId = fieldSetFlags()[0] ? this.cohortId : (java.lang.String) defaultValue(fields()[0]);
        record.sampleCount = fieldSetFlags()[1] ? this.sampleCount : (java.lang.Integer) defaultValue(fields()[1]);
        record.fileCount = fieldSetFlags()[2] ? this.fileCount : (java.lang.Integer) defaultValue(fields()[2]);
        record.alleleCount = fieldSetFlags()[3] ? this.alleleCount : (java.lang.Integer) defaultValue(fields()[3]);
        record.refAlleleCount = fieldSetFlags()[4] ? this.refAlleleCount : (java.lang.Integer) defaultValue(fields()[4]);
        record.altAlleleCount = fieldSetFlags()[5] ? this.altAlleleCount : (java.lang.Integer) defaultValue(fields()[5]);
        record.refAlleleFreq = fieldSetFlags()[6] ? this.refAlleleFreq : (java.lang.Float) defaultValue(fields()[6]);
        record.altAlleleFreq = fieldSetFlags()[7] ? this.altAlleleFreq : (java.lang.Float) defaultValue(fields()[7]);
        record.missingAlleleCount = fieldSetFlags()[8] ? this.missingAlleleCount : (java.lang.Integer) defaultValue(fields()[8]);
        record.missingGenotypeCount = fieldSetFlags()[9] ? this.missingGenotypeCount : (java.lang.Integer) defaultValue(fields()[9]);
        record.genotypeCount = fieldSetFlags()[10] ? this.genotypeCount : (java.util.Map) defaultValue(fields()[10]);
        record.genotypeFreq = fieldSetFlags()[11] ? this.genotypeFreq : (java.util.Map) defaultValue(fields()[11]);
        record.filterCount = fieldSetFlags()[12] ? this.filterCount : (java.util.Map) defaultValue(fields()[12]);
        record.filterFreq = fieldSetFlags()[13] ? this.filterFreq : (java.util.Map) defaultValue(fields()[13]);
        record.qualityCount = fieldSetFlags()[14] ? this.qualityCount : (java.lang.Integer) defaultValue(fields()[14]);
        record.qualityAvg = fieldSetFlags()[15] ? this.qualityAvg : (java.lang.Float) defaultValue(fields()[15]);
        record.maf = fieldSetFlags()[16] ? this.maf : (java.lang.Float) defaultValue(fields()[16]);
        record.mgf = fieldSetFlags()[17] ? this.mgf : (java.lang.Float) defaultValue(fields()[17]);
        record.mafAllele = fieldSetFlags()[18] ? this.mafAllele : (java.lang.String) defaultValue(fields()[18]);
        record.mgfGenotype = fieldSetFlags()[19] ? this.mgfGenotype : (java.lang.String) defaultValue(fields()[19]);
        return record;
      } catch (Exception e) {
        throw new org.apache.avro.AvroRuntimeException(e);
      }
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy