/* * Copyright (c) 2009 The Jackson Laboratory * * This software was developed by Gary Churchill's Lab at The Jackson * Laboratory (see http://research.jax.org/faculty/churchill). * * This is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this software. If not, see <http://www.gnu.org/licenses/>. */ package org.jax.qtl.scan; import org.jax.qtl.cross.GeneticMarker; /** * A java representation of the R scanone summary object * @author <A HREF="mailto:keith.sheppard@jax.org">Keith Sheppard</A> */ public class ScanOneSummary { /** * A simple type for a scanone summary row */ public static class ScanOneSummaryRow { private final GeneticMarker marker; private final double lodScore; private final double pValue; /** * Constructor * @param marker * see {@link #getMarker()} * @param lodScore * see {@link #getLodScore()} * @param pValue * see {@link #getPValue()} */ public ScanOneSummaryRow( GeneticMarker marker, double lodScore, double pValue) { this.marker = marker; this.lodScore = lodScore; this.pValue = pValue; } /** * Getter for the marker * @return the marker */ public GeneticMarker getMarker() { return this.marker; } /** * Getter for the lod score * @return the lodScore */ public double getLodScore() { return this.lodScore; } /** * Getter for the pvalue * @return the pValue */ public double getPValue() { return this.pValue; } } private final ScanOneSummaryRow[] scanOneSummaryRows; private final boolean pValuesAreValid; /** * Constructor * @param scanOneSummaryRows * see {@link #getScanOneSummaryRows()} * @param pValuesAreValid * see {@link #getPValuesAreValid()} */ public ScanOneSummary( ScanOneSummaryRow[] scanOneSummaryRows, boolean pValuesAreValid) { this.scanOneSummaryRows = scanOneSummaryRows; this.pValuesAreValid = pValuesAreValid; } /** * Getter for determining if the p-values are valid or not * @return * true iff the p-values are valid */ public boolean getPValuesAreValid() { return this.pValuesAreValid; } /** * Getter for the scan one summary rows * @return * the scan one summary rows */ public ScanOneSummaryRow[] getScanOneSummaryRows() { return this.scanOneSummaryRows; } }