Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import org.eclipse.chemclipse.csd.model.core.IPeakCSD;
import org.eclipse.chemclipse.csd.model.core.IScanCSD;
import org.eclipse.chemclipse.logging.core.Logger;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.model.exceptions.ReferenceMustNotBeNullException;
import org.eclipse.chemclipse.model.identifier.IComparisonResult;
import org.eclipse.chemclipse.model.identifier.IIdentificationTarget;
Expand All @@ -31,12 +32,14 @@ public IIdentificationTarget setPeakTargetUnknown(IPeakCSD peakCSD, String ident

IIdentificationTarget identificationTarget = null;
try {
IScanCSD scan = peakCSD.getPeakModel().getPeakMaximum();
ILibraryInformation libraryInformation = UnknownTargetBuilder.getLibraryInformationUnknown(scan, targetUnknownSettings, "");
IComparisonResult comparisonResult = UnknownTargetBuilder.getComparisonResultUnknown(targetUnknownSettings.getMatchQuality());
identificationTarget = new IdentificationTarget(libraryInformation, comparisonResult);
identificationTarget.setIdentifier(identifier);
peakCSD.getTargets().add(identificationTarget);
IScan scan = peakCSD.getPeakModel().getPeakMaximum();
if(scan instanceof IScanCSD unknown) {
ILibraryInformation libraryInformation = UnknownTargetBuilder.getLibraryInformationUnknown(unknown, targetUnknownSettings, "");
IComparisonResult comparisonResult = UnknownTargetBuilder.getComparisonResultUnknown(targetUnknownSettings.getMatchQuality());
identificationTarget = new IdentificationTarget(libraryInformation, comparisonResult);
identificationTarget.setIdentifier(identifier);
peakCSD.getTargets().add(identificationTarget);
}
} catch(ReferenceMustNotBeNullException e) {
logger.warn(e);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
import java.util.List;

import org.eclipse.chemclipse.logging.core.Logger;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.model.exceptions.ReferenceMustNotBeNullException;
import org.eclipse.chemclipse.model.identifier.IComparisonResult;
import org.eclipse.chemclipse.model.identifier.IIdentificationTarget;
Expand All @@ -38,13 +39,15 @@ public IIdentificationTarget setPeakTargetUnknown(IPeakWSD peakWSD, String ident

IIdentificationTarget identificationTarget = null;
try {
IScanWSD scan = peakWSD.getPeakModel().getPeakMaximum();
String traces = extractTraces(scan, targetUnknownSettings);
ILibraryInformation libraryInformation = UnknownTargetBuilder.getLibraryInformationUnknown(scan, targetUnknownSettings, traces);
IComparisonResult comparisonResult = UnknownTargetBuilder.getComparisonResultUnknown(targetUnknownSettings.getMatchQuality());
identificationTarget = new IdentificationTarget(libraryInformation, comparisonResult);
identificationTarget.setIdentifier(identifier);
peakWSD.getTargets().add(identificationTarget);
IScan scan = peakWSD.getPeakModel().getPeakMaximum();
if(scan instanceof IScanWSD unknown) {
String traces = extractTraces(unknown, targetUnknownSettings);
ILibraryInformation libraryInformation = UnknownTargetBuilder.getLibraryInformationUnknown(unknown, targetUnknownSettings, traces);
IComparisonResult comparisonResult = UnknownTargetBuilder.getComparisonResultUnknown(targetUnknownSettings.getMatchQuality());
identificationTarget = new IdentificationTarget(libraryInformation, comparisonResult);
identificationTarget.setIdentifier(identifier);
peakWSD.getTargets().add(identificationTarget);
}
} catch(ReferenceMustNotBeNullException e) {
logger.warn(e);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
import org.eclipse.chemclipse.model.core.IMarkedTraces;
import org.eclipse.chemclipse.model.core.IPeak;
import org.eclipse.chemclipse.model.core.IPeakModel;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.model.core.ISignal;
import org.eclipse.chemclipse.model.implementation.IntegrationEntry;
import org.eclipse.chemclipse.model.support.IntegrationConstraint;
Expand Down Expand Up @@ -271,23 +272,25 @@ private List<IIntegrationEntry> calculateIntegratedArea(IPeak peak, PeakIntegrat
IPeakModelWSD peakModel = peakWSD.getPeakModel();
double integratedAreaTIC = calculateTICPeakArea(peak, baselineSupport, includeBackground, useAreaConstraint);

IScanWSD scan = peakModel.getPeakMaximum();
IScan scan = peakModel.getPeakMaximum();
IIntegrationEntry integrationEntry;
if(!markedTraces.isEmpty() && !markedTraces.getTraces().contains(IMarkedTrace.TOTAL_SIGNAL_AS_INT)) {
Set<Integer> wavelengths = markedTraces.getTraces();
WavelengthPercentages wavelengthPercentages = new WavelengthPercentages(scan);
/*
* Calculate the percentage integrated area for each selected ion.
*/
for(Integer wavelength : wavelengths) {
float correctionFactor = wavelengthPercentages.getPercentage(wavelength) / WavelengthPercentages.MAX_PERCENTAGE;
double integratedArea = integratedAreaTIC * correctionFactor;
integrationEntry = new IntegrationEntry(wavelength, integratedArea * scaleFactor);
if(scan instanceof IScanWSD scanWSD) {
if(!markedTraces.isEmpty() && !markedTraces.getTraces().contains(IMarkedTrace.TOTAL_SIGNAL_AS_INT)) {
Set<Integer> wavelengths = markedTraces.getTraces();
WavelengthPercentages wavelengthPercentages = new WavelengthPercentages(scanWSD);
/*
* Calculate the percentage integrated area for each selected ion.
*/
for(Integer wavelength : wavelengths) {
float correctionFactor = wavelengthPercentages.getPercentage(wavelength) / WavelengthPercentages.MAX_PERCENTAGE;
double integratedArea = integratedAreaTIC * correctionFactor;
integrationEntry = new IntegrationEntry(wavelength, integratedArea * scaleFactor);
integrationEntries.add(integrationEntry);
}
} else {
integrationEntry = new IntegrationEntry(ISignal.TOTAL_INTENSITY, integratedAreaTIC * scaleFactor);
integrationEntries.add(integrationEntry);
}
} else {
integrationEntry = new IntegrationEntry(ISignal.TOTAL_INTENSITY, integratedAreaTIC * scaleFactor);
integrationEntries.add(integrationEntry);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,16 +25,4 @@ protected AbstractPeakModelCSD(IScan peakMaximum, IPeakIntensityValues peakInten

super(peakMaximum, peakIntensityValues, startBackgroundAbundance, stopBackgroundAbundance);
}

@Override
public IScanCSD getPeakMaximum() {

return (IScanCSD)super.getPeakMaximum();
}

@Override
public IScanCSD getPeakScan(int retentionTime) {

return (IScanCSD)super.getPeakScan(retentionTime);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,4 @@
import org.eclipse.chemclipse.model.core.IPeakModel;

public interface IPeakModelCSD extends IPeakModel {

@Override
IScanCSD getPeakMaximum();

@Override
IScanCSD getPeakScan(int retentionTime);
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,4 @@
import org.eclipse.chemclipse.model.core.IPeakModel;

public interface IPeakModelFSD extends IPeakModel {

@Override
IScanFSD getPeakMaximum();

@Override
IScanFSD getPeakScan(int retentionTime);
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
package org.eclipse.chemclipse.fsd.model.core.implementation;

import org.eclipse.chemclipse.fsd.model.core.IPeakModelFSD;
import org.eclipse.chemclipse.fsd.model.core.IScanFSD;
import org.eclipse.chemclipse.model.core.IPeakIntensityValues;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.model.exceptions.PeakException;
Expand All @@ -27,16 +26,4 @@ protected AbstractPeakModelFSD(IScan peakMaximum, IPeakIntensityValues peakInten

super(peakMaximum, peakIntensityValues, startBackgroundIntensity, stopBackgroundIntensity);
}

@Override
public IScanFSD getPeakMaximum() {

return (IScanFSD)super.getPeakMaximum();
}

@Override
public IScanFSD getPeakScan(int retentionTime) {

return (IScanFSD)super.getPeakScan(retentionTime);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -54,16 +54,4 @@ public IPeakMassSpectrum getPeakMassSpectrum(int retentionTime) {
}
return null;
}

@Override
public IScanMSD getPeakMaximum() {

return (IScanMSD)super.getPeakMaximum();
}

@Override
public IScanMSD getPeakScan(int retentionTime) {

return (IScanMSD)super.getPeakScan(retentionTime);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,4 @@ public interface IPeakModelMSD extends IPeakModel {
* @return IMassSpectrum
*/
IPeakMassSpectrum getPeakMassSpectrum(int retentionTime);

@Override
IScanMSD getPeakMaximum();

@Override
IScanMSD getPeakScan(int retentionTime);
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
import org.eclipse.chemclipse.logging.core.Logger;
import org.eclipse.chemclipse.model.core.IChromatogramPeak;
import org.eclipse.chemclipse.model.core.IPeak;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.msd.model.core.IPeakMSD;
import org.eclipse.chemclipse.msd.model.core.IPeakModelMSD;
import org.eclipse.chemclipse.msd.model.core.IScanMSD;
Expand Down Expand Up @@ -441,14 +442,16 @@ private void deleteTraces(Display display, Set<Integer> traces) {
}
} else if(peak instanceof IPeakWSD peakWSD) {
IPeakModelWSD peakModelWSD = peakWSD.getPeakModel();
IScanWSD scanWSD = peakModelWSD.getPeakMaximum();
int maxDeleteTraces = scanWSD.getNumberOfScanSignals() - 1;
if(traces.size() >= maxDeleteTraces) {
MessageDialog.openInformation(display.getActiveShell(), CATEGORY, "It's not possible to delete all wavelengths.");
} else {
scanWSD.removeScanSignals(traces);
updatePeak();
UpdateNotifierUI.update(display, peak);
IScan scan = peakModelWSD.getPeakMaximum();
if(scan instanceof IScanWSD scanWSD) {
int maxDeleteTraces = scanWSD.getNumberOfScanSignals() - 1;
if(traces.size() >= maxDeleteTraces) {
MessageDialog.openInformation(display.getActiveShell(), CATEGORY, "It's not possible to delete all wavelengths.");
} else {
scanWSD.removeScanSignals(traces);
updatePeak();
UpdateNotifierUI.update(display, peak);
}
}
}
if(peak instanceof IChromatogramPeak chromatogramPeak) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,16 +25,4 @@ public AbtractPeakModelVSD(IScan peakMaximum, IPeakIntensityValues peakIntensity

super(peakMaximum, peakIntensityValues, startBackgroundAbundance, stopBackgroundAbundance);
}

@Override
public IScanVSD getPeakMaximum() {

return (IScanVSD)super.getPeakMaximum();
}

@Override
public IScanVSD getPeakScan(int retentionTime) {

return (IScanVSD)super.getPeakScan(retentionTime);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,4 @@
import org.eclipse.chemclipse.model.core.IPeakModel;

public interface IPeakModelVSD extends IPeakModel {

@Override
IScanVSD getPeakMaximum();

@Override
IScanVSD getPeakScan(int retentionTime);
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
package org.eclipse.chemclipse.wsd.model.core;

import org.eclipse.chemclipse.model.core.IChromatogram;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.model.exceptions.PeakException;

public abstract class AbstractChromatogramPeakWSD extends AbstractPeakWSD implements IChromatogramPeakWSD {
Expand Down Expand Up @@ -79,12 +80,14 @@ public float getPurity() {
/*
* Extracted is the unknown and genuine the reference scan.
*/
IScanWSD peakScan = getPeakModel().getPeakMaximum();
IScanWSD genuineScanWSD = chromatogram.getScan(getScanMax());
if(genuineScanWSD != null) {
int numberOfSignals = genuineScanWSD.getNumberOfScanSignals();
if(numberOfSignals != 0) {
purity = peakScan.getNumberOfScanSignals() / (float)numberOfSignals;
IScan peakScan = getPeakModel().getPeakMaximum();
if(peakScan instanceof IScanWSD peakScanWSD) {
IScanWSD genuineScanWSD = chromatogram.getScan(getScanMax());
if(genuineScanWSD != null) {
int numberOfSignals = genuineScanWSD.getNumberOfScanSignals();
if(numberOfSignals != 0) {
purity = peakScanWSD.getNumberOfScanSignals() / (float)numberOfSignals;
}
}
}
return purity;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,16 +25,4 @@ public AbstractPeakModelWSD(IScan peakMaximum, IPeakIntensityValues peakIntensit

super(peakMaximum, peakIntensityValues, startBackgroundAbundance, stopBackgroundAbundance);
}

@Override
public IScanWSD getPeakMaximum() {

return (IScanWSD)super.getPeakMaximum();
}

@Override
public IScanWSD getPeakScan(int retentionTime) {

return (IScanWSD)super.getPeakScan(retentionTime);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,4 @@
import org.eclipse.chemclipse.model.core.IPeakModel;

public interface IPeakModelWSD extends IPeakModel {

@Override
IScanWSD getPeakMaximum();

@Override
IScanWSD getPeakScan(int retentionTime);
}
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import org.eclipse.chemclipse.csd.model.core.IScanCSD;
import org.eclipse.chemclipse.model.baseline.IBaselineModel;
import org.eclipse.chemclipse.model.core.IIntegrationEntry;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.xxd.converter.supplier.ocx.preferences.PreferenceSupplier;
import org.eclipse.chemclipse.xxd.converter.supplier.ocx.settings.Format;
import org.eclipse.core.runtime.IProgressMonitor;
Expand Down Expand Up @@ -210,7 +211,7 @@ private void writePeak(DataOutputStream dataOutputStream, IPeakCSD peak) throws
dataOutputStream.writeFloat(peakModel.getBackgroundAbundance(peakModel.getStartRetentionTime())); // Start Background Abundance
dataOutputStream.writeFloat(peakModel.getBackgroundAbundance(peakModel.getStopRetentionTime())); // Stop Background Abundance

IScanCSD scan = peakModel.getPeakMaximum();
IScan scan = peakModel.getPeakMaximum();
dataOutputStream.writeInt(scan.getRetentionTime()); // Retention Time
dataOutputStream.writeFloat(scan.getRetentionIndex()); // Retention Index
dataOutputStream.writeFloat(scan.getTotalSignal()); // Total Signal
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import org.eclipse.chemclipse.csd.model.core.IScanCSD;
import org.eclipse.chemclipse.model.baseline.IBaselineModel;
import org.eclipse.chemclipse.model.core.IIntegrationEntry;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.xxd.converter.supplier.ocx.preferences.PreferenceSupplier;
import org.eclipse.chemclipse.xxd.converter.supplier.ocx.settings.Format;
import org.eclipse.core.runtime.IProgressMonitor;
Expand Down Expand Up @@ -209,7 +210,7 @@ private void writePeak(DataOutputStream dataOutputStream, IPeakCSD peak) throws
dataOutputStream.writeFloat(peakModel.getBackgroundAbundance(peakModel.getStartRetentionTime())); // Start Background Abundance
dataOutputStream.writeFloat(peakModel.getBackgroundAbundance(peakModel.getStopRetentionTime())); // Stop Background Abundance

IScanCSD scan = peakModel.getPeakMaximum();
IScan scan = peakModel.getPeakMaximum();
dataOutputStream.writeInt(scan.getRetentionTime()); // Retention Time
dataOutputStream.writeFloat(scan.getRetentionIndex()); // Retention Index
dataOutputStream.writeFloat(scan.getTotalSignal()); // Total Signal
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import org.eclipse.chemclipse.csd.model.core.IScanCSD;
import org.eclipse.chemclipse.model.baseline.IBaselineModel;
import org.eclipse.chemclipse.model.core.IIntegrationEntry;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.xxd.converter.supplier.ocx.preferences.PreferenceSupplier;
import org.eclipse.chemclipse.xxd.converter.supplier.ocx.settings.Format;
import org.eclipse.core.runtime.IProgressMonitor;
Expand Down Expand Up @@ -211,7 +212,7 @@ private void writePeak(DataOutputStream dataOutputStream, IPeakCSD peak) throws
dataOutputStream.writeFloat(peakModel.getBackgroundAbundance(peakModel.getStartRetentionTime())); // Start Background Abundance
dataOutputStream.writeFloat(peakModel.getBackgroundAbundance(peakModel.getStopRetentionTime())); // Stop Background Abundance

IScanCSD scan = peakModel.getPeakMaximum();
IScan scan = peakModel.getPeakMaximum();
dataOutputStream.writeInt(scan.getRetentionTime()); // Retention Time
dataOutputStream.writeFloat(scan.getRetentionIndex()); // Retention Index
dataOutputStream.writeFloat(scan.getTotalSignal()); // Total Signal
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import org.eclipse.chemclipse.csd.model.core.IScanCSD;
import org.eclipse.chemclipse.model.baseline.IBaselineModel;
import org.eclipse.chemclipse.model.core.IIntegrationEntry;
import org.eclipse.chemclipse.model.core.IScan;
import org.eclipse.chemclipse.xxd.converter.supplier.ocx.preferences.PreferenceSupplier;
import org.eclipse.chemclipse.xxd.converter.supplier.ocx.settings.Format;
import org.eclipse.core.runtime.IProgressMonitor;
Expand Down Expand Up @@ -213,7 +214,7 @@ private void writePeak(DataOutputStream dataOutputStream, IPeakCSD peak) throws
dataOutputStream.writeFloat(peakModel.getBackgroundAbundance(peakModel.getStartRetentionTime())); // Start Background Abundance
dataOutputStream.writeFloat(peakModel.getBackgroundAbundance(peakModel.getStopRetentionTime())); // Stop Background Abundance

IScanCSD scan = peakModel.getPeakMaximum();
IScan scan = peakModel.getPeakMaximum();
dataOutputStream.writeInt(scan.getRetentionTime()); // Retention Time
dataOutputStream.writeFloat(scan.getRetentionIndex()); // Retention Index
dataOutputStream.writeFloat(scan.getTotalSignal()); // Total Signal
Expand Down
Loading