src/core/net/sf/basedb/util/IntensityCalculator.java

Code
Comments
Other
Rev Date Author Line
1575 07 Nov 05 nicklas 1 /*
1575 07 Nov 05 nicklas 2   $Id$
1575 07 Nov 05 nicklas 3
3675 16 Aug 07 jari 4   Copyright (C) 2005 Nicklas Nordborg
4889 06 Apr 09 nicklas 5   Copyright (C) 2006 Jari Häkkinen, Martin Svensson, Gregory Vincic
1575 07 Nov 05 nicklas 6   
2304 22 May 06 jari 7   This file is part of BASE - BioArray Software Environment.
2304 22 May 06 jari 8   Available at http://base.thep.lu.se/
1575 07 Nov 05 nicklas 9
1575 07 Nov 05 nicklas 10   BASE is free software; you can redistribute it and/or
1575 07 Nov 05 nicklas 11   modify it under the terms of the GNU General Public License
4479 05 Sep 08 jari 12   as published by the Free Software Foundation; either version 3
1575 07 Nov 05 nicklas 13   of the License, or (at your option) any later version.
1575 07 Nov 05 nicklas 14
1575 07 Nov 05 nicklas 15   BASE is distributed in the hope that it will be useful,
1575 07 Nov 05 nicklas 16   but WITHOUT ANY WARRANTY; without even the implied warranty of
1575 07 Nov 05 nicklas 17   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1575 07 Nov 05 nicklas 18   GNU General Public License for more details.
1575 07 Nov 05 nicklas 19
1575 07 Nov 05 nicklas 20   You should have received a copy of the GNU General Public License
4515 11 Sep 08 jari 21   along with BASE. If not, see <http://www.gnu.org/licenses/>.
1575 07 Nov 05 nicklas 22 */
1575 07 Nov 05 nicklas 23 package net.sf.basedb.util;
1575 07 Nov 05 nicklas 24
2601 29 Aug 06 martin 25 import java.util.Collection;
2601 29 Aug 06 martin 26
2601 29 Aug 06 martin 27 import net.sf.basedb.core.DbControl;
2601 29 Aug 06 martin 28 import net.sf.basedb.core.Experiment;
2601 29 Aug 06 martin 29 import net.sf.basedb.core.Job;
2601 29 Aug 06 martin 30 import net.sf.basedb.core.ProgressReporter;
2601 29 Aug 06 martin 31 import net.sf.basedb.core.RawDataType;
1575 07 Nov 05 nicklas 32 import net.sf.basedb.core.data.RawData;
1575 07 Nov 05 nicklas 33
1575 07 Nov 05 nicklas 34 /**
1575 07 Nov 05 nicklas 35   This interface is used together with the <code>IntensityCalculatorUtil</code>
1575 07 Nov 05 nicklas 36   class to help a plugin calculate intensities from raw data spots. A plugin
1575 07 Nov 05 nicklas 37   must supply an implementation of this interface to be able to use the
1958 09 Feb 06 gregory 38   {@link IntensityCalculatorUtil#createRootBioAssaySet(DbControl, Experiment, Collection, Job, IntensityCalculator, ProgressReporter)}.
1575 07 Nov 05 nicklas 39   
1575 07 Nov 05 nicklas 40   <p>
1575 07 Nov 05 nicklas 41   One simple but powerful implementation is available from the {@link 
1635 18 Nov 05 nicklas 42   IntensityCalculatorUtil#createJepIntensityCalculator(DbControl, RawDataType, String[])}
1575 07 Nov 05 nicklas 43   It creates an intensity calculator that parses a string with a mathematical 
1575 07 Nov 05 nicklas 44   expression.
1575 07 Nov 05 nicklas 45   
1575 07 Nov 05 nicklas 46   @author Nicklas
1575 07 Nov 05 nicklas 47   @version 2.0
1575 07 Nov 05 nicklas 48   @base.modified $Date$
1575 07 Nov 05 nicklas 49 */
1575 07 Nov 05 nicklas 50 public interface IntensityCalculator
1575 07 Nov 05 nicklas 51 {
1575 07 Nov 05 nicklas 52   /**
1575 07 Nov 05 nicklas 53     Calculate intensities from a raw data spot.
1575 07 Nov 05 nicklas 54     
1575 07 Nov 05 nicklas 55     @param rawData The raw data object the intensities should
1575 07 Nov 05 nicklas 56       be calculated from
1575 07 Nov 05 nicklas 57     @return An array of floats, or null if no intensities could
1575 07 Nov 05 nicklas 58       be calculated
1575 07 Nov 05 nicklas 59   */
1575 07 Nov 05 nicklas 60   public float[] calculateIntensities(RawData rawData);
1575 07 Nov 05 nicklas 61 }