Class FirstPassSectionSpotsParser
- All Implemented Interfaces:
BaseFileSectionParser
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.2The 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 Summary
Modifier and TypeFieldDescriptionprivate final DbControl
private final BaseFileInfo
private boolean
private long
private final BioAssaySet
private final long
static final String
The section of the BASEfile this parser can parse, eg.private int
private List<SpotIntensityParser>
private final String
-
Constructor Summary
ConstructorDescriptionFirstPassSectionSpotsParser
(DbControl dc, BaseFileInfo info, BioAssaySet parent) Creates a new 'section spot' parser for the first pass. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a spot intensity parser to the list of used parsers.void
parseSection
(BaseFileParser parser, FlatFileParser ffp) Parse the current section.
-
Field Details
-
SECTION
The section of the BASEfile this parser can parse, eg. 'spots'.- See Also:
-
dc
-
info
-
parent
-
totalBytes
-
progressReportInterval
private final long progressReportInterval -
nextProgressReport
private long nextProgressReport -
sectionCount
private int sectionCount -
mapZeroToNull
private boolean mapZeroToNull -
spotIntensityParsers
-
-
Constructor Details
-
FirstPassSectionSpotsParser
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 accessinfo
- Information about the file we are parsingparent
- The parent bioassay set
-
-
Method Details
-
parseSection
Description copied from interface:BaseFileSectionParser
Parse the current section. The current parse position is right after the section marker. If the section contains headers theFlatFileParser.parseHeaders()
must be called. UseFlatFileParser.nextData()
to parse data lines.- Specified by:
parseSection
in interfaceBaseFileSectionParser
- Parameters:
parser
- The master BASEfile parser (can be used for reporting progress, checking for interrupts, etc.)ffp
- The actual file parser, use this to get the data- Throws:
IOException
- If there is a problem reading the data
-
addSpotIntensityParser
Adds a spot intensity parser to the list of used parsers. The first found parser that signals that all required assay fields are present will be used to parse the spot intensity data.- See Also:
-