Class FirstPassSectionSpotsParser

  • All Implemented Interfaces:
    BaseFileSectionParser

    public class FirstPassSectionSpotsParser
    extends Object
    implements BaseFileSectionParser
    Parses a 'spots' section of a BASEfile with bioassay set spot data. This section is optional but can also appear more than once (eg. serial BASEfile). The section must have an 'assays' header that contains the id:s of the bioassays that have spot data in this section. The id values should either reference an id from the 'assays' section or the id of an existing bioassay in the database.

    The section must also contain a 'columns' header that includes at least 'position', 'reporter' and 'assayData' columns. The 'assayData' is a meta column that expands to the columns defined by the required 'assayFields' header. This header must define as many 'intensityN' columns as there are channels in the experiment. For two-channel data, it may instead optionally use M (l2ratio1_2) and A (l10intgmean1_2). Columns with extra values can be defined by including a 'setExtraFloats' header. This header just enumerates the extra columns. A macthing column must also be presen in the 'assayFields' header.

    NOTE! Column names can be redefined by calling BaseFileParser.setRedefinedColumnName(String, String, String).

    Here is an example of the headers and the first data line of a matrix BASEfile which has two two-channel assays and one extra value column.

    section spots
    assays  101     102
    columns position        reporter        assayData
    assayFields intensity1 intensity2 extra1
    setExtraFloats extra1
    %
    1       1       1.0     2.0     0.5     2.0     3.0     0.2
    
    The first pass will check the headers and extract position/reporter mappings. This is important because we need to know if the child bioassay set has the same or a different position/reporter mapping than the parent bioassay set.
    Version:
    2.14
    Author:
    Nicklas
    Last modified
    $Date: 2019-03-20 14:31:03 +0100 (ons, 20 mars 2019) $
    • Field Detail

      • SECTION

        public static final String SECTION
        The section of the BASEfile this parser can parse, eg. 'spots'.
        See Also:
        Constant Field Values
      • totalBytes

        private final String totalBytes
      • progressReportInterval

        private final long progressReportInterval
      • nextProgressReport

        private long nextProgressReport
      • sectionCount

        private int sectionCount
      • mapZeroToNull

        private boolean mapZeroToNull
    • Constructor Detail

      • FirstPassSectionSpotsParser

        public FirstPassSectionSpotsParser​(DbControl dc,
                                           BaseFileInfo info,
                                           BioAssaySet parent)
        Creates a new 'section spot' parser for the first pass. This parser will extract header information and position/reporter mapping information.
        Parameters:
        dc - A DbControl to use for database access
        info - Information about the file we are parsing
        parent - The parent bioassay set