Skip to content
Merged
28 changes: 13 additions & 15 deletions src/MSDIAL5/MsdialCore/Export/AlignmentSdfExporter.cs
Original file line number Diff line number Diff line change
@@ -1,28 +1,26 @@
using CompMs.MsdialCore.DataObj;
using CompMs.MsdialCore.MSDec;
using CompMs.MsdialCore.Parameter;
using System;
using System.IO;

namespace CompMs.MsdialCore.Export;

public sealed class AlignmentSdfExporter : IAlignmentSpectraExporter
{
private readonly bool _exportNoMs2Molecule;
private readonly bool _set2dCoordinates;
public AlignmentSdfExporter(bool exportNoMs2Molecule, bool set2dCoordinates)
private readonly ParameterBase _parameter;
private bool _exportNoMs2Peak;
public AlignmentSdfExporter(bool exportNoMs2Peak, ParameterBase parameter)
{
_exportNoMs2Molecule = exportNoMs2Molecule;
_set2dCoordinates = set2dCoordinates;
_exportNoMs2Peak = exportNoMs2Peak;
_parameter = parameter ?? throw new ArgumentNullException(nameof(parameter));
}
public AlignmentSdfExporter() : this(exportNoMs2Molecule: true, set2dCoordinates: true) { }

void IAlignmentSpectraExporter.Export(Stream stream, AlignmentSpotProperty spot, MSDecResult msdecResult)
public void Export(Stream stream, AlignmentSpotProperty spot, MSDecResult msdecResult)
{
Export(stream, spot, msdecResult, _exportNoMs2Peak, _parameter);
}
public void Export(Stream stream, AlignmentSpotProperty spot, MSDecResult msdecResult, bool exportNoMs2Peak, ParameterBase parameter)
{
SpectraExport.SaveSpectraTableAsSdfFormat(
stream,
spot,
msdecResult.Spectrum,
_exportNoMs2Molecule,
_set2dCoordinates
);
SpectraExport.SaveSpectraTableAsSdfFormat(stream, spot, msdecResult.Spectrum, exportNoMs2Peak, parameter);
}
}
13 changes: 7 additions & 6 deletions src/MSDIAL5/MsdialCore/Export/AnalysisSdfExporter.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using CompMs.MsdialCore.DataObj;
using CompMs.MsdialCore.Parameter;
using CompMs.MsdialCore.Parser;
using System;
using System.IO;
Expand All @@ -8,12 +9,12 @@ namespace CompMs.MsdialCore.Export
public sealed class AnalysisSdfExporter : IAnalysisExporter<ChromatogramPeakFeatureCollection>
{
private readonly Func<AnalysisFileBean, IMsScanPropertyLoader<ChromatogramPeakFeature>> _loaderFactory;

public AnalysisSdfExporter(Func<AnalysisFileBean, IMsScanPropertyLoader<ChromatogramPeakFeature>> loaderFuctory) {
private readonly ParameterBase _parameter;
private bool _exportNoMs2Peak = false;
public AnalysisSdfExporter(Func<AnalysisFileBean, IMsScanPropertyLoader<ChromatogramPeakFeature>> loaderFuctory,ParameterBase parameter) {
_loaderFactory = loaderFuctory ?? throw new ArgumentNullException(nameof(loaderFuctory));
_parameter = parameter ?? throw new ArgumentNullException(nameof(parameter));
}
private readonly bool _exportNoMs2Molecule = true;
private readonly bool _set2dCoordinates = true;

void IAnalysisExporter<ChromatogramPeakFeatureCollection>.Export(Stream stream, AnalysisFileBean analysisFile, ChromatogramPeakFeatureCollection peakFeatureCollection, ExportStyle exportStyle) {
var loader = _loaderFactory(analysisFile);
Expand All @@ -22,8 +23,8 @@ void IAnalysisExporter<ChromatogramPeakFeatureCollection>.Export(Stream stream,
stream,
peak,
loader.Load(peak).Spectrum,
_exportNoMs2Molecule,
_set2dCoordinates
_exportNoMs2Peak,
_parameter
);
}
}
Expand Down
Loading
Loading