/// <summary> /// Set peak ID /// </summary> /// <param name="dbData">DB data</param> /// <param name="item">File data item</param> /// <returns>error code</returns> private SIMCA_READ_ERR_CODE SetPeakId(SimcaDbData dbData, SimcaDataItem item) { if (this.DataType != SIMCA_DATA_TYPE.SCORE_PLOT) { item.PeakId = -1; if (this.HasRt && _secondaryIdIndexList.Count() >= 2) { double rt, mz; if (!item.TryGetDoubleValue(_secondaryIdIndexList[0], out rt)) { return(SIMCA_READ_ERR_CODE.NG_FORMAT); } if (!item.TryGetDoubleValue(_secondaryIdIndexList[1], out mz)) { return(SIMCA_READ_ERR_CODE.NG_FORMAT); } item.PeakId = dbData.FindPeakId(rt, mz); } else if (!this.HasRt && _secondaryIdIndexList.Count() >= 1) { double mz; if (!item.TryGetDoubleValue(_secondaryIdIndexList[0], out mz)) { return(SIMCA_READ_ERR_CODE.NG_FORMAT); } item.PeakId = dbData.FindPeakId(mz); } } return(SIMCA_READ_ERR_CODE.OK); }
/// <summary> /// Check skip data /// </summary> /// <param name="dbData">DB data</param> /// <param name="item">File data item</param> /// <returns>error code</returns> private SIMCA_READ_ERR_CODE CheckSkipData(SimcaDbData dbData, SimcaDataItem item) { if (this.DataType == SIMCA_DATA_TYPE.SCORE_PLOT) { return(SIMCA_READ_ERR_CODE.OK); } double dummy; int count = 0; foreach (int index in _secondaryIdIndexList) { if (!item.TryGetDoubleValue(index, out dummy)) { return(SIMCA_READ_ERR_CODE.SKIP); } count++; if (count >= 2) { break; } } foreach (int index in _dataIndexList) { if (!item.TryGetDoubleValue(index, out dummy)) { return(SIMCA_READ_ERR_CODE.SKIP); } if (this.DataType == SIMCA_DATA_TYPE.S_PLOT) { if (!item.TryGetDoubleValue(index + 1, out dummy)) { return(SIMCA_READ_ERR_CODE.SKIP); } } } return(SIMCA_READ_ERR_CODE.OK); }