diff --git a/chemclipse/features/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature/.project b/chemclipse/features/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature/.project deleted file mode 100644 index 26e1f60425..0000000000 --- a/chemclipse/features/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature - - - - - - org.eclipse.pde.FeatureBuilder - - - - - - org.eclipse.pde.FeatureNature - - diff --git a/chemclipse/features/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature/build.properties b/chemclipse/features/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature/build.properties deleted file mode 100644 index 64f93a9f0b..0000000000 --- a/chemclipse/features/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature/build.properties +++ /dev/null @@ -1 +0,0 @@ -bin.includes = feature.xml diff --git a/chemclipse/features/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature/feature.xml b/chemclipse/features/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature/feature.xml deleted file mode 100644 index 53c8d3cab0..0000000000 --- a/chemclipse/features/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.feature/feature.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - This is the ProteoMS plugin. - - - - Copyright (c) 2016, 2018 Janko Diminic, Philip Wenig. - - - - Copyright (c) 2016, 2018 Janko Diminic, Philip Wenig. - -All rights reserved. -This program and the accompanying materials are made available under the -terms of the Eclipse Public License v1.0 which accompanies this distribution, -and is available at http://www.eclipse.org/legal/epl-v10.html - - - - - - - diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.classpath b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.classpath deleted file mode 100644 index eca7bdba8f..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.classpath +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.gitignore b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.gitignore deleted file mode 100644 index 63c68ed6b8..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -/bin/ -/old/ diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.project b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.project deleted file mode 100644 index 7d7156a39f..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.project +++ /dev/null @@ -1,28 +0,0 @@ - - - org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.pde.PluginNature - org.eclipse.jdt.core.javanature - - diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.settings/org.eclipse.jdt.core.prefs b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 0c68a61dca..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,7 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/META-INF/MANIFEST.MF b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/META-INF/MANIFEST.MF deleted file mode 100644 index aa8e3f515c..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/META-INF/MANIFEST.MF +++ /dev/null @@ -1,32 +0,0 @@ -Manifest-Version: 1.0 -Automatic-Module-Name: org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui -Bundle-ManifestVersion: 2 -Bundle-Name: Ui -Bundle-SymbolicName: org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui;singleton:=true -Bundle-Version: 0.9.0.qualifier -Bundle-Activator: org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.Activator -Bundle-Vendor: Chemclipse -Require-Bundle: org.eclipse.ui, - org.eclipse.core.runtime, - org.eclipse.e4.core.di;bundle-version="1.2.0", - org.eclipse.e4.ui.workbench;bundle-version="0.10.100", - org.eclipse.e4.ui.di;bundle-version="0.10.1", - org.eclipse.core.resources;bundle-version="3.8.100", - org.eclipse.chemclipse.model;bundle-version="0.8.0", - org.eclipse.chemclipse.msd.model;bundle-version="0.8.0", - org.eclipse.chemclipse.msd.converter;bundle-version="0.8.0", - org.eclipse.chemclipse.logging;bundle-version="0.8.0", - org.eclipse.chemclipse.progress;bundle-version="0.8.0", - org.eclipse.chemclipse.progress.ui;bundle-version="0.8.0", - org.eclipse.chemclipse.support;bundle-version="0.8.0", - org.eclipse.chemclipse.support.ui;bundle-version="0.8.0", - org.eclipse.chemclipse.msd.swt.ui;bundle-version="0.8.0", - org.eclipse.chemclipse.processing;bundle-version="0.8.0", - org.eclipse.chemclipse.processing.ui;bundle-version="0.8.0", - org.eclipse.chemclipse.msd.identifier.supplier.proteoms;bundle-version="0.8.0", - org.eclipse.e4.core.services, - org.eclipse.e4.ui.services, - org.eclipse.e4.core.contexts, - org.eclipse.swtchart;bundle-version="0.8.0" -Bundle-RequiredExecutionEnvironment: JavaSE-1.8 -Bundle-ActivationPolicy: lazy diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/OSGI-INF/l10n/bundle_en.properties b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/OSGI-INF/l10n/bundle_en.properties deleted file mode 100644 index 597fd0bfba..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/OSGI-INF/l10n/bundle_en.properties +++ /dev/null @@ -1 +0,0 @@ -#Properties file diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/build.properties b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/build.properties deleted file mode 100644 index 59edbf8ffb..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/build.properties +++ /dev/null @@ -1,8 +0,0 @@ -output.. = bin/ -bin.includes = META-INF/,\ - .,\ - OSGI-INF/,\ - fragment.e4xmi,\ - plugin.xml,\ - icons/ -source.. = src/ diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/fragment.e4xmi b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/fragment.e4xmi deleted file mode 100644 index 97847a40fe..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/fragment.e4xmi +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/icons/16x16/demo.gif b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/icons/16x16/demo.gif deleted file mode 100644 index d8135dd57b..0000000000 Binary files a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/icons/16x16/demo.gif and /dev/null differ diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/icons/sample.gif b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/icons/sample.gif deleted file mode 100644 index 34fb3c9d8c..0000000000 Binary files a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/icons/sample.gif and /dev/null differ diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/plugin.xml b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/plugin.xml deleted file mode 100644 index 9a1e2f2c2f..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/plugin.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Import a protein MS/MS file from the local file system into the project. - - - - diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/.gitignore b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/.gitignore deleted file mode 100644 index e53ef90a99..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/log4j.properties diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/Activator.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/Activator.java deleted file mode 100644 index 6e265aff06..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/Activator.java +++ /dev/null @@ -1,117 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.preferences.PreferenceSupplier; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.project.ProjectManager; -import org.eclipse.chemclipse.support.ui.activator.AbstractActivatorUI; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.IProjectDescription; -import org.eclipse.core.resources.IWorkspace; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.NullProgressMonitor; -import org.osgi.framework.BundleContext; - -/** - * The activator class controls the plug-in life cycle - */ -public class Activator extends AbstractActivatorUI { - - private static final Logger log = Logger.getLogger(Activator.class); - private static Activator plugin; - private ProjectManager projectManager; - - /** - * The constructor - */ - public Activator() { - - } - - /* - * (non-Javadoc) - * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext) - */ - @Override - public void start(BundleContext context) throws Exception { - - super.start(context); - plugin = this; - initializePreferenceStore(PreferenceSupplier.INSTANCE()); - } - - @SuppressWarnings("unused") - private void initProjectManagerx() { - - try { - IWorkspace w = ResourcesPlugin.getWorkspace(); - IProject project = w.getRoot().getProject(ProjectManager.DEFAULT_PROJECT_NAME); - if(!project.exists()) { - IProjectDescription projectDescription = ResourcesPlugin.getWorkspace().newProjectDescription(project.getName()); - project.create(projectDescription, new NullProgressMonitor()); - addProjectNature(project); - project.open(new NullProgressMonitor()); - } - projectManager = new ProjectManager(project); - } catch(CoreException e) { - log.error(e.getMessage(), e); - e.printStackTrace(); - } - } - - public ProjectManager getProjectManager() { - - return projectManager; - } - - private void addProjectNature(IProject project) { - - try { - project.open(new NullProgressMonitor()); - IProjectDescription description = project.getDescription(); - String[] natures = description.getNatureIds(); - String[] newNatures = new String[natures.length + 1]; - System.arraycopy(natures, 0, newNatures, 0, natures.length); - newNatures[natures.length] = ProteomsProjectNature.NATURE_ID; - description.setNatureIds(newNatures); - project.setDescription(description, new NullProgressMonitor()); - } catch(CoreException e) { - // Something went wrong - log.error("Project nature error: " + e.getMessage(), e); - e.printStackTrace(); - } - } - - /* - * (non-Javadoc) - * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext) - */ - @Override - public void stop(BundleContext context) throws Exception { - - plugin = null; - super.stop(context); - } - - /** - * Returns the shared instance - * - * @return the shared instance - */ - public static Activator getDefault() { - - return plugin; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ImportDataSelection.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ImportDataSelection.java deleted file mode 100644 index 4958d42964..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ImportDataSelection.java +++ /dev/null @@ -1,41 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui; - -import java.util.List; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata.ImportParameters; - -public class ImportDataSelection { - - private List parsedMSlist; - private ImportParameters parameters; - - public ImportDataSelection() { - } - - public ImportDataSelection(List parsedMSlist, ImportParameters parameters) { - this.parsedMSlist = parsedMSlist; - this.parameters = parameters; - } - - public ImportParameters getParameters() { - - return parameters; - } - - public List getParsedMSlist() { - - return parsedMSlist; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ProjectWrapper.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ProjectWrapper.java deleted file mode 100644 index a2c73bd33e..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ProjectWrapper.java +++ /dev/null @@ -1,61 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui; - -import java.io.IOException; -import java.nio.file.Path; -import java.util.List; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.db.ProteomsDB; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.core.resources.IProject; - -public class ProjectWrapper { - - private static final Logger log = Logger.getLogger(ProjectWrapper.class); - private IProject project; - private ProteomsDB db; - List msListCache = null; - - public ProjectWrapper(IProject project) { - this.project = project; - Path path = RCPUtil.getProjectPath(project); - db = new ProteomsDB(path); - } - - public List getMSlist() { - - if(msListCache != null) { - return msListCache; - } - try { - msListCache = db.getMSandMSMSwithoutPeaks(); - return msListCache; - } catch(IOException e) { - log.error("Error DB: " + e.getMessage(), e); - return null; - } - } - - public IProject getProject() { - - return project; - } - - public static void saveToDisk(IProject p, List parsedMSlist) throws IOException { - - Path path = RCPUtil.getProjectPath(p); - ProteomsDB db = new ProteomsDB(path); - db.saveAllSpectrumsMS(parsedMSlist); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ProteomsEvent.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ProteomsEvent.java deleted file mode 100644 index ecf4d7abb6..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ProteomsEvent.java +++ /dev/null @@ -1,17 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui; - -public class ProteomsEvent { - - public static final String CREATED_NEW_PROJECT = "created_new_project"; -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ProteomsProjectNature.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ProteomsProjectNature.java deleted file mode 100644 index e2b07da585..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/ProteomsProjectNature.java +++ /dev/null @@ -1,48 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui; - -import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.IProjectNature; -import org.eclipse.core.runtime.CoreException; - -public class ProteomsProjectNature implements IProjectNature { - - private IProject project; - public final static String NATURE_ID = "org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.proteoms_project_nature"; - - @Override - public void configure() throws CoreException { - - // Add nature-specific information - // for the project, such as adding a builder - // to a project's build spec. - // project.ad - } - - @Override - public void deconfigure() throws CoreException { - - } - - @Override - public IProject getProject() { - - return project; - } - - @Override - public void setProject(IProject project) { - - this.project = project; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/RCPUtil.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/RCPUtil.java deleted file mode 100644 index 707dc3516e..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/RCPUtil.java +++ /dev/null @@ -1,315 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui; - -import java.io.File; -import java.nio.file.Path; -import java.util.ArrayList; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.core.internal.resources.WorkspaceRoot; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.IProjectDescription; -import org.eclipse.core.resources.IResource; -import org.eclipse.core.resources.IResourceChangeEvent; -import org.eclipse.core.resources.IResourceDelta; -import org.eclipse.core.resources.IWorkspace; -import org.eclipse.core.resources.IWorkspaceRoot; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IPath; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Status; -import org.eclipse.e4.core.contexts.EclipseContextFactory; -import org.eclipse.e4.core.contexts.IEclipseContext; -import org.eclipse.e4.core.services.events.IEventBroker; -import org.eclipse.jface.dialogs.MessageDialog; -import org.eclipse.jface.wizard.WizardDialog; -import org.eclipse.swt.widgets.Display; -import org.eclipse.swt.widgets.Shell; -import org.eclipse.ui.IWorkbenchWizard; -import org.eclipse.ui.PlatformUI; -import org.eclipse.ui.wizards.IWizardDescriptor; -import org.eclipse.ui.wizards.IWizardRegistry; - -@SuppressWarnings("restriction") -public class RCPUtil { - - private static final Logger log = Logger.getLogger(RCPUtil.class); - private static IEventBroker eventBroker; - - public static void throwCoreException(String message) throws CoreException { - - IStatus status = new Status(IStatus.ERROR, "org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui", IStatus.OK, message, null); - throw new CoreException(status); - } - - public static java.util.List findProteomsProjects() { - - ArrayList resultProjects = new ArrayList<>(); - IWorkspace w = ResourcesPlugin.getWorkspace(); - IWorkspaceRoot root = w.getRoot(); - IProject[] projects = root.getProjects(); - for(IProject project : projects) { - try { - if(!project.isOpen()) { - File file = project.getLocation().toFile(); - File projectFile = new File(file, ".project"); - // log.debug(projectFile); - IPath projectDotProjectFile = new org.eclipse.core.runtime.Path(projectFile.getAbsolutePath()); - IProjectDescription desc = w.loadProjectDescription(projectDotProjectFile); - if(desc.hasNature(ProteomsProjectNature.NATURE_ID)) { - resultProjects.add(project); - } - } else { - if(project.hasNature(ProteomsProjectNature.NATURE_ID)) { - resultProjects.add(project); - } - } - // if(contatinProteomsNature(project.getDescription().getNatureIds())) { - // resultProjects.add(project); - // } - } catch(CoreException e) { - log.error("Error resource project", e); - RCPUtil.handleError(e); - } - } - return resultProjects; - } - - private static void handleError(Throwable e) { - - // TODO: show error dialog - e.printStackTrace(); - } - - /** - * @param natureIds - * @return - */ - @SuppressWarnings("unused") - private static boolean contatinProteomsNature(String[] natureIds) { - - for(String id : natureIds) { - if(ProteomsProjectNature.NATURE_ID.equals(id)) { - return true; - } - } - return false; - } - - public static void showWarningMessageDialog(String message, Shell shell) { - - Shell shell2; - if(shell == null) { - shell2 = Display.getDefault().getActiveShell(); - } else { - shell2 = shell; - } - if(shell.getDisplay().getThread() == Thread.currentThread()) { - MessageDialog.openWarning(shell, "Warning", message); - } else { - shell.getDisplay().asyncExec(new Runnable() { - - @Override - public void run() { - - MessageDialog.openWarning(shell2, "Warning", message); - } - }); - } - } - - public static Path getProjectPath(IProject project) { - - File file = project.getLocation().toFile(); - Path path = file.toPath(); - return path; - } - - public static void openProteomsNewProject(Shell shell) { - - IWizardRegistry w = PlatformUI.getWorkbench().getNewWizardRegistry(); - IWizardDescriptor wiz = w.findWizard("org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.wizards.CreateProjectWizard"); - IWorkbenchWizard wizard; - try { - wizard = wiz.createWizard(); - WizardDialog wd = new WizardDialog(shell, wizard); - wd.setTitle(wizard.getWindowTitle()); - wizard.init(PlatformUI.getWorkbench(), null); - wd.open(); - } catch(CoreException e1) { - log.error("Error open new project wizard. " + e1.getMessage(), e1); - handleError(e1); - } - } - - public static void openProteomsImportProject(Shell shell) { - - IWizardRegistry w = PlatformUI.getWorkbench().getImportWizardRegistry(); - IWizardDescriptor wiz = w.findWizard("org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.import.ImportMSdataWizard"); - IWorkbenchWizard wizard; - try { - wizard = wiz.createWizard(); - WizardDialog wd = new WizardDialog(shell, wizard); - wd.setTitle(wizard.getWindowTitle()); - wizard.init(PlatformUI.getWorkbench(), null); - wd.open(); - } catch(CoreException e) { - log.error("Error open import wizard. " + e.getMessage(), e); - handleError(e); - } - } - - public static String getClass(Object object) { - - // TODO: move to another class - if(object != null) { - if(object.getClass().isArray()) { - return object.getClass().getName() + "[]"; - } - return object.getClass().getName(); - } - return "null"; - } - - public static void sendEvent(String topic, Object data, Shell shell) { - - IEventBroker broker = getEventBroker(); - if(broker == null) { - log.debug("Canot find brokker"); - return; - } - broker.post(topic, data); - } - - private static IEventBroker getEventBroker() { - - if(eventBroker == null) { - IEclipseContext serviceContext = EclipseContextFactory.getServiceContext(Activator.getDefault().getBundle().getBundleContext()); - eventBroker = serviceContext.get(IEventBroker.class); - } - return eventBroker; - } - - public static boolean isUIthread(Shell shell) { - - if(shell == null) { - return false; - } - if(Thread.currentThread() == shell.getDisplay().getThread()) { - return true; - } - return false; - } - - public static Display getStandardDisplay() { - - Display d; - d = Display.getCurrent(); - if(d == null) - d = Display.getDefault(); - return d; - } - - public static StringBuilder getEventDescription(IResourceChangeEvent event) { - - { - IResourceDelta delta = event.getDelta(); - if(delta != null) { - IResource resource = delta.getResource(); - int type = resource.getType(); - int kind = delta.getKind(); - int flags = delta.getFlags(); - if(kind == IResourceDelta.CHANGED && type == IResource.PROJECT) { - if((flags & IResourceDelta.OPEN) != 0) { - log.debug("OPEN PROJECT " + resource); - } - } - } - } - StringBuilder b = new StringBuilder(); - IResource res = event.getResource(); - b.append("Resource " + res + " "); - System.out.print("Event type: "); - switch(event.getType()) { - case IResourceChangeEvent.PRE_CLOSE: - b.append("PRE_CLOSE "); // project close is here - break; - case IResourceChangeEvent.PRE_DELETE: - b.append("PRE DELETE "); - break; - case IResourceChangeEvent.POST_CHANGE: - b.append("POST_CHANGE "); - // event.getDelta().accept(new DeltaPrinter()); - break; - case IResourceChangeEvent.PRE_BUILD: - b.append("PRE BUILKD"); - // event.getDelta().accept(new DeltaPrinter()); - break; - case IResourceChangeEvent.POST_BUILD: - b.append("POST_BUIDL. "); - // event.getDelta().accept(new DeltaPrinter()); - break; - } - IResourceDelta delta = event.getDelta(); - if(delta != null) { - b.append(" DELTA KIND: "); - IResource resDelta = delta.getResource(); - b.append(" Resource delta: " + resDelta); - switch(delta.getKind()) { - case IResourceDelta.ADDED: - b.append(" ADDED "); - break; - case IResourceDelta.REMOVED: - b.append(" REMOVED "); - break; - case IResourceDelta.OPEN: - b.append(" OPEN "); - break; - case IResourceDelta.CHANGED: - b.append(" CHANGED "); - int flags = delta.getFlags(); - b.append(" Flags: " + flags + " "); - if((flags & IResourceDelta.CONTENT) != 0) { - b.append(" contend change "); - } - if((flags & IResourceDelta.REPLACED) != 0) { - b.append(" Content Replaced "); - } - if((flags & IResourceDelta.MARKERS) != 0) { - b.append(" Marker Change "); - // IMarkerDelta[] markers = delta.getMarkerDeltas(); - // if interested in markers, check these deltas - } - if(((flags & IResourceDelta.OPEN) != 0)) { - b.append(" OPEN "); // not work - } - if(flags == 0) { - b.append(" resource type=" + resDelta.getType() + " "); - if(resDelta instanceof WorkspaceRoot) { - @SuppressWarnings("unused") - WorkspaceRoot p = (WorkspaceRoot)resDelta; - IResourceDelta[] affectedChildren = delta.getAffectedChildren(); - for(IResourceDelta iResourceDelta : affectedChildren) { - // Got project affected - log.debug("Afected " + iResourceDelta.getResource()); - } - b.append(" flags 0 Project is open= " + resDelta.getProject()); - } - } - break; - } - } - return b; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/SWTUtil.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/SWTUtil.java deleted file mode 100644 index 85400c97f1..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/SWTUtil.java +++ /dev/null @@ -1,78 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui; - -import java.io.PrintWriter; -import java.io.StringWriter; -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.MultiStatus; -import org.eclipse.core.runtime.Status; -import org.eclipse.jface.dialogs.Dialog; -import org.eclipse.jface.dialogs.ErrorDialog; -import org.eclipse.jface.util.SafeRunnable; -import org.eclipse.swt.SWT; -import org.eclipse.swt.graphics.Point; -import org.eclipse.swt.widgets.Shell; - -public class SWTUtil { - - public static void setDialogSize(Dialog dialog, int width, int height) { - - Point computedSize = dialog.getShell().computeSize(SWT.DEFAULT, SWT.DEFAULT); - width = Math.max(computedSize.x, width); - height = Math.max(computedSize.y, height); - dialog.getShell().setSize(width, height); - } - - public void asyncRun(Runnable r) { - - @SuppressWarnings("unused") - SafeRunnable sr = new SafeRunnable() { - - @Override - public void run() throws Exception { - - r.run(); - } - }; - } - - /** - * Make error dialog which prints stack trace of the throwable - * - * @param title - * title of the dialog - * @param msg - * message of the dialog - * @param t - * throwable diaog prints out - * @param shell - * parent shell of this dialog - * @author Ho Namkoong {@literal } (S-Core) - */ - public static void errorDialogWithStackTrace(String title, String msg, Throwable t, String pluginId, Shell shell) { - - StringWriter sw = new StringWriter(); - PrintWriter pw = new PrintWriter(sw); - t.printStackTrace(pw); - final String trace = sw.toString(); - List childStatuses = new ArrayList<>(); - for(String line : trace.split("\n")) { - childStatuses.add(new Status(IStatus.ERROR, pluginId, line)); - } - MultiStatus ms = new MultiStatus(pluginId, IStatus.ERROR, childStatuses.toArray(new Status[]{}), t.getLocalizedMessage(), t); - ErrorDialog.openError(shell, "Error Dialog", msg, ms); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/.gitignore b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/.gitignore deleted file mode 100644 index 3157ec57c7..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -/ChartMainTester.java -/TESTER_ChartMain.java diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartLabelDrawer.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartLabelDrawer.java deleted file mode 100644 index 8290d76848..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartLabelDrawer.java +++ /dev/null @@ -1,138 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Christoph Läubrich - Adjust to new Chart API - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.chart; - -import java.util.Random; - -import org.eclipse.swt.events.DisposeEvent; -import org.eclipse.swt.events.DisposeListener; -import org.eclipse.swt.events.PaintEvent; -import org.eclipse.swt.graphics.Point; -import org.eclipse.swt.widgets.Scrollable; -import org.eclipse.swtchart.Chart; -import org.eclipse.swtchart.IAxis; -import org.eclipse.swtchart.IAxisSet; -import org.eclipse.swtchart.ICustomPaintListener; -import org.eclipse.swtchart.IPlotArea; -import org.eclipse.swtchart.ISeries; - -public class ChartLabelDrawer implements ICustomPaintListener, DisposeListener { - - private Chart chart; - private IAxis xAxis; - private IAxis yAxis; - private int firstIntesitiyPeak = 30; - - public ChartLabelDrawer(Chart chart) { - - this.chart = chart; - IAxisSet axisSet = chart.getAxisSet(); - xAxis = axisSet.getXAxis(0); - yAxis = axisSet.getYAxis(0); - chart.getPlotArea().addCustomPaintListener(this); - } - - /** - * Set - * - * @param firstIntesitiyPeak - */ - public void setFirstIntesitiyPeak(int firstIntesitiyPeak) { - - this.firstIntesitiyPeak = firstIntesitiyPeak; - findMostIntensityPeaks(); - // ISeries series = chart.getSeriesSet().getSeries()[0]; - } - - public int getFirstIntesitiyPeak() { - - return firstIntesitiyPeak; - } - - private double findMostIntensityPeaks() { - - ISeries ser = chart.getSeriesSet().getSeries()[0]; - double[] ySeries = ser.getYSeries(); - return ChartUtil.getMaxValue(ySeries); - } - - @Override - public void paintControl(PaintEvent e) { - - ISeries ser = chart.getSeriesSet().getSeries()[0]; - Random r = new Random(); - for(double mz : ser.getXSeries()) { - if(r.nextFloat() < 0.96F) { - continue; - } - int xPos = xAxis.getPixelCoordinate(mz); - int yPos = yAxis.getPixelCoordinate(mz); - // log.debug("mz= " + mz + " x= {} y {}", xPos, yPos); - String mzString = mz + ""; - Point textExtent = e.gc.textExtent(mzString); - IPlotArea area = chart.getPlotArea(); - Point clientArea; - if(area instanceof Scrollable) { - Scrollable scrollable = (Scrollable)area; - clientArea = scrollable.getSize(); - } else { - clientArea = area.getSize(); - } - // System.out.println(textExtent); - int xPosText = xPos - textExtent.x / 2; - int yPosText = yPos - textExtent.y; - if(xPosText < 0) { // most left peak - xPosText = 0; - } - if(yPosText < 0) { - yPosText = textExtent.y; - } - if(yPosText == clientArea.x) { - yPosText -= textExtent.y; - } - // if(xPosText == clientArea.width) { - // xPosText = xPos - textExtent.x; - // } - e.gc.drawString(mz + "", xPosText, yPosText); - // log.debug("x=" + xPosText + " y=" + yPosText); - // System.out.println(); - // System.out.println(clientArea); - } - } - - @Override - protected void finalize() throws Throwable { - - clear(); - super.finalize(); - } - - protected void clear() { - - if(chart != null) { - chart.getPlotArea().removeCustomPaintListener(this); - } - } - - @Override - public void widgetDisposed(DisposeEvent e) { - - clear(); - } - - @Override - public boolean drawBehindSeries() { - - return false; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartLeftRightMotion.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartLeftRightMotion.java deleted file mode 100644 index e9afd11e6d..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartLeftRightMotion.java +++ /dev/null @@ -1,67 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2019 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Christoph Läubrich - adjust to new chart API - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.chart; - -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.DisposeEvent; -import org.eclipse.swt.events.DisposeListener; -import org.eclipse.swt.events.KeyEvent; -import org.eclipse.swt.events.KeyListener; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swtchart.Chart; -import org.eclipse.swtchart.IAxis; -import org.eclipse.swtchart.IPlotArea; - -public class ChartLeftRightMotion implements DisposeListener, KeyListener { - - private Chart chart; - - public ChartLeftRightMotion(Chart chart) { - this.chart = chart; - IPlotArea plotArea = chart.getPlotArea(); - if(plotArea instanceof Control) { - ((Control)plotArea).addKeyListener(this); - } - } - - @Override - public void widgetDisposed(DisposeEvent arg0) { - - if(chart != null) { - IPlotArea plotArea = chart.getPlotArea(); - if(plotArea instanceof Control) { - ((Control)plotArea).removeKeyListener(this); - } - } - } - - @Override - public void keyPressed(KeyEvent event) { - - if(event.keyCode == SWT.ARROW_LEFT) { - for(IAxis axis : chart.getAxisSet().getXAxes()) { - axis.scrollUp(); - } - } else if(event.keyCode == SWT.ARROW_RIGHT) { - for(IAxis axis : chart.getAxisSet().getXAxes()) { - axis.scrollDown(); - } - } - chart.redraw(); - } - - @Override - public void keyReleased(KeyEvent arg0) { - - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartUtil.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartUtil.java deleted file mode 100644 index e41b93ccff..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartUtil.java +++ /dev/null @@ -1,37 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.chart; - -import java.util.ArrayList; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.Peak; - -public class ChartUtil { - - public static double getMaxValue(double[] arr) { - - double max = Double.MIN_VALUE; - for(double d : arr) { - max = Math.max(max, d); - } - return max; - } - - public static double findMaxintensity(ArrayList peaks) { - - double maxI = Double.MAX_VALUE; - for(Peak p : peaks) { - maxI = Math.max(maxI, p.getIntensity()); - } - return maxI; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartZoom.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartZoom.java deleted file mode 100644 index 4f471348b0..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ChartZoom.java +++ /dev/null @@ -1,127 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2019 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Christoph Läubrich - Adjust to new chart API - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.chart; - -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.DisposeEvent; -import org.eclipse.swt.events.DisposeListener; -import org.eclipse.swt.events.MouseEvent; -import org.eclipse.swt.events.MouseListener; -import org.eclipse.swt.events.MouseWheelListener; -import org.eclipse.swt.graphics.Point; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swtchart.Chart; -import org.eclipse.swtchart.IAxis; -import org.eclipse.swtchart.IPlotArea; -import org.eclipse.swtchart.Range; - -public class ChartZoom implements DisposeListener, MouseWheelListener, MouseListener { - - private final float step; - private Chart chart; - - /** - * @param step - * The zoom step expressed as a factor of the current range. Must - * be between 0 and 1. - */ - public ChartZoom(Chart chart, float step) { - this.chart = chart; - if(step <= 0f || step >= 1) { - throw new IllegalArgumentException("Parameter step must be in the range of 0 to 1."); - } - this.step = step; - IPlotArea plotarea = chart.getPlotArea(); - if(plotarea instanceof Control) { - Control control = (Control)plotarea; - control.addMouseWheelListener(this); - control.addMouseListener(this); - } - } - - @Override - public void mouseScrolled(MouseEvent e) { - - IPlotArea plotArea = chart.getPlotArea(); - if(plotArea instanceof Control) { - Control control = (Control)plotArea; - Point p = control.toControl(chart.toDisplay(e.x, e.y)); - IAxis[] axes; - int dc; - if((e.stateMask & SWT.CTRL) != 0) { - axes = chart.getAxisSet().getYAxes(); - dc = p.y; - } else { - axes = chart.getAxisSet().getXAxes(); - dc = p.x; - } - for(IAxis axis : axes) { - Range range = axis.getRange(); - double x = axis.getDataCoordinate(dc); - if(e.count > 0) { - // TODO maybe multiply step with count? Hard to explain in - // Javadoc, but probably better - range.lower = step * x + (1 - step) * range.lower; - range.upper = step * x + (1 - step) * range.upper; - } else { - range.lower = -step * x + (1 + step) * range.lower; - range.upper = -step * x + (1 + step) * range.upper; - } - if(axis.isCategoryEnabled()) { - range.lower = Math.round(range.lower); - range.upper = Math.round(range.upper); - if(e.count < 0) { - Range oldRange = axis.getRange(); - if(oldRange.lower == range.lower && oldRange.upper == range.upper) { - range.lower--; - range.upper++; - } - } - } - axis.setRange(range); - } - chart.redraw(); - } - } - - @Override - public void widgetDisposed(DisposeEvent arg0) { - - if(chart != null) { - IPlotArea plotarea = chart.getPlotArea(); - if(plotarea instanceof Control) { - Control control = (Control)plotarea; - control.removeMouseWheelListener(this); - control.removeMouseListener(this); - } - } - } - - @Override - public void mouseDoubleClick(MouseEvent arg0) { - - chart.getAxisSet().adjustRange(); - chart.redraw(); - // log.debug("Un zoom"); - } - - @Override - public void mouseDown(MouseEvent arg0) { - - } - - @Override - public void mouseUp(MouseEvent arg0) { - - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ProteomsChart.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ProteomsChart.java deleted file mode 100644 index ebc4264626..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/chart/ProteomsChart.java +++ /dev/null @@ -1,176 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.chart; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.List; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.Peak; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.DisposeEvent; -import org.eclipse.swt.events.DisposeListener; -import org.eclipse.swt.layout.FillLayout; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swtchart.Chart; -import org.eclipse.swtchart.IAxis; -import org.eclipse.swtchart.IAxisSet; -import org.eclipse.swtchart.IBarSeries; -import org.eclipse.swtchart.IBarSeries.BarWidthStyle; -import org.eclipse.swtchart.ISeries.SeriesType; - -public class ProteomsChart implements DisposeListener { - - private Chart chart; - private Composite composite; - private IBarSeries barSeries; - private ChartLabelDrawer chartLabelDrawer; - private ChartLeftRightMotion chartLeftRightMotion; - private ChartZoom chartZoom; - private ArrayList peaks; - private boolean showIntensityPercent = false; - private String xOStitle = "m/z"; - private String yOStitle = "Intensity"; - - public ProteomsChart(Composite composite) { - - this.composite = composite; - createBaseChart(); - } - - private void createBaseChart() { - - if(chart == null) { - chart = new Chart(composite, SWT.NONE); - chart.addDisposeListener(this); - composite.setLayout(new FillLayout()); - chart.getTitle().setVisible(false); - IAxisSet axisSet = chart.getAxisSet(); - IAxis x = axisSet.getXAxis(0); - IAxis y = axisSet.getYAxis(0); - x.getTitle().setText(getxOStitle()); - y.getTitle().setText(getyOStitle()); - barSeries = (IBarSeries)chart.getSeriesSet().createSeries(SeriesType.BAR, "Series1"); - barSeries.setBarWidth(1); - barSeries.setVisibleInLegend(false); - barSeries.setBarWidthStyle(BarWidthStyle.FIXED); - { // helper - // chartLabelDrawer = new ChartLabelDrawer(chart); - chartLeftRightMotion = new ChartLeftRightMotion(chart); - chartZoom = new ChartZoom(chart, 0.2f); - } - } - } - - private double[] getDataX() { - - double[] d = new double[peaks.size()]; - for(int i = 0; i < d.length; i++) { - d[i] = peaks.get(i).getMz(); - } - return d; - } - - private double[] getDataY() { - - double[] d = new double[peaks.size()]; - if(showIntensityPercent) { - double maxIntensity = ChartUtil.findMaxintensity(peaks); - for(int i = 0; i < d.length; i++) { - d[i] = (peaks.get(i).getIntensity() / maxIntensity * 100); - } - } else { - for(int i = 0; i < d.length; i++) { - d[i] = peaks.get(i).getIntensity(); - } - } - return d; - } - - /** - * Show peaks data on chart. Former data are removed. - * - * @param peaks - * List - */ - public void showSpectrumPeaks(List peaks) { - - this.peaks = new ArrayList<>(peaks); - Collections.sort(this.peaks, new Comparator() { - - @Override - public int compare(Peak o1, Peak o2) { - - return Double.compare(o1.getMz(), o2.getMz()); - } - }); - putDataToChart(); - } - - private void putDataToChart() { - - double[] dataX = getDataX(); - double[] dataY = getDataY(); - barSeries.setXSeries(dataX); - barSeries.setYSeries(dataY); - chart.getAxisSet().adjustRange(); - chart.redraw(); - } - - @Override - public void widgetDisposed(DisposeEvent e) { - - disposeQuietly(chartLabelDrawer, e); - disposeQuietly(chartLeftRightMotion, e); - disposeQuietly(chartZoom, e); - } - - private void disposeQuietly(DisposeListener d, DisposeEvent e) { - - try { - d.widgetDisposed(e); - } catch(Throwable t) { - t.printStackTrace(); - } - } - - public boolean isShowIntensityPercent() { - - return showIntensityPercent; - } - - public void setShowIntensityPercent(boolean showIntensityPercent) { - - this.showIntensityPercent = showIntensityPercent; - } - - public String getxOStitle() { - - return xOStitle; - } - - public void setxOStitle(String xOStitle) { - - this.xOStitle = xOStitle; - } - - public String getyOStitle() { - - return yOStitle; - } - - public void setyOStitle(String yOStitle) { - - this.yOStitle = yOStitle; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/ImportParameters.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/ImportParameters.java deleted file mode 100644 index 119b8f8037..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/ImportParameters.java +++ /dev/null @@ -1,142 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata; - -import org.eclipse.core.resources.IProject; - -public class ImportParameters { - - private FILE_FORMAT fileFormat = FILE_FORMAT.MFG_APPLIED_BIOSYSTEM; - private ENZYME enzyme = ENZYME.TRYPSIN; - private DERIVATIZATION_REAGENTS derivatiozationReagents = DERIVATIZATION_REAGENTS.NONE; - private String mgfDirectoryPath; - private IProject project; - - public interface ParameterInfo { - } - - public FILE_FORMAT getFileFormat() { - - return fileFormat; - } - - public void setFileFormat(FILE_FORMAT fileFormat) { - - this.fileFormat = fileFormat; - } - - public ENZYME getEnzyme() { - - return enzyme; - } - - public void setEnzyme(ENZYME enzyme) { - - this.enzyme = enzyme; - } - - public DERIVATIZATION_REAGENTS getDerivatiozationReagents() { - - return derivatiozationReagents; - } - - public void setDerivatiozationReagents(DERIVATIZATION_REAGENTS derivatiozationReagents) { - - this.derivatiozationReagents = derivatiozationReagents; - } - - public String getMgfDirectoryPath() { - - return mgfDirectoryPath; - } - - public void setMgfDirectoryPath(String mgfDirectoryPath) { - - this.mgfDirectoryPath = mgfDirectoryPath; - } - - public IProject getProject() { - - return project; - } - - public void setProject(IProject project) { - - this.project = project; - } - - public enum FILE_FORMAT implements ParameterInfo { - MFG_APPLIED_BIOSYSTEM("MGF", "MALDI TOF/TOF (Applied Biosystems"); - - private String description; - private String formatName; - - private FILE_FORMAT(String formatName, String description) { - this.formatName = formatName; - this.description = description; - } - - public String getFormatName() { - - return formatName; - } - - public String getDescription() { - - return description; - } - } - - public enum ENZYME { - TRYPSIN("Trypsin", "Trypsin enzyme"); - - private String nameEnzyme; - private String description; - - private ENZYME(String name, String description) { - this.nameEnzyme = name; - this.description = description; - } - - public String getNameEnzyme() { - - return nameEnzyme; - } - - public String getDescription() { - - return description; - } - } - - public enum DERIVATIZATION_REAGENTS { - CAF_CAF("CAF/CAF", "CAF/CAF derivatization reagents"), NONE("None", "None"); - - private String description; - private String nameDerivatizationReagents; - - private DERIVATIZATION_REAGENTS(String name, String description) { - this.nameDerivatizationReagents = name; - this.description = description; - } - - public String getNameDerivatizationReagents() { - - return nameDerivatizationReagents; - } - - public String getDescription() { - - return description; - } - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/ImportWizard.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/ImportWizard.java deleted file mode 100644 index 170bd8763a..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/ImportWizard.java +++ /dev/null @@ -1,119 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata; - -import java.io.IOException; -import java.lang.reflect.InvocationTargetException; -import java.util.List; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.Activator; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.ImportDataSelection; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.ProjectWrapper; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.RCPUtil; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata.ImportParameters.FILE_FORMAT; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.e4.ui.workbench.modeling.ESelectionService; -import org.eclipse.jface.dialogs.IDialogSettings; -import org.eclipse.jface.operation.IRunnableWithProgress; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jface.wizard.Wizard; -import org.eclipse.ui.IImportWizard; -import org.eclipse.ui.IWorkbench; -import org.eclipse.ui.PlatformUI; - -public class ImportWizard extends Wizard implements IImportWizard { - - private static final Logger log = Logger.getLogger(ImportWizard.class); - private ParametersWizardPage parametersPage; - private MGFimportWizardPage mgfImportPage; - private ImportParameters parameters; - - public ImportWizard() { - super(); - } - - @Override - public IDialogSettings getDialogSettings() { - - IDialogSettings settings = Activator.getDefault().getDialogSettings(); - IDialogSettings section = settings.getSection("proteoms_importwizard"); - if(section == null) { - section = settings.addNewSection("proteoms_importwizard"); - } - return section; - } - - @Override - public void init(IWorkbench workbench, IStructuredSelection selection) { - - setWindowTitle("MS/MS files Import Wizard"); // NON-NLS-1 - setNeedsProgressMonitor(true); - parameters = new ImportParameters(); - parametersPage = new ParametersWizardPage(parameters, selection); // NON-NLS-1 - mgfImportPage = new MGFimportWizardPage(parameters, selection); - } - - /* - * (non-Javadoc) - * @see org.eclipse.jface.wizard.IWizard#addPages() - */ - @Override - public void addPages() { - - addPage(parametersPage); - addPage(mgfImportPage); - } - - @Override - public boolean performFinish() { - - if(parameters.getFileFormat() == FILE_FORMAT.MFG_APPLIED_BIOSYSTEM) { - try { - getContainer().run(true, true, new IRunnableWithProgress() { - - @Override - public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { - - monitor.setTaskName("Save to disk"); - monitor.beginTask("Start saveing...", 3); - List parsedMSlist = mgfImportPage.getParsedMSlist(); - try { - ProjectWrapper.saveToDisk(parameters.getProject(), parsedMSlist); - monitor.worked(1); - } catch(IOException e) { - log.error("Import error. " + e.getMessage(), e); - monitor.done(); - RCPUtil.showWarningMessageDialog("Import error ", getShell()); - return; - } - if(monitor.isCanceled()) { - // TODO: implement this - } - getShell().getDisplay().asyncExec(() -> { - ESelectionService selectionService = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getService(ESelectionService.class); - selectionService.setSelection(new ImportDataSelection(parsedMSlist, parameters)); - }); - monitor.worked(1); - monitor.done(); - } - }); - } catch(InvocationTargetException | InterruptedException e) { - log.error("Import error. " + e.getMessage(), e); - e.printStackTrace(); - RCPUtil.showWarningMessageDialog("Import error. " + e.getMessage(), getShell()); - } - } - return true; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/MGFimportWizardPage.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/MGFimportWizardPage.java deleted file mode 100644 index b66bf7a311..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/MGFimportWizardPage.java +++ /dev/null @@ -1,266 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata; - -import java.io.File; -import java.io.IOException; -import java.lang.reflect.InvocationTargetException; -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.parser.MGFParser; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.RCPUtil; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.parts.MSTreeNavigator; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.jface.dialogs.IDialogSettings; -import org.eclipse.jface.operation.IRunnableWithProgress; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jface.viewers.TreeViewer; -import org.eclipse.jface.wizard.WizardPage; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.layout.GridData; -import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.DirectoryDialog; -import org.eclipse.swt.widgets.Label; -import org.eclipse.swt.widgets.Text; -import org.eclipse.swt.widgets.Tree; - -public class MGFimportWizardPage extends WizardPage { - - private static final Logger log = Logger.getLogger(MGFimportWizardPage.class); - public static final String PAGE_NAME = "importMGF"; - private static final String OLD_DIR_PATH = "DIALOG_SETTING_OLD_DIR_PATH"; - private Text textPath; - private ImportParameters parameters; - private TreeViewer treeViewer; - protected List parsedMSlist; - - /** - * Create the wizard. - * - * @param selection - * @param parameters - */ - public MGFimportWizardPage(ImportParameters parameters, IStructuredSelection selection) { - super(PAGE_NAME); - this.parameters = parameters; - setTitle("Import MGF data"); - setDescription("Select a directory of MGF files"); - } - - public List getParsedMSlist() { - - return parsedMSlist; - } - - /** - * Create contents of the wizard. - * - * @param parent - */ - @Override - public void createControl(Composite parent) { - - Composite container = new Composite(parent, SWT.NULL); - setControl(container); - container.setLayout(new GridLayout(3, false)); - Label lblNewLabel = new Label(container, SWT.NONE); - lblNewLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); - lblNewLabel.setText("Directory:"); - textPath = new Text(container, SWT.BORDER); - textPath.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); - Button btnNewButton = new Button(container, SWT.NONE); - btnNewButton.addSelectionListener(new SelectionAdapter() { - - @Override - public void widgetSelected(SelectionEvent e) { - - setErrorMessage(null); - DirectoryDialog d = new DirectoryDialog(getShell()); - d.setText("Choose MSG directory"); - // if(parameters.getMgfDirectoryPath() != null) { - // d.setFilterPath(parameters.getMgfDirectoryPath()); - if(textPath.getText() != null || !textPath.getText().isEmpty()) { - File f = new File(textPath.getText()); - if(f.isDirectory()) { - d.setFilterPath(textPath.getText()); - } else { - d.setFilterPath(getPathFromDialogSetting()); - } - } else { - d.setFilterPath(getPathFromDialogSetting()); - } - String path = d.open(); - if(path != null) { - textPath.setText(path); - if(checkDirectory(path)) { - // TODO: check is files in directory can read - parameters.setMgfDirectoryPath(path); - savePathToDialogSetting(path); - getWizard().getContainer().updateButtons(); - } - } - } - }); - btnNewButton.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); - btnNewButton.setText("Browse..."); - new Label(container, SWT.NONE); - new Label(container, SWT.NONE); - new Label(container, SWT.NONE); - Composite composite = new Composite(container, SWT.NONE); - composite.setLayout(new GridLayout(2, false)); - composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1)); - treeViewer = new TreeViewer(composite, SWT.BORDER); - Tree tree = treeViewer.getTree(); - treeViewer.setContentProvider(new MSTreeNavigator.TreeContentProvider()); - treeViewer.setLabelProvider(new MSTreeNavigator.TreeLabelProvider()); - tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); - Composite composite_1 = new Composite(composite, SWT.NONE); - composite_1.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false, 1, 1)); - composite_1.setLayout(new GridLayout(1, false)); - Button btnParseSpectra = new Button(composite_1, SWT.NONE); - btnParseSpectra.setLayoutData(new GridData(SWT.FILL, SWT.TOP, false, false, 1, 1)); - btnParseSpectra.addSelectionListener(new SelectionAdapter() { - - @Override - public void widgetSelected(SelectionEvent e) { - - if(checkDirectory(parameters.getMgfDirectoryPath())) { - startParseSpectra(); - } else { - RCPUtil.showWarningMessageDialog("Wrong directory path!", getShell()); - } - } - }); - btnParseSpectra.setText("Parse spectra"); - Button btnClear = new Button(composite_1, SWT.NONE); - btnClear.addSelectionListener(new SelectionAdapter() { - - @Override - public void widgetSelected(SelectionEvent e) { - - treeViewer.setInput(null); - } - }); - btnClear.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1)); - btnClear.setText("Clear"); - } - - protected void savePathToDialogSetting(String path) { - - IDialogSettings ds = getDialogSettings(); - if(path != null && ds != null) { - ds.put(OLD_DIR_PATH, path); - } else { - log.debug("DB null " + ds); - } - } - - protected String getPathFromDialogSetting() { - - IDialogSettings ds = getDialogSettings(); - if(ds != null) { - return ds.get(OLD_DIR_PATH); - } - log.debug("wizard dialog null"); - return null; - } - - protected void startParseSpectra() { - - if(!checkDirectory(textPath.getText())) { - return; - } - try { - getWizard().getContainer().run(true, true, new IRunnableWithProgress() { - - @Override - public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { - - if(checkDirectory(parameters.getMgfDirectoryPath())) { - MGFParser p = new MGFParser(); - File dir = new File(parameters.getMgfDirectoryPath()); - File[] listFiles = dir.listFiles(); - List msList = new ArrayList<>(); - monitor.setTaskName("Parse MGF files (" + listFiles.length + ")."); - monitor.beginTask("Start parse...", listFiles.length); - for(File file : listFiles) { - if(monitor.isCanceled()) { - return; - } - if(file.isFile()) { - try { - SpectrumMS ms = p.parse(file.getAbsolutePath()); - msList.add(ms); - monitor.worked(1); - } catch(IOException e1) { - e1.printStackTrace(); - } - } - } - monitor.done(); - if(!monitor.isCanceled()) { - setUpTreeData(msList); - parsedMSlist = msList; - } - } - } - }); - } catch(InvocationTargetException e1) { - e1.printStackTrace(); - } catch(InterruptedException e1) { - e1.printStackTrace(); - } - } - - protected void setUpTreeData(List msList) { - - getShell().getDisplay().asyncExec(new Runnable() { - - @Override - public void run() { - - treeViewer.setInput(msList); - setPageComplete(true); - // MessageDialog.openInformation(getShell(), "Found ", "Gotovo " + msList.size()); - } - }); - } - - protected boolean checkDirectory(String path) { - - if(path == null) { - return false; - } - File f = new File(path); - if(!f.isDirectory()) { - setErrorMessage("It is not a directory!"); - return false; - } - return true; - } - - @Override - public boolean isPageComplete() { - - if(checkDirectory(parameters.getMgfDirectoryPath())) { - return true; - } - return false; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/ParametersWizardPage.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/ParametersWizardPage.java deleted file mode 100644 index 6c5666c0d0..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/importdata/ParametersWizardPage.java +++ /dev/null @@ -1,247 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.Activator; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.RCPUtil; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata.ImportParameters.DERIVATIZATION_REAGENTS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata.ImportParameters.ENZYME; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata.ImportParameters.FILE_FORMAT; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.project.CreateProjectWizard; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.IResource; -import org.eclipse.jface.viewers.ArrayContentProvider; -import org.eclipse.jface.viewers.ISelectionChangedListener; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jface.viewers.LabelProvider; -import org.eclipse.jface.viewers.ListViewer; -import org.eclipse.jface.viewers.SelectionChangedEvent; -import org.eclipse.jface.viewers.StructuredSelection; -import org.eclipse.jface.wizard.IWizardPage; -import org.eclipse.jface.wizard.WizardDialog; -import org.eclipse.jface.wizard.WizardPage; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.layout.GridData; -import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Group; -import org.eclipse.swt.widgets.List; - -public class ParametersWizardPage extends WizardPage { - - private static final Logger log = Logger.getLogger(ParametersWizardPage.class); - private static final String PAGE_NAME = "selectParameters"; - private ImportParameters parameters; - private ListViewer listViewer; - - public ParametersWizardPage(ImportParameters parameters, IStructuredSelection selection) { - - super(PAGE_NAME); - setTitle("Import MS data"); // NON-NLS-1 - setDescription("Select parameters"); // NON-NLS-1 - this.parameters = parameters; - } - - @Override - public void createControl(Composite parent) { - - Composite container = new Composite(parent, SWT.NULL); - setControl(container); - container.setLayout(new GridLayout(1, false)); - Group grpSpectrumFormat = new Group(container, SWT.NONE); - grpSpectrumFormat.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); - grpSpectrumFormat.setLayout(new GridLayout(1, false)); - grpSpectrumFormat.setText("Spectrum format"); - {// MGF - Button btnRadioMGFappliedBiosystems = new Button(grpSpectrumFormat, SWT.RADIO); - btnRadioMGFappliedBiosystems.setText(parameters.getFileFormat().getFormatName()); - btnRadioMGFappliedBiosystems.setToolTipText(parameters.getFileFormat().getFormatName()); - btnRadioMGFappliedBiosystems.setSelection(parameters.getFileFormat() == FILE_FORMAT.MFG_APPLIED_BIOSYSTEM); - } - Group grpEnzyme = new Group(container, SWT.NONE); - grpEnzyme.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); - grpEnzyme.setText("Enzyme"); - { // Enzyme trypsin - Button btnRadioEnzymeTrypsin = new Button(grpEnzyme, SWT.RADIO); - btnRadioEnzymeTrypsin.setBounds(10, 31, 111, 20); - btnRadioEnzymeTrypsin.setText(ENZYME.TRYPSIN.getNameEnzyme()); - btnRadioEnzymeTrypsin.setToolTipText(ENZYME.TRYPSIN.getDescription()); - btnRadioEnzymeTrypsin.setSelection(parameters.getEnzyme() == ENZYME.TRYPSIN); - } - Group grpDerivatizationReagents = new Group(container, SWT.NONE); - grpDerivatizationReagents.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); - grpDerivatizationReagents.setLayout(new GridLayout(1, false)); - grpDerivatizationReagents.setText("Derivatization reagents"); - { // Der. reag. none - Button btnRadioNonDetivatizationReagents = new Button(grpDerivatizationReagents, SWT.RADIO); - btnRadioNonDetivatizationReagents.setText("None"); - btnRadioNonDetivatizationReagents.setSelection(parameters.getDerivatiozationReagents() == DERIVATIZATION_REAGENTS.NONE); - } - { // Der. reag. CAF/CAF - Button btnRadioCAFCAF = new Button(grpDerivatizationReagents, SWT.RADIO); - btnRadioCAFCAF.setText("CAF/CAF"); - } - Group grpProject = new Group(container, SWT.NONE); - grpProject.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); - grpProject.setText("Project"); - grpProject.setLayout(new GridLayout(1, false)); - listViewer = new ListViewer(grpProject, SWT.BORDER | SWT.V_SCROLL); - List listProject = listViewer.getList(); - listProject.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); - Button btnNewButton = new Button(grpProject, SWT.NONE); - btnNewButton.addSelectionListener(new SelectionAdapter() { - - @Override - public void widgetSelected(SelectionEvent e) { - - try { - CreateProjectWizard wizard = new CreateProjectWizard(); - wizard.init(Activator.getDefault().getWorkbench(), null); - WizardDialog dialog = new WizardDialog(e.display.getActiveShell(), wizard); - dialog.setBlockOnOpen(true); - int result = dialog.open(); - if(result == WizardDialog.OK) { - IProject newProject = wizard.getCreatedProject(); - log.debug("New project " + newProject); - // listViewer.sets - getControl().getDisplay().asyncExec(new Runnable() { - - @Override - public void run() { - - listViewer.setSelection(new StructuredSelection(newProject), true); - } - }); - // listViewer.getList().fo - } - updateProjectInList(); - } catch(Throwable e1) { - log.error(e1.getMessage()); - e1.printStackTrace(); - } - } - }); - btnNewButton.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); - btnNewButton.setText("New project..."); - setUpProjectViewer(); - } - - @Override - public boolean canFlipToNextPage() { - - return super.canFlipToNextPage(); - } - - @Override - public IWizardPage getNextPage() { - - if(parameters.getFileFormat() == FILE_FORMAT.MFG_APPLIED_BIOSYSTEM) { - ImportWizard im = (ImportWizard)getWizard(); - return im.getPage(MGFimportWizardPage.PAGE_NAME); - } - return super.getNextPage(); - } - - @Override - public boolean isPageComplete() { - - if(listViewer.getSelection().isEmpty()) { - return false; - } - return true; - } - - private void setUpProjectViewer() { - - listViewer.setContentProvider(ArrayContentProvider.getInstance()); - listViewer.setLabelProvider(new LabelProvider() { - - @Override - public String getText(Object element) { - - if(element instanceof IProject) { - IProject p = (IProject)element; - return p.getName(); - } - if(element instanceof IResource) { - IResource r = (IResource)element; - return r.getName(); - } - log.debug("What classs " + element.getClass()); - return "???"; - } - }); - // - // listViewer.setSorter(new ViewerSorter() { - // - // @Override - // public int compare(Viewer viewer, Object e1, Object e2) { - // - // IProject p1 = (IProject)e1; - // IProject p2 = (IProject)e2; - // return Long.compare(p1.getLocalTimeStamp(), p2.getLocalTimeStamp()); - // // return super.compare(viewer, e1, e2); - // } - // }); - // - listViewer.addSelectionChangedListener(new ISelectionChangedListener() { - - @Override - public void selectionChanged(SelectionChangedEvent event) { - - getWizard().getContainer().updateButtons(); - IStructuredSelection sel = listViewer.getStructuredSelection(); - if(!sel.isEmpty()) { - IProject project = (IProject)sel.getFirstElement(); - parameters.setProject(project); - } - } - }); - // ResourcesPlugin.getWorkspace().addResourceChangeListener(this, IResourceChangeEvent.POST_CHANGE); - // IBaseLabelProvider - updateProjectInList(); - } - - private void updateProjectInList() { - - java.util.List projects = RCPUtil.findProteomsProjects(); - listViewer.setInput(projects); - // Select project if is only element - if(projects.size() == 1) { - listViewer.getList().select(0); - } - // listViewer.u - } - - @Override - public void dispose() { - - // ResourcesPlugin.getWorkspace().removeResourceChangeListener(this); - super.dispose(); - } - // @Override - // public void resourceChanged(IResourceChangeEvent event) { - // - // IResourceDelta d = event.getDelta(); - // if(d != null) { - // log.debug("kind " + d.getKind()); - // if(d.getKind() == IResourceDelta.ADDED) { - // log.debug("Project added " + d.getResource()); - // updateProjectData(); - // } - // } - // } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/model/ProteomsProject.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/model/ProteomsProject.java deleted file mode 100644 index 9c75a349c9..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/model/ProteomsProject.java +++ /dev/null @@ -1,58 +0,0 @@ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.model; - -import java.nio.file.Path; -import java.util.List; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; - -public class ProteomsProject { - - private String name; - private List msList; - private Path dir; - - public static enum Type { - CAF_CAF, NORMAL - } - - public ProteomsProject() { - } - - public ProteomsProject(Path dir) { - this.dir = dir; - this.name = dir.getName(dir.getNameCount() - 1).toString(); - } - - public Path getDir() { - - return dir; - } - - public String getName() { - - return name; - } - - public void setName(String name) { - - this.name = name; - } - - public List getMsList() { - - return msList; - } - - public void setMsList(List msList) { - - this.msList = msList; - } - - public boolean containMSdata() { - - if(msList == null) { - return false; - } - return !msList.isEmpty(); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/MSTreeNavigator.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/MSTreeNavigator.java deleted file mode 100644 index 7daad38310..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/MSTreeNavigator.java +++ /dev/null @@ -1,113 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.parts; - -import java.util.List; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ProteomsUtil; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.AbstractSpectrum; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMSMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.model.ProteomsProject; -import org.eclipse.jface.viewers.ITreeContentProvider; -import org.eclipse.jface.viewers.LabelProvider; -import org.eclipse.jface.viewers.Viewer; - -public class MSTreeNavigator { - - public static class TreeLabelProvider extends LabelProvider { - - @Override - public String getText(Object element) { - - if(element instanceof AbstractSpectrum) { - AbstractSpectrum spec = (AbstractSpectrum)element; - return spec.getName(); - } - if(element instanceof ProteomsProject) { - ProteomsProject p = (ProteomsProject)element; - return p.getName(); - } - return "???"; - } - } - - public static class TreeContentProvider implements ITreeContentProvider { - - @Override - public void dispose() { - - } - - @Override - public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { - - } - - @Override - public Object[] getElements(Object inputElement) { - - if(inputElement instanceof List) { - List list = (List)inputElement; - return list.toArray(); - } - return null; - } - - @Override - public Object[] getChildren(Object parentElement) { - - if(parentElement instanceof SpectrumMS) { - SpectrumMS ms = (SpectrumMS)parentElement; - return ms.getMsmsSpectrumsChildren().toArray(); - } - if(parentElement instanceof ProteomsProject) { - ProteomsProject p = (ProteomsProject)parentElement; - List msList = p.getMsList(); - if(msList != null) { - return msList.toArray(); - } - return ProteomsUtil.EMPTY_ARRAY; - } - return null; - } - - @Override - public Object getParent(Object element) { - - if(element instanceof SpectrumMSMS) { - SpectrumMSMS msms = (SpectrumMSMS)element; - return msms.getParentMS(); - } - return null; - } - - @Override - public boolean hasChildren(Object element) { - - if(element instanceof SpectrumMS) { - SpectrumMS ms = (SpectrumMS)element; - if(!ms.getMsmsSpectrumsChildren().isEmpty()) { - return true; - } - } - if(element instanceof ProteomsProject) { - ProteomsProject p = (ProteomsProject)element; - if(p.containMSdata()) { - return true; - } - return false; - } - return false; - } - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/MyMenuCommand.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/MyMenuCommand.java deleted file mode 100644 index 65a028e610..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/MyMenuCommand.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.parts; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.e4.core.di.annotations.Execute; - -public class MyMenuCommand { - - private static final Logger log = Logger.getLogger(MyMenuCommand.class); - - @Execute - public void run() { - - log.debug("Run command"); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProjectExplorerPart.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProjectExplorerPart.java deleted file mode 100644 index e3015d9a01..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProjectExplorerPart.java +++ /dev/null @@ -1,52 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.parts; - -import java.io.IOException; - -import javax.annotation.PostConstruct; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.Activator; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.RCPUtil; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.project.ProjectManager; -import org.eclipse.jface.viewers.TreeViewer; -import org.eclipse.swt.SWT; -import org.eclipse.swt.layout.FillLayout; -import org.eclipse.swt.widgets.Composite; - -public class ProjectExplorerPart { - - private TreeViewer treeViewer; - private Composite composite; - - @PostConstruct - public void createControls(Composite composite) { - - this.composite = composite; - Composite compositeMain = new Composite(composite, SWT.NONE); - compositeMain.setLayout(new FillLayout(SWT.HORIZONTAL)); - treeViewer = new TreeViewer(compositeMain, SWT.BORDER); - initTree(); - } - - private void initTree() { - - treeViewer.setContentProvider(new MSTreeNavigator.TreeContentProvider()); - treeViewer.setLabelProvider(new MSTreeNavigator.TreeLabelProvider()); - ProjectManager pm = Activator.getDefault().getProjectManager(); - try { - treeViewer.setInput(pm.findProjects()); - } catch(IOException e) { - RCPUtil.showWarningMessageDialog("Error occur", composite.getShell()); - } - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomPeaksPart.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomPeaksPart.java deleted file mode 100644 index 4ff8aeb837..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomPeaksPart.java +++ /dev/null @@ -1,35 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.parts; - -import javax.annotation.PostConstruct; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.swt.SWT; -import org.eclipse.swt.layout.FillLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; - -public class ProteomPeaksPart { - - private static final Logger logger = Logger.getLogger(ProteomPeaksPart.class); - - @PostConstruct - public void createControls(Composite composite) { - - logger.debug("Create part"); - composite.setLayout(new FillLayout()); - Button button = new Button(composite, SWT.PUSH); - button.setText("Peaks"); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomPeptideAnalyzerPart.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomPeptideAnalyzerPart.java deleted file mode 100644 index 34dce6a6c8..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomPeptideAnalyzerPart.java +++ /dev/null @@ -1,40 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.parts; - -import javax.inject.Inject; - -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.layout.FillLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; - -public class ProteomPeptideAnalyzerPart { - - @Inject - public ProteomPeptideAnalyzerPart(Composite composite) { - composite.setLayout(new FillLayout()); - Button button = new Button(composite, SWT.PUSH); - button.setText("Proteom Peptide Analyzer"); - button.addSelectionListener(new SelectionAdapter() { - - @Override - public void widgetSelected(SelectionEvent e) { - - System.out.println("ProteoMS is fantastic!"); - } - }); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomSpectraPart.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomSpectraPart.java deleted file mode 100644 index 8ee979c7bf..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomSpectraPart.java +++ /dev/null @@ -1,382 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.parts; - -import java.util.HashMap; -import java.util.List; - -import javax.annotation.PostConstruct; -import javax.annotation.PreDestroy; -import javax.inject.Inject; -import javax.inject.Named; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMSMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.ImportDataSelection; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.ProjectWrapper; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.ProteomsEvent; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.RCPUtil; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.importdata.ImportParameters; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.IResource; -import org.eclipse.core.resources.IResourceChangeEvent; -import org.eclipse.core.resources.IResourceChangeListener; -import org.eclipse.core.resources.IResourceDelta; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.NullProgressMonitor; -import org.eclipse.e4.core.di.annotations.Optional; -import org.eclipse.e4.core.services.events.IEventBroker; -import org.eclipse.e4.ui.di.UIEventTopic; -import org.eclipse.e4.ui.services.IServiceConstants; -import org.eclipse.e4.ui.workbench.modeling.ESelectionService; -import org.eclipse.jface.action.Action; -import org.eclipse.jface.action.MenuManager; -import org.eclipse.jface.viewers.ITreeContentProvider; -import org.eclipse.jface.viewers.ITreeSelection; -import org.eclipse.jface.viewers.LabelProvider; -import org.eclipse.jface.viewers.TreeViewer; -import org.eclipse.jface.viewers.Viewer; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.layout.FillLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Menu; - -public class ProteomSpectraPart implements IResourceChangeListener { - - private static final Logger log = Logger.getLogger(ProteomSpectraPart.class); - @Inject - ESelectionService selectionService; - @Inject - IEventBroker eventBroker; - private TreeViewer treeViewer; - private ContentProvider contentProvider; - - @Inject - @Optional - void createNewProjectHandler(@UIEventTopic(ProteomsEvent.CREATED_NEW_PROJECT) IProject project) { - - log.debug("tree " + treeViewer); - if(treeViewer != null) - treeViewer.getControl().getDisplay().asyncExec(() -> { - treeViewer.add(treeViewer.getInput(), new ProjectWrapper(project)); - log.debug("Create new project " + project); - }); - } - - @Inject - public void setSelection(@Optional @Named(IServiceConstants.ACTIVE_SELECTION) ImportDataSelection sel) { - - if(sel != null) { - log.debug("Got selection " + sel); - ImportParameters parameters = sel.getParameters(); - IProject project = parameters.getProject(); - // ProjectWrapper.saveToDisk(project, sel.getParsedMSlist()); - if(contentProvider != null) { - contentProvider.refreshProject(project); - } - } - } - - @PostConstruct - public void createControls(Composite composite) { - - composite.setLayout(new FillLayout()); - // List proteomsProjects = RCPUtil.findProteomsProjects(); - // if(proteomsProjects.isEmpty()) { - // setUpButtonAddData(composite); - // return; - // } - initTreeViewer(composite); - } - - private void initTreeViewer(Composite composite) { - - Composite compositeMain = new Composite(composite, SWT.NONE); - compositeMain.setLayout(new FillLayout(SWT.HORIZONTAL)); - treeViewer = new TreeViewer(compositeMain, SWT.BORDER); - setUpTreeData(); - setProjectListener(); - setMenu(); - } - - private void setMenu() { - - MenuManager manager = new MenuManager(); - manager.setRemoveAllWhenShown(true); - manager.addMenuListener(manager1 -> { - // fill menu - ITreeSelection sel = treeViewer.getStructuredSelection(); - Object el = sel.getFirstElement(); - if(el instanceof ProjectWrapper) { - ProjectWrapper p = (ProjectWrapper)el; - manager1.add(new Action("Delete") { - - @Override - public void run() { - - try { - p.getProject().delete(true, new NullProgressMonitor()); - } catch(CoreException e) { - e.printStackTrace(); - log.warn("Error ", e); - } - } - }); - } - }); - Menu menu = manager.createContextMenu(treeViewer.getControl()); - treeViewer.getControl().setMenu(menu); - } - - @Override - public void resourceChanged(IResourceChangeEvent event) { - - log.debug(RCPUtil.getEventDescription(event)); - if(event == null || event.getDelta() == null) - return; - // log.debug("event type " + event.getType()); - if(event.getType() == IResourceChangeEvent.PRE_CLOSE) { - IResource resource = event.getResource(); - if(resource instanceof IProject) { - IProject p = (IProject)resource; - if(p.isOpen()) { - log.debug("Close project " + p.getName()); - } - // log.debug("PRE CLOSE project " + p.getName()); - } - } - { - IResourceDelta d = event.getDelta(); - if(d != null) { - int flags = d.getFlags(); - if((flags & IResourceDelta.OPEN) != 0) { - log.debug("Open project " + d.getResource()); - } - } - } - IResourceDelta d = event.getDelta(); - if(d != null) { - // log.debug("Delta kind " + d.getKind() + " delta flags " + d.getFlags()); - if(d.getKind() == IResourceDelta.ADDED) { - if(d.getResource().getType() == IResource.PROJECT) { - // New project is added - IProject project = (IProject)d.getResource(); - log.debug("Added new Project " + project); - } - } - if(d.getFlags() == IResourceDelta.OPEN) { - // project is open or close - IProject project = (IProject)d.getResource(); - if(project != null) - log.debug("Project " + project.getName() + " is open=" + project.isOpen()); - } - } - } - - private void setProjectListener() { - - ResourcesPlugin.getWorkspace().addResourceChangeListener(this); - } - - @PreDestroy - public void preDestroy() { - - ResourcesPlugin.getWorkspace().removeResourceChangeListener(this); - } - - private void setUpTreeData() { - - contentProvider = new ContentProvider(); - treeViewer.setContentProvider(contentProvider); - treeViewer.setLabelProvider(new LabelPro()); - List projects = RCPUtil.findProteomsProjects(); - ProjectWrapper[] projectsWrapperArray = new ProjectWrapper[projects.size()]; - int c = 0; - for(IProject iProject : projects) { - projectsWrapperArray[c++] = new ProjectWrapper(iProject); - } - treeViewer.setInput(projectsWrapperArray); - } - - @SuppressWarnings("unused") - private void setUpButtonAddData(Composite composite) { - - Button button = new Button(composite, SWT.PUSH); - button.setText("Create new Project"); - button.addSelectionListener(new SelectionAdapter() { - - @Override - public void widgetSelected(SelectionEvent e) { - - // WizardDialog d = new WizardDialog(e.display.getActiveShell(), new ImportWizard()); - // d.open(); - RCPUtil.openProteomsNewProject(e.display.getActiveShell()); - } - }); - } -} - -class LabelPro extends LabelProvider { - - private static final Logger log = Logger.getLogger(LabelPro.class); - - @Override - public String getText(Object element) { - - if(element instanceof ProjectWrapper) { - ProjectWrapper p = (ProjectWrapper)element; - return p.getProject().getName(); - } - if(element instanceof SpectrumMSMS) { - SpectrumMSMS msms = (SpectrumMSMS)element; - return msms.getName(); - } - if(element instanceof SpectrumMS) { - SpectrumMS ms = (SpectrumMS)element; - return ms.getName(); - } - log.warn("??? " + element); - return "???"; - } -} - -class ContentProvider implements ITreeContentProvider { - - private static final Logger log = Logger.getLogger(ContentProvider.class); - /** - * MS id => project - */ - private HashMap map; - private static final Object[] EMPTY_ARRAY = new Object[0]; - private List projects; - private Viewer viewer; - - @Override - public void dispose() { - - } - - public void refreshProject(IProject project) { - - if(projects != null) { - for(ProjectWrapper p : projects) { - if(p.getProject() == project) { - ((TreeViewer)viewer).refresh(p); - return; - } - } - } - } - - @Override - public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { - - // log.debug("Imput changed " + RCPUtil.getClass(oldInput) + " new= " + RCPUtil.getClass(newInput)); - if(newInput == null) { - return; - } - this.viewer = viewer; - map = new HashMap<>(); - ProjectWrapper[] wrappers = (ProjectWrapper[])newInput; - for(ProjectWrapper projectWrapper : wrappers) { - List mSlist = projectWrapper.getMSlist(); - for(SpectrumMS ms : mSlist) { - map.put(ms.getId(), projectWrapper); - } - } - } - - @Override - public Object[] getElements(Object inputElement) { - - if(inputElement instanceof ProjectWrapper[]) { - return (ProjectWrapper[])inputElement; - } - if(inputElement instanceof List) { - List list = (List)inputElement; - return list.toArray(); - } - log.warn("??? " + inputElement); - return null; - } - - @Override - public Object[] getChildren(Object parentElement) { - - if(parentElement instanceof ProjectWrapper) { - ProjectWrapper p = (ProjectWrapper)parentElement; - List msList = p.getMSlist(); - if(msList != null) { - return msList.toArray(); - } else { - return null; - } - } - if(parentElement instanceof SpectrumMS) { - SpectrumMS ms = (SpectrumMS)parentElement; - if(ms.getNumberOfMSMS() == 0) { - return EMPTY_ARRAY; - } - return ms.getMsmsSpectrumsChildren().toArray(); - } - log.warn("??? " + parentElement); - return null; - } - - @Override - public Object getParent(Object element) { - - if(element instanceof SpectrumMSMS) { - SpectrumMSMS msms = (SpectrumMSMS)element; - return msms.getParentMS(); - } - if(element instanceof SpectrumMS) { - SpectrumMS ms = (SpectrumMS)element; - return map.get(ms.getId()); - } - log.warn("??? " + element); - return null; - } - - @Override - public boolean hasChildren(Object element) { - - if(element instanceof ProjectWrapper) { - ProjectWrapper p = (ProjectWrapper)element; - if(!p.getProject().isOpen()) { - return false; - } - if(p.getMSlist().isEmpty()) { - return false; - } - return true; - } - if(element instanceof SpectrumMSMS) { - return false; - } - if(element instanceof SpectrumMS) { - SpectrumMS ms = (SpectrumMS)element; - if(ms.getNumberOfMSMS() > 0) { - return true; - } - return false; - } - log.warn("??? " + element); - return false; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomSpectrumPart.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomSpectrumPart.java deleted file mode 100644 index 283a501073..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/parts/ProteomSpectrumPart.java +++ /dev/null @@ -1,40 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.parts; - -import javax.inject.Inject; - -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.SelectionAdapter; -import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.layout.FillLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; - -public class ProteomSpectrumPart { - - @Inject - public ProteomSpectrumPart(Composite composite) { - composite.setLayout(new FillLayout()); - Button button = new Button(composite, SWT.PUSH); - button.setText("Chart Spectrum"); - button.addSelectionListener(new SelectionAdapter() { - - @Override - public void widgetSelected(SelectionEvent e) { - - System.out.println("ProteoMS is fantastic!"); - } - }); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/preferences/PreferencePage.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/preferences/PreferencePage.java deleted file mode 100644 index 9b24790152..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/preferences/PreferencePage.java +++ /dev/null @@ -1,40 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.preferences; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.preferences.PreferenceSupplier; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.Activator; -import org.eclipse.jface.preference.FieldEditorPreferencePage; -import org.eclipse.jface.preference.StringFieldEditor; -import org.eclipse.ui.IWorkbench; -import org.eclipse.ui.IWorkbenchPreferencePage; - -public class PreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage { - - public PreferencePage() { - super(GRID); - setPreferenceStore(Activator.getDefault().getPreferenceStore()); - setDescription("ProteoMS"); - } - - @Override - public void init(IWorkbench workbench) { - - } - - @Override - protected void createFieldEditors() { - - addField(new StringFieldEditor(PreferenceSupplier.P_MY_PREF, "How is it?", getFieldEditorParent())); - } -} \ No newline at end of file diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/project/CreateProjectPage.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/project/CreateProjectPage.java deleted file mode 100644 index e8d02a4c9c..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/project/CreateProjectPage.java +++ /dev/null @@ -1,160 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.project; - -import org.eclipse.core.resources.IResource; -import org.eclipse.core.resources.IWorkspace; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Path; -import org.eclipse.jface.dialogs.IDialogPage; -import org.eclipse.jface.wizard.WizardPage; -import org.eclipse.swt.SWT; -import org.eclipse.swt.events.ModifyEvent; -import org.eclipse.swt.events.ModifyListener; -import org.eclipse.swt.layout.GridData; -import org.eclipse.swt.layout.GridLayout; -import org.eclipse.swt.widgets.Button; -import org.eclipse.swt.widgets.Composite; -import org.eclipse.swt.widgets.Label; -import org.eclipse.swt.widgets.Text; - -public class CreateProjectPage extends WizardPage { - - private Text projectText; - private Label lblprojectName; - private Button btnTrypsin; - private Label lblEnzimes; - - /** - * Constructor for SampleNewWizardPage. - * - * @param pageName - */ - public CreateProjectPage() { - - super("wizardPage"); - setTitle("New Peptide Tandem Mass Spectra project"); - setDescription("This wizard creates a new Peptide Tandem Mass Spectra project."); - } - - /** - * @see IDialogPage#createControl(Composite) - */ - @Override - public void createControl(Composite parent) { - - Composite container = new Composite(parent, SWT.NULL); - GridLayout layout = new GridLayout(); - container.setLayout(layout); - layout.numColumns = 2; - layout.verticalSpacing = 9; - lblprojectName = new Label(container, SWT.NULL); - lblprojectName.setText("&ProjectName"); - projectText = new Text(container, SWT.BORDER | SWT.SINGLE); - projectText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); - projectText.addModifyListener(new ModifyListener() { - - @Override - public void modifyText(ModifyEvent e) { - - textChanged(); - } - }); - setControl(container); - lblEnzimes = new Label(container, SWT.NONE); - lblEnzimes.setText("Enzimes"); - btnTrypsin = new Button(container, SWT.RADIO); - btnTrypsin.setSelection(true); - btnTrypsin.setText("Trypsin"); - textChanged(); - } - - @Override - public void setVisible(boolean visible) { - - super.setVisible(visible); - if(visible) { - projectText.setFocus(); - } - } - - /** - * Ensures that both text fields are set. - */ - private void textChanged() { - - IWorkspace workspace = ResourcesPlugin.getWorkspace(); - String projectName = projectText.getText(); - if(projectName == null || projectName.isEmpty()) { - setPageComplete(false); - return; - } - IStatus validationResult = workspace.validateName(projectName, IResource.PROJECT); - if(!validationResult.isOK()) { - updateStatus("Wrong name '" + projectName + "'"); - return; - } - if(workspace.getRoot().exists(new Path(projectName))) { - updateStatus("Project exist '" + projectName + "'"); - return; - } - updateStatus(null); - } - - @SuppressWarnings("unused") - private void dialogChanged2() { - - IResource container = ResourcesPlugin.getWorkspace().getRoot().findMember(new Path(getProjectName())); - String fileName = ""; - if(getProjectName().length() == 0) { - updateStatus("File container must be specified"); - return; - } - if(container == null || (container.getType() & (IResource.PROJECT | IResource.FOLDER)) == 0) { - updateStatus("File container must exist"); - return; - } - if(!container.isAccessible()) { - updateStatus("Project must be writable"); - return; - } - if(fileName.length() == 0) { - updateStatus("File name must be specified"); - return; - } - if(fileName.replace('\\', '/').indexOf('/', 1) > 0) { - updateStatus("File name must be valid"); - return; - } - int dotLoc = fileName.lastIndexOf('.'); - if(dotLoc != -1) { - String ext = fileName.substring(dotLoc + 1); - if(ext.equalsIgnoreCase("mpe") == false) { - updateStatus("File extension must be \"mpe\""); - return; - } - } - updateStatus(null); - } - - private void updateStatus(String message) { - - setErrorMessage(message); - setPageComplete(message == null); - } - - public String getProjectName() { - - return projectText.getText(); - } -} \ No newline at end of file diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/project/CreateProjectWizard.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/project/CreateProjectWizard.java deleted file mode 100644 index fcf6f0749b..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/project/CreateProjectWizard.java +++ /dev/null @@ -1,165 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.project; - -import java.lang.reflect.InvocationTargetException; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.ProteomsEvent; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.ProteomsProjectNature; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.RCPUtil; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.IProjectDescription; -import org.eclipse.core.resources.IWorkspace; -import org.eclipse.core.resources.IWorkspaceRoot; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.NullProgressMonitor; -import org.eclipse.jface.dialogs.MessageDialog; -import org.eclipse.jface.operation.IRunnableWithProgress; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jface.wizard.Wizard; -import org.eclipse.ui.INewWizard; -import org.eclipse.ui.IWorkbench; -import org.eclipse.ui.IWorkbenchWizard; - -/** - * This is a sample new wizard. Its role is to create a new file - * resource in the provided container. If the container resource - * (a folder or a project) is selected in the workspace - * when the wizard is opened, it will accept it as the target - * container. The wizard creates one file with the extension - * "mpe". If a sample multi-page editor (also available - * as a template) is registered for the same extension, it will - * be able to open it. - */ -public class CreateProjectWizard extends Wizard implements INewWizard { - - private static final Logger log = Logger.getLogger(CreateProjectWizard.class); - private CreateProjectPage page; - @SuppressWarnings("unused") - private ISelection selection; - private IProject createdProject; - - /** - * Constructor for SampleNewWizard. - */ - public CreateProjectWizard() { - - super(); - setNeedsProgressMonitor(true); - } - - /** - * Adding the page to the wizard. - */ - @Override - public void addPages() { - - page = new CreateProjectPage(); - addPage(page); - } - - /** - * This method is called when 'Finish' button is pressed in - * the wizard. We will create an operation and run it - * using wizard as execution context. - */ - @Override - public boolean performFinish() { - - final String projectName = page.getProjectName(); - IRunnableWithProgress op = new IRunnableWithProgress() { - - @Override - public void run(IProgressMonitor monitor) throws InvocationTargetException { - - try { - doFinish(projectName, monitor); - } catch(CoreException e) { - throw new InvocationTargetException(e); - } finally { - monitor.done(); - } - } - }; - try { - getContainer().run(true, false, op); - } catch(InterruptedException e) { - return false; - } catch(InvocationTargetException e) { - Throwable realException = e.getTargetException(); - e.printStackTrace(); - MessageDialog.openError(getShell(), "Error", "Create project error: " + realException.getMessage()); - return false; - } - return true; - } - - /** - * The worker method. It will find the container, create the - * file if missing or just replace its contents, and open - * the editor on the newly created file. - */ - private void doFinish(String projectName, IProgressMonitor monitor) throws CoreException { - - monitor.beginTask("Creating project " + projectName, 2); - IWorkspace workspace = ResourcesPlugin.getWorkspace(); - IWorkspaceRoot root = workspace.getRoot(); - IProject project = root.getProject(projectName); - IProjectDescription projectDescription = ResourcesPlugin.getWorkspace().newProjectDescription(project.getName()); - monitor.worked(1); - project.create(projectDescription, monitor); - monitor.worked(10); - addProjectNature(project); - project.open(monitor); - createdProject = project; - RCPUtil.sendEvent(ProteomsEvent.CREATED_NEW_PROJECT, project, getShell()); - } - - public IProject getCreatedProject() { - - return createdProject; - } - - private void addProjectNature(IProject project) { - - try { - project.open(new NullProgressMonitor()); - IProjectDescription description = project.getDescription(); - String[] natures = description.getNatureIds(); - String[] newNatures = new String[natures.length + 1]; - System.arraycopy(natures, 0, newNatures, 0, natures.length); - newNatures[natures.length] = ProteomsProjectNature.NATURE_ID; - description.setNatureIds(newNatures); - project.setDescription(description, new NullProgressMonitor()); - } catch(CoreException e) { - // Something went wrong - log.error("Project nature error: " + e.getMessage(), e); - e.printStackTrace(); - } - } - - /** - * We will accept the selection in the workbench to see if - * we can initialize from it. - * - * @see IWorkbenchWizard#init(IWorkbench, IStructuredSelection) - */ - @Override - public void init(IWorkbench workbench, IStructuredSelection selection) { - - this.selection = selection; - } -} \ No newline at end of file diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/project/ProjectManager.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/project/ProjectManager.java deleted file mode 100644 index c836ac4b78..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ui/project/ProjectManager.java +++ /dev/null @@ -1,49 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.project; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.List; -import java.util.stream.Collectors; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ui.model.ProteomsProject; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.runtime.IPath; - -public class ProjectManager { - - public static final String DEFAULT_PROJECT_NAME = "Proteoms project"; - private Path projectsDir; - @SuppressWarnings("unused") - private IProject project; - - public ProjectManager(IProject project) { - - this.project = project; - IPath fullPath = project.getFullPath(); - projectsDir = fullPath.toFile().toPath(); - } - - public ProjectManager(Path dir) { - - projectsDir = dir; - } - - public List findProjects() throws IOException { - - return Files.list(projectsDir).filter(t -> { - return t.toFile().isDirectory(); - }).map(t -> new ProteomsProject(t)).collect(Collectors.toList()); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.classpath b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.classpath deleted file mode 100644 index eca7bdba8f..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.classpath +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.gitignore b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.gitignore deleted file mode 100644 index ae3c172604..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/bin/ diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.project b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.project deleted file mode 100644 index 11f8054af4..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.project +++ /dev/null @@ -1,28 +0,0 @@ - - - org.eclipse.chemclipse.msd.identifier.supplier.proteoms - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.pde.PluginNature - org.eclipse.jdt.core.javanature - - diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.settings/org.eclipse.jdt.core.prefs b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 0c68a61dca..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,7 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/META-INF/MANIFEST.MF b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/META-INF/MANIFEST.MF deleted file mode 100644 index c0aac5999c..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/META-INF/MANIFEST.MF +++ /dev/null @@ -1,25 +0,0 @@ -Manifest-Version: 1.0 -Automatic-Module-Name: org.eclipse.chemclipse.msd.identifier.supplier.proteoms -Bundle-ManifestVersion: 2 -Bundle-Name: Proteoms -Bundle-SymbolicName: org.eclipse.chemclipse.msd.identifier.supplier.proteoms;singleton:=true -Bundle-Version: 0.9.0.qualifier -Bundle-Activator: org.eclipse.chemclipse.msd.identifier.supplier.proteoms.Activator -Bundle-Vendor: Chemclipse -Require-Bundle: org.eclipse.core.runtime, - org.eclipse.chemclipse.model;bundle-version="0.8.0", - org.eclipse.chemclipse.msd.model;bundle-version="0.8.0", - org.eclipse.chemclipse.msd.converter;bundle-version="0.8.0", - org.eclipse.chemclipse.logging;bundle-version="0.8.0", - org.eclipse.chemclipse.progress;bundle-version="0.8.0", - org.eclipse.chemclipse.support;bundle-version="0.8.0", - org.eclipse.chemclipse.processing;bundle-version="0.8.0", - org.apache.commons.io;bundle-version="2.4.0", - org.eclipse.chemclipse.converter;bundle-version="0.8.0" -Bundle-RequiredExecutionEnvironment: JavaSE-1.8 -Bundle-ActivationPolicy: lazy -Export-Package: org.eclipse.chemclipse.msd.identifier.supplier.proteoms, - org.eclipse.chemclipse.msd.identifier.supplier.proteoms.db, - org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model, - org.eclipse.chemclipse.msd.identifier.supplier.proteoms.parser, - org.eclipse.chemclipse.msd.identifier.supplier.proteoms.preferences diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/OSGI-INF/l10n/bundle_en.properties b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/OSGI-INF/l10n/bundle_en.properties deleted file mode 100644 index 597fd0bfba..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/OSGI-INF/l10n/bundle_en.properties +++ /dev/null @@ -1 +0,0 @@ -#Properties file diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/build.properties b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/build.properties deleted file mode 100644 index 948f0bdf02..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/build.properties +++ /dev/null @@ -1,6 +0,0 @@ -source.. = src/ -output.. = bin/ -bin.includes = META-INF/,\ - .,\ - OSGI-INF/,\ - plugin.xml diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/plugin.xml b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/plugin.xml deleted file mode 100644 index 338edfdab4..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/plugin.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/.gitignore b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/.gitignore deleted file mode 100644 index e53ef90a99..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/log4j.properties diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/Activator.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/Activator.java deleted file mode 100644 index be62b7ca8f..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/Activator.java +++ /dev/null @@ -1,46 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; - -public class Activator implements BundleActivator { - - private static BundleContext context; - - public static BundleContext getContext() { - - return context; - } - - /* - * (non-Javadoc) - * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext) - */ - public void start(BundleContext bundleContext) throws Exception { - - Activator.context = bundleContext; - // Converter - // DatabaseConverter.convert( - } - - /* - * (non-Javadoc) - * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext) - */ - public void stop(BundleContext bundleContext) throws Exception { - - Activator.context = null; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/PathResolver.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/PathResolver.java deleted file mode 100644 index 83a5d4ad95..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/PathResolver.java +++ /dev/null @@ -1,45 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Lablicate GmbH. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms; - -import java.io.IOException; -import java.net.URL; - -import org.eclipse.core.runtime.FileLocator; -import org.eclipse.core.runtime.IPath; -import org.eclipse.core.runtime.Path; -import org.eclipse.core.runtime.Platform; -import org.osgi.framework.Bundle; - -public class PathResolver { - - /** - * Returns a absolute path of the specified Folder. For example - * TESTDATA_IMPORT_EMPTY as an absolute Path: - * $PluginPath$/testData/files/EMPTY.D/DATA.MS - * - * @param string - * @return String absolutePath - */ - public static String getAbsolutePath(String string) { - - Bundle bundle = Platform.getBundle(Activator.getContext().getBundle().getSymbolicName()); - IPath path = new Path(string); - URL url = FileLocator.find(bundle, path, null); - try { - return FileLocator.resolve(url).getPath(); - } catch(IOException e) { - e.printStackTrace(); - } - return null; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ProteomsUtil.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ProteomsUtil.java deleted file mode 100644 index 6981c1d396..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/ProteomsUtil.java +++ /dev/null @@ -1,41 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms; - -import java.util.ArrayList; -import java.util.List; - -public class ProteomsUtil { - - public static final List EMPTY_LIST = new ArrayList<>(0); - public static final Object[] EMPTY_ARRAY = new Object[0]; - private static long lastUniqueID = -1; - - /** - * Unique ID based on time. - * - * @return - */ - public static synchronized long nextUniqueID() { - - long t = System.nanoTime(); - while(t == lastUniqueID) { - try { - Thread.sleep(1); - } catch(InterruptedException ignore) { - } - t = System.currentTimeMillis(); - } - lastUniqueID = t; - return t; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/db/.gitignore b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/db/.gitignore deleted file mode 100644 index 1136903d3a..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/db/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/DBmain_TESTER.java diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/db/PathManager.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/db/PathManager.java deleted file mode 100644 index b6b16b1a5d..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/db/PathManager.java +++ /dev/null @@ -1,91 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.db; - -import java.io.IOException; -import java.nio.file.DirectoryStream; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.List; - -public class PathManager { - - private static final String MSMS_DATA = "msms_data_"; - private Path projectDir; - - public PathManager(Path projectDir) { - this.projectDir = projectDir; - } - - public Path getMSdir(long msId) throws IOException { - - Path msDir = Paths.get(projectDir.toString(), "ms_" + msId); - if(!Files.isDirectory(msDir)) { - Files.createDirectory(msDir); - } - return msDir; - } - - public List getMSidList() throws IOException { - - List list = new ArrayList<>(); - try (DirectoryStream stream = Files.newDirectoryStream(projectDir, "ms_*")) { - for(Path msDir : stream) { - String name = msDir.getName(msDir.getNameCount() - 1).toString(); - String msId = name.substring(3, name.length()); - list.add(Long.parseLong(msId)); - } - } - return list; - } - - public List getMSMSidList(long msId) throws IOException { - - List list = new ArrayList<>(); - Path msDir = getMSdir(msId); - try (DirectoryStream stream = Files.newDirectoryStream(msDir, MSMS_DATA + "*")) { - for(Path msmsDir : stream) { - String name = msmsDir.getName(msmsDir.getNameCount() - 1).toString(); - String msmsId = name.substring(MSMS_DATA.length(), name.length()); - list.add(Long.parseLong(msmsId)); - } - } - return list; - } - - public Path getMSpeaksFile(long msId) throws IOException { - - Path msPeaksFile = Paths.get(getMSdir(msId).toString(), "ms_peaks.bin"); - return msPeaksFile; - } - - public Path getMSdataFile(long msId) throws IOException { - - Path msDataFile = Paths.get(getMSdir(msId).toString(), "ms_data.bin"); - return msDataFile; - } - - public Path getMSMSdataFile(long msId, long msmsId) throws IOException { - - Path msDir = getMSdir(msId); - Path msmsDataFile = Paths.get(msDir.toString(), MSMS_DATA + msmsId); - return msmsDataFile; - } - - public Path getMSMSpeaksFile(long msId, long msmsId) throws IOException { - - Path peaksPath = Paths.get(getMSdir(msId).toString(), "msms_peaks_" + msmsId); - return peaksPath; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/db/ProteomsDB.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/db/ProteomsDB.java deleted file mode 100644 index 145316e82c..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/db/ProteomsDB.java +++ /dev/null @@ -1,346 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philp Wenig - refactoring - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.db; - -import java.io.BufferedInputStream; -import java.io.BufferedOutputStream; -import java.io.DataInputStream; -import java.io.DataOutputStream; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.NotSerializableException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.ArrayList; -import java.util.List; - -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.Peak; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMSMS; - -public class ProteomsDB { - - private static final Logger log = Logger.getLogger(ProteomsDB.class); - private Path projectDir; - private PathManager pathManager; - - public ProteomsDB(Path projectDir) { - - this.projectDir = projectDir; - pathManager = new PathManager(projectDir); - } - - public Path getProjectDir() { - - return projectDir; - } - - public void saveAllSpectrumsMS(List spectrums) throws IOException { - - saveSpectrumsMS(spectrums, true, true, true); - } - - public void saveSpectrumsMS(List spectrums, boolean withMSpeaks, boolean withMSMS, boolean withMSMSpeaks) throws IOException { - - for(SpectrumMS ms : spectrums) { - // Path msDir = pathManager.getMSdir(ms.getId()); - saveSpectrumMS(ms, ms.getId()); - if(withMSpeaks) - saveSpectrumMSpeaks(ms.getPeaks(), ms.getId()); - if(withMSMS) - saveSpectrumsMSMS(ms.getMsmsSpectrumsChildren(), ms.getId(), withMSMSpeaks); - } - } - - public void saveSpectrumMSpeaks(List peaks, long msId) throws IOException { - - if(peaks == null || peaks.isEmpty()) { - return; - } - Path msDataFile = pathManager.getMSpeaksFile(msId); - // Path msDataFile = Paths.get(msDir.toString(), "ms_data_peaks.bin"); - try (DataOutputStream out = getDataOutStream(msDataFile)) { - writePeaks(peaks, out); - } catch(IOException e) { - log.error("Error: " + e.getMessage(), e); - } finally { - // - } - } - - private void saveSpectrumMS(SpectrumMS ms, long msId) throws IOException { - - Path msDataFile = pathManager.getMSdataFile(msId); - // Path msDataFile = Paths.get(msDir.toString(), "ms_data.bin"); - try (DataOutputStream out = getDataOutStream(msDataFile)) { - write(ms, out); - } catch(IOException e) { - log.error("Error: " + e.getMessage(), e); - } finally { - // - } - } - - private void saveSpectrumsMSMS(List msmsList, long msId, boolean withPeaks) throws IOException { - - if(msmsList == null || msmsList.isEmpty()) { - return; - } - for(SpectrumMSMS msms : msmsList) { - saveSpectrumMSMS(msms, msId, withPeaks); - } - } - - private void saveSpectrumMSMS(SpectrumMSMS msms, long msId, boolean withPeaks) throws IOException { - - Path msmsDataFile = pathManager.getMSMSdataFile(msId, msms.getId()); - try (DataOutputStream out = getDataOutStream(msmsDataFile)) { - writeMSMS(msms, out); - if(withPeaks) { - Path peaksPath = pathManager.getMSMSpeaksFile(msId, msms.getId()); - writePeaks(msms.getPeaks(), peaksPath); - } - } catch(IOException e) { - log.error("Error: " + e.getMessage(), e); - } finally { - // - } - } - - private DataOutputStream getDataOutStream(Path msDataFile) throws FileNotFoundException { - - return new DataOutputStream(new BufferedOutputStream(new FileOutputStream(msDataFile.toFile()))); - } - - public List getMSandMSMSwithoutPeaks() throws IOException { - - return getSpectrumsMS(false, true, false); - } - - public List getSpectrumsMS(boolean withMSPeaks, boolean withMSMS, boolean withMSMSpeaks) throws IOException { - - List list = new ArrayList<>(); - List msIds = pathManager.getMSidList(); - for(Long msId : msIds) { - SpectrumMS ms = getSpectrumMS(msId); - list.add(ms); - if(withMSPeaks) { - List peaks = getSpectrumMSpeaks(msId); - ms.setPeaks(peaks); - } - if(withMSMS) { - List msmsList = getSpectrumsMSMS(msId, withMSMSpeaks); - ms.setMsmsSpectrumsChildren(msmsList); - } - } - return list; - } - - private SpectrumMS getSpectrumMS(long msId) throws IOException { - - Path msDataFile = pathManager.getMSdataFile(msId); - SpectrumMS ms = new SpectrumMS(); - try (DataInputStream in = getDataInStream(msDataFile)) { - readSpectrumMS(ms, in); - return ms; - } finally { - // - } - } - - private List getSpectrumsMSMS(long msId, boolean withMSMSPeaks) throws IOException { - - List list = new ArrayList<>(); - List msmsIdlist = pathManager.getMSMSidList(msId); - for(Long msmsId : msmsIdlist) { - SpectrumMSMS msms = getSpectrumMSMS(msId, msmsId); - list.add(msms); - if(withMSMSPeaks) { - List peaks = getSpectrumMSMSpeaks(msId, msmsId); - msms.setPeaks(peaks); - } - } - return list; - } - - private List getSpectrumMSMSpeaks(long msId, long msmsId) throws NotSerializableException, IOException { - - Path msmsPeaksFile = pathManager.getMSMSpeaksFile(msId, msmsId); - if(Files.exists(msmsPeaksFile)) { - try (DataInputStream in = getDataInStream(msmsPeaksFile)) { - List peaks = readPeaks(in); - return peaks; - } finally { - // - } - } else { - return null; - } - } - - private DataInputStream getDataInStream(Path file) throws FileNotFoundException { - - return new DataInputStream(new BufferedInputStream(new FileInputStream(file.toFile()))); - } - - private SpectrumMSMS getSpectrumMSMS(long msId, long msmsId) throws IOException { - - Path msmsDataFile = pathManager.getMSMSdataFile(msId, msmsId); - try (DataInputStream in = getDataInStream(msmsDataFile)) { - SpectrumMSMS msms = readSpectrumMSMS(in); - return msms; - } finally { - // - } - } - - private List getSpectrumMSpeaks(Long msId) throws IOException { - - Path msDataFile = pathManager.getMSpeaksFile(msId); - if(!Files.isRegularFile(msDataFile)) { - return null; - } - // - List peaks = null; - try (DataInputStream in = getDataInStream(msDataFile)) { - peaks = readPeaks(in); - return peaks; - } finally { - // - } - } - - private void writePeaks(List peaks, DataOutputStream out) throws IOException, NotSerializableException { - - out.writeInt(Peak.version); - switch(Peak.version) { - case 1: - out.writeInt(peaks.size()); - for(Peak p : peaks) { - writePeak(p, out); - } - break; - default: - throw new NotSerializableException("Not implemented Peak version: " + SpectrumMS.version); - } - } - - private void write(SpectrumMS ms, DataOutputStream out) throws IOException, NotSerializableException { - - out.writeInt(SpectrumMS.version); - switch(SpectrumMS.version) { - case 1: - out.writeLong(ms.getId()); - out.writeUTF(ms.getName()); - break; - default: - throw new NotSerializableException("Not implemented MS version: " + SpectrumMS.version); - } - } - - private void writePeaks(List peaks, Path peaksPath) throws FileNotFoundException { - - if(peaks != null && !peaks.isEmpty()) { - try (DataOutputStream outPeaks = getDataOutStream(peaksPath)) { - writePeaks(peaks, outPeaks); - } catch(IOException e) { - log.error("Error: " + e.getMessage(), e); - } finally { - // - } - } - } - - private void writePeak(Peak p, DataOutputStream out) throws IOException { - - if(p == null) { - out.writeDouble(-1); - out.writeDouble(-1); - } else { - out.writeDouble(p.getMz()); - out.writeDouble(p.getIntensity()); - } - } - - private void readSpectrumMS(SpectrumMS ms, DataInputStream in) throws IOException, NotSerializableException { - - int version = in.readInt(); - switch(version) { - case 1: - ms.setId(in.readLong()); - ms.setName(in.readUTF()); - break; - default: - throw new NotSerializableException("Not implemented MS version: " + version); - } - } - - private SpectrumMSMS readSpectrumMSMS(DataInputStream in) throws IOException { - - int version = in.readInt(); - switch(version) { - case 1: - SpectrumMSMS msms = new SpectrumMSMS(); - msms.setId(in.readLong()); - msms.setName(in.readUTF()); - Peak precursorPeak = readPeak(in); - if(precursorPeak.getMz() != -1 && precursorPeak.getIntensity() != -1) { - // It is null - msms.setPrecursorPeak(precursorPeak); - } - return msms; - default: - throw new NotSerializableException("Not implemented MSMS version: " + SpectrumMSMS.version); - } - } - - private Peak readPeak(DataInputStream in) throws IOException { - - return new Peak(in.readDouble(), in.readDouble()); - } - - private void writeMSMS(SpectrumMSMS msms, DataOutputStream out) throws IOException { - - out.writeInt(SpectrumMSMS.version); - switch(SpectrumMSMS.version) { - case 1: - out.writeLong(msms.getId()); - out.writeUTF(msms.getName()); - writePeak(msms.getPrecursorPeak(), out); - break; - default: - throw new NotSerializableException("Not implemented MSMS version: " + SpectrumMSMS.version); - } - } - - private List readPeaks(DataInputStream in) throws IOException, NotSerializableException { - - List peaks; - int version = in.readInt(); - switch(version) { // Peak.version - case 1: - int peaksSize = in.readInt(); - peaks = new ArrayList<>(peaksSize); - for(int i = 0; i < peaksSize; i++) { - peaks.add(readPeak(in)); - } - break; - default: - throw new NotSerializableException("Not implemented Peak version: " + version); - } - return peaks; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/AbstractPeak.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/AbstractPeak.java deleted file mode 100644 index 7d9c0c472a..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/AbstractPeak.java +++ /dev/null @@ -1,75 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model; - -/** - * Contain m/z and intensity. - * - * @author Janko Diminic - * - */ -public abstract class AbstractPeak { - - private double mz = 0; - private double intensity = 0; - - @Override - public int hashCode() { - - final int prime = 31; - int result = 1; - long temp; - temp = Double.doubleToLongBits(mz); - result = prime * result + (int)(temp ^ (temp >>> 32)); - return result; - } - - @Override - public boolean equals(Object obj) { - - if(this == obj) - return true; - if(obj == null) - return false; - if(getClass() != obj.getClass()) - return false; - AbstractPeak other = (AbstractPeak)obj; - if(Double.doubleToLongBits(mz) != Double.doubleToLongBits(other.mz)) - return false; - return true; - } - - public AbstractPeak(double mz, double intensity) { - this.setMz(mz); - this.setIntensity(intensity); - } - - public double getIntensity() { - - return intensity; - } - - public void setIntensity(double intensity) { - - this.intensity = intensity; - } - - public double getMz() { - - return mz; - } - - public void setMz(double mz) { - - this.mz = mz; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/AbstractSpectrum.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/AbstractSpectrum.java deleted file mode 100644 index 7363440195..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/AbstractSpectrum.java +++ /dev/null @@ -1,112 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model; - -import java.util.ArrayList; -import java.util.List; - -public class AbstractSpectrum { - - protected List peaks = null; - protected String name; - private long id; - - @Override - public int hashCode() { - - final int prime = 31; - int result = 1; - result = prime * result + (int)(id ^ (id >>> 32)); - return result; - } - - @Override - public boolean equals(Object obj) { - - if(this == obj) - return true; - if(obj == null) - return false; - if(getClass() != obj.getClass()) - return false; - AbstractSpectrum other = (AbstractSpectrum)obj; - if(id != other.id) - return false; - return true; - } - - public AbstractSpectrum() { - } - - public AbstractSpectrum(long id, String name) { - this.setId(id); - this.name = name; - } - - public void addPeak(Peak p) { - - if(this.peaks == null) { - this.peaks = new ArrayList<>(); - } - getPeaks().add(p); - } - - public int getNumberOfPeak() { - - if(peaks == null) { - return 0; - } - return peaks.size(); - } - - public String getName() { - - return name; - } - - /** - * For MS may be a Spot name and for MSMS may be a mass of peptide. - * - * @param name - * Spectrum name. - */ - public void setName(String name) { - - this.name = name; - } - - /** - * @return List or empty list. - */ - public List getPeaks() { - - if(peaks == null) { - peaks = new ArrayList<>(); - } - return peaks; - } - - public void setPeaks(List peaks) { - - this.peaks = peaks; - } - - public long getId() { - - return id; - } - - public void setId(long id) { - - this.id = id; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/Peak.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/Peak.java deleted file mode 100644 index b2d22e46fe..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/Peak.java +++ /dev/null @@ -1,54 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model; - -public class Peak extends AbstractPeak { - - public static final int version = 1; - - public Peak(double mz, double intensity) { - super(mz, intensity); - } - - @Override - public String toString() { - - return getMz() + "->" + getIntensity(); - } - // @Override - // public void writeExternal(ObjectOutput out) throws IOException { - // - // out.writeInt(version); - // switch(version) { - // case 1: - // out.writeDouble(getMz()); - // out.writeDouble(getIntensity()); - // break; - // default: - // throw new NotSerializableException("Not implemented version: " + version); - // } - // } - // - // @Override - // public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { - // - // int fileVersion = in.readInt(); - // switch(fileVersion) { - // case 1: - // setMz(in.readDouble()); - // setIntensity(in.readDouble()); - // break; - // default: - // throw new NotSerializableException("Wronn version: " + fileVersion); - // } - // } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/SpectrumMS.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/SpectrumMS.java deleted file mode 100644 index 9121621584..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/SpectrumMS.java +++ /dev/null @@ -1,66 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model; - -import java.util.ArrayList; -import java.util.List; - -public class SpectrumMS extends AbstractSpectrum { - - public static final int version = 1; - private List msmsSpectrumsChildren = null; - - public SpectrumMS() { - } - - public SpectrumMS(long id, String name) { - super(id, name); - } - - @Override - public String toString() { - - return "MS id=" + getId() + " name='" + getName() + "', msms count='" + getMsmsSpectrumsChildren().size() + "'"; - } - - public void addMSMSchild(SpectrumMSMS msms) { - - getMsmsSpectrumsChildren().add(msms); - msms.setParentMS(this); - } - - public List getMsmsSpectrumsChildren() { - - if(msmsSpectrumsChildren == null) { - msmsSpectrumsChildren = new ArrayList<>(); - } - return msmsSpectrumsChildren; - } - - public void setMsmsSpectrumsChildren(List msmsSpectrumsChildren) { - - this.msmsSpectrumsChildren = msmsSpectrumsChildren; - if(msmsSpectrumsChildren != null) { - for(SpectrumMSMS msms : msmsSpectrumsChildren) { - msms.setParentMS(this); - } - } - } - - public int getNumberOfMSMS() { - - if(msmsSpectrumsChildren == null) { - return 0; - } - return msmsSpectrumsChildren.size(); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/SpectrumMSMS.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/SpectrumMSMS.java deleted file mode 100644 index b61b12e8d6..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/model/SpectrumMSMS.java +++ /dev/null @@ -1,61 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model; - -public class SpectrumMSMS extends AbstractSpectrum { - - public static final int version = 1; - private SpectrumMS parentMS; - private Peak precursorPeak; - - @Override - public String toString() { - - return "MSMS precursor='" + precursorPeak + "', parentMS='" + getParentMSName() + "', num. of peaks: '" + getNumberOfPeak() + "'"; - } - - public SpectrumMSMS() { - super(); - } - - public SpectrumMSMS(long id, String name) { - super(id, name); - } - - private String getParentMSName() { - - if(parentMS != null) { - return parentMS.getName(); - } - return null; - } - - public SpectrumMS getParentMS() { - - return parentMS; - } - - public void setParentMS(SpectrumMS parentMS1) { - - this.parentMS = parentMS1; - } - - public Peak getPrecursorPeak() { - - return precursorPeak; - } - - public void setPrecursorPeak(Peak precursorPeak) { - - this.precursorPeak = precursorPeak; - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/IMGFAbbreviations.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/IMGFAbbreviations.java deleted file mode 100644 index c721711442..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/IMGFAbbreviations.java +++ /dev/null @@ -1,52 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Lablicate GmbH. - * - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.parser; - -/** - * See: - * http://www.matrixscience.com/help/data_file_help.html - */ -public interface IMGFAbbreviations { - - /** - * Database entries to be searched - */ - public final String ACCESSION = "ACCESSION"; - /** - * Peptide charge - */ - public final String CHARGE = "CHARGE"; - /** - * Enzyme - */ - public final String CLE = "CLE"; - /** - * Search title - */ - public final String COM = "COM"; - /** - * Peptide mass - */ - public final String PEPMASS = "PEPMASS"; - /** - * Start ions in lines. - */ - public final String BEGIN_IONS = "BEGIN IONS"; - /** - * End ions in lines. - */ - public final String END_IONS = "END IONS"; - /** - * Title - */ - public final String TITLE = "TITLE"; -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/MGFParser.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/MGFParser.java deleted file mode 100644 index 29cdb47ef6..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/MGFParser.java +++ /dev/null @@ -1,221 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2021 Dr. Janko Diminic. - * - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - refactoring - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.parser; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.nio.charset.Charset; -import java.util.List; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import org.apache.commons.io.IOUtils; -import org.eclipse.chemclipse.converter.exceptions.FileIsEmptyException; -import org.eclipse.chemclipse.converter.exceptions.FileIsNotReadableException; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.ProteomsUtil; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.Peak; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMSMS; - -/** - * - * Parser for MSF from "4000 Series Explorer" tool exported with command - * "Peaks to Mascot". Instrument is 4800 MALDI TOF/TOF Analyzer, Applied - * Biosystems, MDS Sciex, USA. Every MGF file contain 1 MS data set, with 0 or more - * MSMS data. - * - * Alternative class org.eclipse.chemclipse.msd.converter.supplier.mgf.converter.ChromatogramImportConverter. - * - * @author Janko Diminic - * - * - */ -public class MGFParser { - - private static final Pattern labelPattern = Pattern.compile(".*Label:(.*), Spot Id:.*"); - - public void parserRegular(File file) throws FileNotFoundException, FileIsNotReadableException, FileIsEmptyException, IOException { - - // MGFFileReaderImpl reader = new MGFFileReaderImpl(file); - // MGFFile result = reader.read(); - // // one MS1 element, four MS2 elements - // MSSpectrum parentMS; - // List elements = result.getElements(); - // for(MGFElement el : elements) { - // short msLevel = el.getMSLevel(); - // if(msLevel == 2) { - // parentMS = new MSSpectrum(); - // parentMS.setName(el.getTag("LABEL")); - // List peaks = el.getPeaks(); - // for(net.sf.bioutils.proteomics.peak.Peak peak : peaks) { - // parentMS.addPeak(new Peak(peak.getMz(), peak.getIntensity())); - // } - // } - // } - // for(int i = 1; i < elements.size(); i++) { - // assertEquals(2, elements.get(i).getMSLevel()); - // } - // // all elements should have the 'COM' tag - // for(int i = 0; i < elements.size(); i++) { - // assertNotNull(elements.get(i).getTag("COM")); - // } - // // all MS2 elements should have a valid PEPMASS tag - // for(int i = 0; i < elements.size(); i++) { - // if(elements.get(i).getMSLevel() == 2) { - // String o = elements.get(i).getTag("PEPMASS"); - // assertNotNull(o); - // // should be a number - // Double.parseDouble(o); - // } - // } - // MGFReader r = new MGFReader(); - // IMassSpectra res = r.read(file, new NullProgressMonitor()); - // List list = res.getList(); - // log.debug("Size " + list.size()); - // for(IScanMSD s : list) { - // IRegularMassSpectrum spectra = (IRegularMassSpectrum)s; - // double precursorIon = spectra.getPrecursorIon(); - // short level = spectra.getMassSpectrumType(); - // log.debug("level " + level + " prec " + precursorIon); - // List ions = s.getIons(); - // int c = 0; - // for(IIon i : ions) { - // double mz = i.getIon(); - // float intensity = i.getAbundance(); - // log.debug("mz " + mz + " intensity " + intensity); - // if(c++ == 5) { - // break; - // } - // } - // } - } - - /** - * Parse one MGF file. - * - * @return {@link SpectrumMS} - * @throws FileNotFoundException - * @throws IOException - */ - public SpectrumMS parse(String mgfFilePath) throws FileNotFoundException, IOException { - - File f = new File(mgfFilePath); - try (FileInputStream input = new FileInputStream(f)) { - List lines = IOUtils.readLines(input, Charset.forName("UTF-8")); - SpectrumMS ms1 = parseMGFLines(lines); - return ms1; - } - } - - /** - * - * Return MS name from first line. - * - * @param MGF - * line - * @return MS name - */ - private String findInFirstLineMSname(String line) { - - final Matcher matcher = labelPattern.matcher(line); - if(matcher.find()) { - int groupCount = matcher.groupCount(); - if(groupCount == 1) { - return matcher.group(1); - } - } - throw new RuntimeException("Not find MS name in line: '" + line + "'"); - } - - private SpectrumMS parseMGFLines(final List lines) { - - boolean firstLine = true; - boolean startMSpeaks = false; - boolean startMSMSHeader = false; - boolean startMSMSPeaks = false; - SpectrumMS ms = new SpectrumMS(); - // ms.setPositive(false); - // ms.setMS(true); - // ms1List.add(ms); - // ms.setAllPeaks(new ArrayList(175)); - SpectrumMSMS currentMSMS = null; - for(String line : lines) { - if(line == null || line.isEmpty()) { - continue; - } - if(firstLine) { // 1 - final String msName = findInFirstLineMSname(line).trim(); - ms.setName(msName); - ms.setId(ProteomsUtil.nextUniqueID()); - startMSpeaks = true; - firstLine = false; - continue; - } - if(startMSpeaks) { // 2 - if(line.contains(IMGFAbbreviations.BEGIN_IONS)) { - // finish MS peaks - startMSpeaks = false; - startMSMSHeader = true; - continue; - } - Peak p = getPeaks(line); - ms.addPeak(p); - } - if(startMSMSHeader) { - if(line.startsWith(IMGFAbbreviations.TITLE)) { - startMSMSHeader = false; - startMSMSPeaks = true; - continue; - } - if(line.startsWith(IMGFAbbreviations.PEPMASS + "=")) { - String massPrecursor = line.substring(8, line.length()); - currentMSMS = new SpectrumMSMS(); - currentMSMS.setId(ProteomsUtil.nextUniqueID()); - // currentMSMS.setAllPeaks(new ArrayList(300)); - Peak precursorPeak = new Peak(Double.valueOf(massPrecursor.trim()), 0); - // currentMSMS.setMassPrecursor(Double.valueOf(massPrecursor.trim()).floatValue()); - // currentMSMS.setDateCreated(new Date()); - // currentMSMS.setMS(false); - currentMSMS.setParentMS(ms); - currentMSMS.setPrecursorPeak(precursorPeak); - // currentMSMS.setPositive(false); - ms.addMSMSchild(currentMSMS); - currentMSMS.setName(massPrecursor.trim()); - continue; - } - } - if(startMSMSPeaks) { - if(line.startsWith(IMGFAbbreviations.END_IONS)) { - // finish ions - startMSMSPeaks = false; - startMSMSHeader = true; - continue; - } - final Peak p = getPeaks(line); - currentMSMS.addPeak(p); - } - } - return ms; - } - - private Peak getPeaks(String line) { - - final String[] split = line.split("\t"); - double mass = Double.parseDouble(split[0]); - double intensity = Double.parseDouble(split[1]); - return new Peak(mass, intensity); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/preferences/PreferenceInitializer.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/preferences/PreferenceInitializer.java deleted file mode 100644 index 6dfec67cbf..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/preferences/PreferenceInitializer.java +++ /dev/null @@ -1,22 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.preferences; - -import org.eclipse.chemclipse.support.preferences.AbstractExtendedPreferenceInitializer; - -public class PreferenceInitializer extends AbstractExtendedPreferenceInitializer { - - public PreferenceInitializer() { - super(PreferenceSupplier.INSTANCE()); - } -} \ No newline at end of file diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/preferences/PreferenceSupplier.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/preferences/PreferenceSupplier.java deleted file mode 100644 index 2cdeaa03f2..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/preferences/PreferenceSupplier.java +++ /dev/null @@ -1,70 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic, Dr. Philip Wenig. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.preferences; - -import java.util.HashMap; -import java.util.Map; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.Activator; -import org.eclipse.chemclipse.support.preferences.IPreferenceSupplier; -import org.eclipse.core.runtime.preferences.IEclipsePreferences; -import org.eclipse.core.runtime.preferences.IScopeContext; -import org.eclipse.core.runtime.preferences.InstanceScope; - -public class PreferenceSupplier implements IPreferenceSupplier { - - public static final String P_MY_PREF = "myPref"; - public static final String DEF_MY_PREF = "ProteoMS is cool."; - // - private static IPreferenceSupplier preferenceSupplier; - - public static IPreferenceSupplier INSTANCE() { - - if(preferenceSupplier == null) { - preferenceSupplier = new PreferenceSupplier(); - } - return preferenceSupplier; - } - - @Override - public IScopeContext getScopeContext() { - - return InstanceScope.INSTANCE; - } - - @Override - public String getPreferenceNode() { - - return Activator.getContext().getBundle().getSymbolicName(); - } - - @Override - public Map getDefaultValues() { - - Map defaultValues = new HashMap(); - defaultValues.put(P_MY_PREF, DEF_MY_PREF); - return defaultValues; - } - - @Override - public IEclipsePreferences getPreferences() { - - return getScopeContext().getNode(getPreferenceNode()); - } - - public static String getMyPref() { - - IEclipsePreferences preferences = INSTANCE().getPreferences(); - return preferences.get(P_MY_PREF, DEF_MY_PREF); - } -} diff --git a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/proteomics/Protease.java b/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/proteomics/Protease.java deleted file mode 100644 index c0572ec8d6..0000000000 --- a/chemclipse/plugins/org.eclipse.chemclipse.msd.identifier.supplier.proteoms/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/proteomics/Protease.java +++ /dev/null @@ -1,16 +0,0 @@ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.proteomics; - -public class Protease { - - public static final Protease TRYPSIN = new Protease("Trypsin"); - private String name; - - public Protease(String name) { - this.name = name; - } - - public String getName() { - - return name; - } -} diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.classpath b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.classpath deleted file mode 100644 index eca7bdba8f..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.classpath +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.gitignore b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.gitignore deleted file mode 100644 index ae3c172604..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/bin/ diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.project b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.project deleted file mode 100644 index 104e603a67..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.project +++ /dev/null @@ -1,28 +0,0 @@ - - - org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.pde.PluginNature - org.eclipse.jdt.core.javanature - - diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.settings/org.eclipse.jdt.core.prefs b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 0c68a61dca..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,7 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/META-INF/MANIFEST.MF b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/META-INF/MANIFEST.MF deleted file mode 100644 index f2bf08cc28..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/META-INF/MANIFEST.MF +++ /dev/null @@ -1,12 +0,0 @@ -Manifest-Version: 1.0 -Automatic-Module-Name: org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test -Bundle-ManifestVersion: 2 -Bundle-Name: Test -Bundle-SymbolicName: org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test -Bundle-Version: 0.9.0.qualifier -Bundle-Vendor: Chemclipse -Fragment-Host: org.eclipse.chemclipse.msd.identifier.supplier.proteoms;bundle-version="0.8.0" -Bundle-RequiredExecutionEnvironment: JavaSE-1.8 -Require-Bundle: org.junit;bundle-version="4.12.0", - org.eclipse.chemclipse.rcp.app.test, - org.eclipse.chemclipse.msd.model diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/build.properties b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/build.properties deleted file mode 100644 index 5b359b5b78..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/build.properties +++ /dev/null @@ -1,4 +0,0 @@ -source.. = src/ -output.. = bin/ -bin.includes = META-INF/,\ - . \ No newline at end of file diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/AllTests.java b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/AllTests.java deleted file mode 100644 index e21cc03ee4..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/AllTests.java +++ /dev/null @@ -1,35 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2015, 2018 Lablicate GmbH. - * - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Philip Wenig - initial API and implementation - * Dr. Alexander Kerner - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.Activator; -import org.eclipse.chemclipse.rcp.app.test.TestAssembler; - -import junit.framework.Test; -import junit.framework.TestSuite; - -public class AllTests { - - public static Test suite() { - // Properties log4jProperties = PropertiesUtil.getLog4jProperties(); - // log4jProperties.setProperty("log4j.appender.ChemClipseConsoleAppender.layout.ConversionPattern", "%-5p %C.%M (%F:%L) %m%n"); - // PropertyConfigurator.configure(log4jProperties); - - TestAssembler testAssembler = new TestAssembler(Activator.getContext().getBundle().getBundleContext().getBundles()); - TestSuite suite = new TestSuite("Run all tests."); - String bundleAndPackageName = "org.eclipse.chemclipse.msd.identifier.supplier.proteoms"; - testAssembler.assembleTests(suite, bundleAndPackageName, bundleAndPackageName, "Test*"); // Unit - // testAssembler.assembleTests(suite, bundleAndPackageName, bundleAndPackageName, "*_ITest"); // Integration - return suite; - } -} diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/TestPathHelper.java b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/TestPathHelper.java deleted file mode 100644 index 6f3ae2b0d0..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/TestPathHelper.java +++ /dev/null @@ -1,28 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Lablicate GmbH. - * - * All rights reserved. - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.PathResolver; - -/** - * THIS CLASS IS NOT SUITED FOR PRODUCTIVE USE!
- * IT IS A TESTCLASS! - */ -public class TestPathHelper extends PathResolver { - - /* - * IMPORT - */ - public static final String TESTFILE_PPW_F7_142627624817 = "testData/files/import/ppw_F7_142627624817.txt"; - public static final String TESTFILE_PPW_ppw_L22_142651859102_CLASIC_SPECTRA = "testData/files/import/ppw_L22_142651859102_CLASIC_SPECTRA.txt"; - public static final String TEST_DIR_PROJECT_DB = "testData/files/export"; -} diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/MGFparser_1_ITest.java b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/MGFparser_1_ITest.java deleted file mode 100644 index e5627b217a..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/MGFparser_1_ITest.java +++ /dev/null @@ -1,68 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Lablicate GmbH. - * - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.parser; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.util.List; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.PathResolver; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.TestPathHelper; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMSMS; - -import junit.framework.TestCase; - -public class MGFparser_1_ITest extends TestCase { - - private MGFParser mgfParser; - private String mgfFilePath; - - @Override - protected void setUp() throws Exception { - - super.setUp(); - mgfFilePath = PathResolver.getAbsolutePath(TestPathHelper.TESTFILE_PPW_ppw_L22_142651859102_CLASIC_SPECTRA); - mgfParser = new MGFParser(); - } - - @Override - protected void tearDown() throws Exception { - - super.tearDown(); - } - - public void testRegularFile() { - - final MGFParser p = new MGFParser(); - try { - p.parserRegular(new File(mgfFilePath)); - } catch (final IOException e) { - e.printStackTrace(); - } - } - - public void test1() { - - try { - final SpectrumMS massSpectrum = mgfParser.parse(mgfFilePath); - assertNotNull(massSpectrum); - final List msmsSpectrumsChildren = massSpectrum.getMsmsSpectrumsChildren(); - assertNotNull(msmsSpectrumsChildren); - } catch (final FileNotFoundException e) { - assertTrue(false); - } catch (final IOException e) { - assertTrue(false); - } - } -} diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/MGSparserSuplier_ITest.java b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/MGSparserSuplier_ITest.java deleted file mode 100644 index d36c2b9a4d..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/MGSparserSuplier_ITest.java +++ /dev/null @@ -1,32 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Lablicate GmbH. - * - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Philip Wenig - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.parser; - -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.TestPathHelper; - -import junit.framework.TestCase; - -public class MGSparserSuplier_ITest extends TestCase { - - @Override - protected void setUp() throws Exception { - - super.setUp(); - TestPathHelper.getAbsolutePath(TestPathHelper.TESTFILE_PPW_ppw_L22_142651859102_CLASIC_SPECTRA); - } - - @Override - protected void tearDown() throws Exception { - - super.tearDown(); - } -} diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/ProteomsDB_ITest.java b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/ProteomsDB_ITest.java deleted file mode 100644 index 807859bbe1..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/src/org/eclipse/chemclipse/msd/identifier/supplier/proteoms/parser/ProteomsDB_ITest.java +++ /dev/null @@ -1,148 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2018 Dr. Janko Diminic. - * - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Dr. Janko Diminic - initial API and implementation - *******************************************************************************/ -package org.eclipse.chemclipse.msd.identifier.supplier.proteoms.parser; - -import java.io.File; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.List; - -import org.apache.commons.io.FileUtils; -import org.eclipse.chemclipse.logging.core.Logger; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.TestPathHelper; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.db.ProteomsDB; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.AbstractSpectrum; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.Peak; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMS; -import org.eclipse.chemclipse.msd.identifier.supplier.proteoms.model.SpectrumMSMS; -import org.junit.Test; - -import junit.framework.TestCase; - -public class ProteomsDB_ITest extends TestCase { - - private static final Logger log = Logger.getLogger(ProteomsDB_ITest.class); - private List msList; - private String projectDir; - - @Override - protected void setUp() throws Exception { - - super.setUp(); - msList = getSampleSpectrums(); - projectDir = TestPathHelper.getAbsolutePath(TestPathHelper.TEST_DIR_PROJECT_DB) + "test_project"; - File file = new File(projectDir); - projectDir = file.getAbsolutePath(); - log.debug("Project dir " + projectDir); - // projectDir = "C:/tmp/projectTest"; - file.mkdirs(); - } - - private static List getSampleSpectrums() { - - ArrayList msList = new ArrayList<>(); - { // MS 1 - SpectrumMS ms1 = new SpectrumMS(1, "ms name 1"); - ms1.addPeak(new Peak(1.1, 2.2)); - ms1.addPeak(new Peak(2.1, 3.2)); - SpectrumMSMS msms1 = new SpectrumMSMS(); - msms1.setId(11); - msms1.setName("msms11"); - ms1.addMSMSchild(msms1); - msList.add(ms1); - } - { // MS 2 - SpectrumMS ms2 = new SpectrumMS(2, "ms name 2"); - ms2.addPeak(new Peak(1.1, 2.2)); - ms2.addPeak(new Peak(2.1, 3.2)); - msList.add(ms2); - } - return msList; - } - - @Test - public void testSaveRead() throws Exception { - - ProteomsDB db = new ProteomsDB(Paths.get(projectDir)); - db.saveAllSpectrumsMS(msList); - List msListReaded = db.getSpectrumsMS(true, true, true); - assertEquals(msList.size(), msListReaded.size()); - sortSpectrumsAndPeaks(msList); - sortSpectrumsAndPeaks(msListReaded); - for(int i = 0; i < msList.size(); i++) { - SpectrumMS ms1 = msList.get(i); - SpectrumMS ms2 = msListReaded.get(i); - log.debug("Test " + ms1.getId()); - assertNotNull(ms2); - assertEquals(ms1.getId(), ms2.getId()); - assertEquals(ms1.getName(), ms2.getName()); - assertEquals(ms1.getNumberOfPeak(), ms2.getNumberOfPeak()); - assertEquals(ms1.getNumberOfMSMS(), ms2.getNumberOfMSMS()); - List msms1list = ms1.getMsmsSpectrumsChildren(); - List msms2list = ms2.getMsmsSpectrumsChildren(); - { - if(msms1list != null) - for(int j = 0; j < msms1list.size(); j++) { - SpectrumMSMS msms1 = msms1list.get(j); - SpectrumMSMS msms2 = msms2list.get(j); - assertNotNull(msms1); - assertNotNull(msms2); - assertEquals(msms1.getId(), msms2.getId()); - assertEquals(msms1.getName(), msms2.getName()); - assertEquals(msms1.getNumberOfPeak(), msms2.getNumberOfPeak()); - assertEquals(msms1.hashCode(), msms2.hashCode()); - assertEquals(msms1.getPrecursorPeak(), msms2.getPrecursorPeak()); - assertEquals(msms1.getPeaks(), msms2.getPeaks()); - } - } - } - } - - private void sortSpectrumsAndPeaks(List msList) { - - Comparator spectrumComparator = new Comparator() { - - @Override - public int compare(AbstractSpectrum o1, AbstractSpectrum o2) { - - return Long.compare(o1.getId(), o2.getId()); - } - }; - Collections.sort(msList, spectrumComparator); - for(SpectrumMS ms : msList) { - List peaks = ms.getPeaks(); - if(peaks != null) { - Collections.sort(peaks, new Comparator() { - - @Override - public int compare(Peak o1, Peak o2) { - - return Double.compare(o1.getMz(), o2.getMz()); - } - }); - } - List msmsList = ms.getMsmsSpectrumsChildren(); - if(msList != null) { - Collections.sort(msmsList, spectrumComparator); - } - } - } - - @Override - protected void tearDown() throws Exception { - - super.tearDown(); - FileUtils.deleteDirectory(new File(projectDir)); - } -} diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/testData/files/export/INFO.txt b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/testData/files/export/INFO.txt deleted file mode 100644 index d57a9c039b..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/testData/files/export/INFO.txt +++ /dev/null @@ -1 +0,0 @@ -GIT needs at least one file in this directory to track it, otherwise Eclipse gives a compile error at checkout. Remove it, if not needed anymore. diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/testData/files/import/ppw_F7_142627624817.txt b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/testData/files/import/ppw_F7_142627624817.txt deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/testData/files/import/ppw_L22_142651859102_CLASIC_SPECTRA.txt b/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/testData/files/import/ppw_L22_142651859102_CLASIC_SPECTRA.txt deleted file mode 100644 index c245d72602..0000000000 --- a/chemclipse/tests/org.eclipse.chemclipse.msd.identifier.supplier.proteoms.fragment.test/testData/files/import/ppw_L22_142651859102_CLASIC_SPECTRA.txt +++ /dev/null @@ -1,3046 +0,0 @@ -COM=Project: Marios Project folder, Spot Set: Marios Project folder\uz 888, Label: L22, Spot Id: 680102, Peak List Id: 1020960, MS Job Run Id: 33161 -1000.4272 340.50775 -1001.4248 621.66309 -1002.4968 1681.1915 -1003.5038 1653.6464 -1005.475 2644.6062 -1007.4847 1302.8508 -1009.3021 767.09845 -1009.5112 676.86481 -1010.484 1885.2367 -1012.4672 2749.28 -1014.6993 2630.4009 -1015.4089 1800.9847 -1017.2302 690.9223 -1017.675 703.50024 -1018.2701 903.04254 -1018.5428 349.70615 -1020.4979 1304.9468 -1021.3812 739.30951 -1022.5527 12946.12 -1024.306 888.5246 -1024.5792 1482.5728 -1025.5371 1418.5814 -1026.3658 595.94763 -1026.5354 667.61639 -1028.4698 2291.5464 -1029.4412 1045.5085 -1030.2411 1045.4424 -1031.4088 785.0614 -1032.3123 731.62006 -1033.5758 541.81311 -1035.4181 1507.9954 -1036.2919 889.97748 -1036.6672 480.9057 -1038.498 1157.0701 -1039.4573 581.43939 -1041.2969 671.08624 -1042.5673 920.01544 -1043.4126 1404.3138 -1044.1808 933.15515 -1044.4712 726.98914 -1045.3057 795.05151 -1046.2676 584.84381 -1049.5543 2650.6028 -1050.5377 1534.7788 -1051.5656 1434.3458 -1052.3563 985.95728 -1053.5994 609.12177 -1054.1917 606.31879 -1054.5334 3454.6326 -1056.5308 1696.7638 -1058.4661 438.04843 -1059.2493 891.28094 -1059.7078 458.40659 -1061.1802 382.10675 -1061.6477 364.7182 -1062.5018 387.64066 -1063.3392 441.23175 -1065.5298 1561.6422 -1068.538 1216.4042 -1070.406 1159.8894 -1070.6533 534.47424 -1071.4922 468.72308 -1072.3694 343.06293 -1072.6244 1573.2617 -1075.3279 385.854 -1076.5082 1848.3596 -1077.4923 960.69922 -1078.1506 400.15399 -1078.681 339.5639 -1079.2981 306.50546 -1081.6995 346.71964 -1082.3782 439.13354 -1083.3802 1288.3202 -1085.4532 643.61707 -1088.3782 1080.8586 -1090.4132 418.31888 -1091.4492 417.008 -1092.1211 307.61688 -1092.6292 811.65271 -1093.6228 438.70877 -1095.4558 476.98926 -1097.6078 616.23108 -1098.1001 584.25513 -1098.6855 346.71921 -1099.6367 750.71472 -1101.3696 666.75031 -1102.6348 392.0575 -1104.3717 1551.7289 -1107.6414 380.78427 -1108.0759 891.20172 -1108.3905 345.43149 -1108.6453 346.87262 -1109.424 641.7251 -1110.4939 444.55518 -1111.6302 1661.2579 -1114.1072 654.258 -1114.6378 889.02399 -1116.2125 457.15567 -1118.4487 912.33057 -1120.4877 902.88153 -1122.6611 689.25659 -1124.5673 681.46301 -1126.6454 404.85251 -1127.45 505.54599 -1129.5125 403.54837 -1130.098 366.61047 -1133.684 619.88171 -1136.4177 641.05072 -1136.6414 400.26926 -1138.5156 465.47842 -1141.4415 321.34607 -1142.8135 2070.9602 -1145.7017 440.65762 -1146.6042 443.26157 -1149.5526 857.28021 -1150.4049 388.71408 -1154.5934 502.40808 -1158.6558 377.52783 -1160.6184 891.16455 -1162.6957 889.7558 -1163.7461 25091.688 -1166.4617 680.35425 -1167.6036 857.04065 -1170.7622 907.56952 -1172.522 456.98074 -1173.4957 366.06262 -1175.6613 4193.2954 -1177.6718 598.15717 -1178.6549 822.37854 -1180.7845 380.82574 -1182.5005 418.02884 -1184.6437 784.99493 -1185.743 2092.7512 -1187.7637 803.49084 -1191.6879 704.8858 -1192.5751 808.29346 -1197.6555 984.36823 -1200.5824 499.30753 -1201.7556 2245.6836 -1205.7617 390.76642 -1206.7043 341.24988 -1207.6482 385.52963 -1209.6251 378.04465 -1212.5801 799.86841 -1215.6581 608.85742 -1217.6398 1764.4797 -1224.3563 554.09076 -1225.2813 913.22284 -1229.53 614.63788 -1231.5757 589.25159 -1233.6874 1385.6002 -1234.7336 1581.0762 -1235.736 546.30725 -1236.2697 364.8071 -1241.7214 526.38788 -1248.6725 558.11145 -1249.7462 2345.6992 -1251.7587 451.18015 -1253.5984 782.93579 -1258.7491 537.97235 -1266.7107 396.77765 -1271.6027 443.15671 -1277.6864 579.63104 -1283.8489 8155.7593 -1287.8579 651.16907 -1289.6906 554.89325 -1295.8124 511.06805 -1301.7754 403.95444 -1304.7841 639.76617 -1305.8407 22215.709 -1308.5374 404.26425 -1311.8046 472.7597 -1317.8188 1019.177 -1319.776 342.63617 -1320.801 695.75067 -1323.6185 422.40649 -1327.8514 2086.8767 -1330.7761 690.84631 -1331.8174 372.37445 -1333.8267 621.59705 -1334.8187 469.38077 -1337.7786 980.32849 -1340.8055 639.66748 -1342.8423 1350.6664 -1343.8032 1333.2367 -1345.751 468.04837 -1346.5603 338.13364 -1347.6688 2926.5356 -1351.7714 456.71481 -1355.7881 445.28113 -1357.7208 1053.0067 -1359.764 3942.8855 -1362.7144 733.69312 -1363.6647 1117.8134 -1365.7227 1112.8533 -1369.7767 508.66147 -1370.6602 372.51523 -1372.8458 840.23315 -1375.6804 1131.7754 -1381.7502 567.44519 -1383.7368 353.87726 -1385.7184 371.87573 -1386.7113 2247.761 -1387.7046 831.83759 -1395.7101 382.28061 -1399.7909 470.94904 -1401.6637 789.48151 -1405.7189 556.73584 -1408.7052 494.90326 -1409.8225 641.24017 -1412.6527 305.33328 -1413.683 1224.5278 -1415.7456 388.86993 -1416.823 1881.9912 -1421.7871 625.48291 -1432.8184 333.32257 -1434.8467 584.67688 -1437.7771 320.04907 -1438.9005 386.91959 -1439.958 6142.4214 -1446.6823 395.13516 -1455.9587 651.33691 -1462.7935 404.97299 -1464.7716 504.09949 -1466.7924 362.67844 -1468.8088 352.1922 -1471.8575 532.23975 -1472.7289 335.29111 -1474.8818 342.09906 -1477.8994 392.51065 -1478.9169 302.56253 -1479.9489 25288.014 -1484.8943 657.15619 -1491.8734 3955.4824 -1493.8918 616.31909 -1497.749 530.13184 -1501.8845 938.30725 -1504.7878 519.17871 -1509.869 384.50977 -1511.9937 4619.4175 -1516.8341 788.87195 -1517.9974 396.38574 -1519.911 427.58212 -1528.9438 424.51443 -1531.8267 604.89911 -1533.821 1527.2028 -1536.8578 435.96902 -1537.9449 3814.4905 -1544.854 435.25009 -1545.8193 1189.8309 -1562.7511 426.1987 -1566.8502 447.05344 -1567.9192 2875.0273 -1573.7947 446.89249 -1576.7709 367.43176 -1580.8878 458.75943 -1587.7797 667.37103 -1589.7977 396.75357 -1591.8019 311.08768 -1593.9274 407.72958 -1597.1633 313.63809 -1598.8492 626.05859 -1605.9314 375.2991 -1612.829 737.47656 -1614.7759 3031.5757 -1619.1085 560.42877 -1626.8634 355.55518 -1631.7745 2781.157 -1634.7804 795.99438 -1640.0992 33981.969 -1646.7678 928.95935 -1648.7587 338.13843 -1654.9281 581.00183 -1657.0551 338.94604 -1662.0535 1021.6301 -1664.835 447.41324 -1668.718 502.94199 -1673.9152 334.76712 -1675.9711 992.22687 -1683.7816 451.85416 -1687.9398 535.83557 -1693.8947 535.15674 -1694.995 364.12311 -1721.829 414.84647 -1722.017 339.767 -1737.9769 307.41159 -1754.8656 455.13193 -1767.8763 546.02234 -1769.9133 708.23322 -1788.1293 425.88315 -1794.0566 511.10455 -1821.9415 364.79541 -1830.9814 494.86987 -1833.0176 604.61908 -1853.9694 344.25272 -1941.1101 303.83969 -1956.0841 660.49323 -2085.1897 336.23624 -2223.0786 347.94812 -2225.1929 374.76801 -BEGIN IONS -PEPMASS=1012.4672 -CHARGE=1+ -TITLE=Label: L22, Spot_Id: 680102, Peak_List_Id: 1021032, MSMS Job_Run_Id: 33165, Comment: -70.054306 556.4469 -72.073898 1026.1689 -74.064842 362.07144 -84.076447 636.98639 -85.02861 352.15887 -86.084755 1375.9613 -87.065735 853.09161 -101.07681 416.57428 -102.05558 630.65515 -107.0787 506.45877 -110.06573 465.72818 -112.07188 705.04205 -120.05213 271.19391 -144.07368 302.93832 -146.10371 325.25623 -147.06181 505.7662 -163.08376 520.30383 -171.05807 325.40704 -172.03992 2060.0647 -175.11215 1007.5362 -186.10088 271.52823 -190.02045 406.79648 -197.09735 294.02118 -201.14973 274.74222 -208.03299 422.36063 -215.09254 494.05099 -225.08464 376.12238 -227.08257 479.56329 -229.11221 348.35495 -230.07471 430.74023 -230.16951 461.2388 -231.1299 285.17117 -260.05084 294.26346 -272.09082 311.13174 -273.10745 326.04581 -276.02295 416.75644 -278.09979 335.51086 -279.23386 297.36041 -283.09134 309.09134 -294.07056 571.89606 -297.11423 304.26788 -303.1593 294.44901 -311.22177 425.51736 -312.12546 280.87476 -328.2457 312.91559 -330.18793 339.68597 -335.08224 518.586 -355.1279 387.25894 -359.10327 350.0592 -361.28494 317.51706 -365.21094 320.21918 -366.15469 436.12347 -372.22055 463.06088 -376.10837 285.98816 -376.26465 280.76022 -377.1637 603.49243 -379.0603 749.74976 -383.13596 514.2876 -385.03052 607.07367 -387.13971 361.67297 -398.16122 287.13254 -414.2135 613.57208 -415.12402 357.0231 -423.21564 361.09442 -442.28656 533.17664 -444.20975 616.85156 -445.14877 358.45602 -449.18591 284.45105 -450.02426 298.9007 -452.95599 329.30298 -454.01004 300.96637 -459.14203 473.74246 -462.18314 298.82816 -465.18594 429.28888 -467.06924 540.88037 -475.18344 395.00775 -485.11874 878.29279 -486.91608 345.66888 -495.35526 521.36761 -501.28479 452.85052 -503.04907 486.88022 -505.10385 385.62448 -511.14746 851.93817 -514.21967 285.26901 -515.02875 536.15674 -520.31531 513.78119 -522.0473 502.59021 -524.07178 286.13876 -528.20233 421.16049 -529.10394 333.60181 -531.15576 331.55627 -532.2702 611.95636 -535.08118 437.58899 -536.11273 314.52994 -539.35034 504.59195 -540.06903 406.68185 -541.24902 396.65649 -542.33881 397.1478 -543.02094 340.46494 -546.18939 1006.1366 -550.16089 542.81366 -552.04987 305.91772 -554.16943 906.22058 -557.15302 417.9614 -559.31482 456.2807 -560.15222 543.12451 -568.19421 417.81909 -568.95917 325.47824 -569.31128 304.90939 -570.0575 443.0899 -572.18414 340.90326 -573.0567 332.14542 -574.21301 367.85428 -575.13684 379.37335 -581.151 474.80594 -582.18018 518.25677 -586.10162 822.97815 -587.2652 529.7489 -588.01782 339.88913 -588.1828 377.23856 -590.02698 313.62906 -593.13983 321.69864 -596.10706 283.87299 -597.25006 280.15204 -598.09338 428.35306 -598.75531 281.79874 -598.94391 334.1832 -600.2298 488.15463 -601.17242 330.18823 -603.06805 549.15576 -606.0907 322.99875 -607.23846 432.95837 -609.05341 302.57504 -610.18317 292.28891 -613.08032 418.37103 -615.20868 772.6424 -620.05951 399.79498 -621.28601 672.64197 -622.08081 387.02991 -623.05609 1207.0464 -624.29358 592.47296 -625.0202 340.00467 -627.00342 469.09 -629.08264 326.94379 -630.20117 326.19406 -632.31262 371.39676 -633.01965 641.32599 -634.25226 496.0376 -638.9032 308.30481 -642.06934 756.90417 -642.87988 380.02621 -645.11969 388.05881 -648.07623 489.81985 -648.36633 347.79608 -652.26495 673.56622 -652.97638 437.07239 -653.99677 339.63928 -654.99396 341.69388 -656.17682 379.4465 -657.34277 402.32928 -658.19604 519.83325 -666.25476 408.51837 -673.18549 441.15402 -674.05499 903.90863 -684.26392 387.23154 -689.09009 371.5369 -696.18097 407.06116 -696.99304 536.16614 -701.32904 379.52841 -705.2572 501.5 -706.24921 549.93237 -711.2995 399.45853 -712.28558 488.58514 -712.99097 620.40997 -715.05249 505.10135 -716.16614 1214.5687 -718.0658 463.5751 -719.06482 367.85449 -724.13403 749.1955 -727.28741 385.35519 -729.22809 787.67444 -731.21484 459.25046 -738.24622 597.18427 -743.85529 871.40424 -751.25543 383.73544 -753.39685 533.3783 -754.17603 359.10635 -755.42407 361.44849 -756.13348 394.69946 -757.0354 655.28784 -758.797 508.35413 -763.05682 407.93814 -766.96729 445.00864 -767.24731 408.48532 -769.10126 471.76318 -769.90234 367.20963 -770.26331 400.30261 -771.16235 959.55023 -772.99323 434.19363 -774.99622 482.83508 -775.97693 373.45953 -777.0498 502.18896 -778.16144 792.52557 -779.05908 770.52124 -780.97345 1167.3217 -781.94501 435.80402 -783.40997 388.47034 -784.9397 668.41687 -787.9375 442.1991 -789.07629 676.73309 -791.15521 920.21942 -794.32788 418.42163 -794.97223 412.31958 -796.08356 956.5658 -798.13019 568.7876 -799.09198 527.65448 -803.05518 443.5249 -803.52612 518.09406 -805.18567 839.46313 -806.00946 1017.8717 -807.16742 711.49133 -807.922 597.10413 -809.42114 777.27429 -810.05896 1088.75 -811.16187 1490.1869 -811.53839 384.54587 -812.0329 1394.8644 -812.42529 452.01285 -813.02582 3377.0408 -815.12909 1914.1278 -815.99854 1592.0344 -816.17511 545.32635 -817.08844 2271.7493 -818.03149 2382.6409 -818.98871 4104.9688 -820.03247 1718.5104 -820.98529 4292.4419 -822.97308 4620.5967 -824.98059 2779.6289 -826.99976 2700.4365 -828.80365 1139.4572 -829.17957 487.49005 -829.93024 1350.6641 -830.8056 2178.8896 -832.82117 1720.4247 -833.71185 486.36826 -833.93939 452.81708 -834.30743 607.07843 -834.7608 544.39795 -835.45837 359.35196 -837.09583 372.04968 -838.30981 550.54816 -840.33856 614.10199 -842.21979 542.72198 -843.33002 422.23254 -844.13916 586.51788 -847.88269 438.94403 -849.25024 358.58151 -853.99109 489.92029 -855.263 396.4465 -857.34442 408.40317 -859.20734 478.18997 -861.14551 677.63232 -862.0249 384.59891 -864.69098 630.35858 -865.17548 499.7981 -867.57068 373.7493 -868.28583 508.68365 -869.40308 812.13501 -871.36151 303.6618 -872.10699 294.46039 -874.31171 284.64709 -875.13983 272.62601 -877.26794 489.89343 -878.37354 548.22076 -880.44421 352.08008 -883.09137 540.54089 -883.25879 481.64389 -884.17273 458.2486 -885.38159 851.83276 -887.11218 644.86389 -888.96271 474.08279 -889.37952 304.59024 -891.20374 448.5524 -893.43579 410.28809 -894.11267 481.53668 -896.44617 463.62686 -898.24304 478.46957 -903.31024 341.19635 -908.81885 457.52567 -911.99323 315.94159 -914.11292 403.78726 -915.30548 297.85291 -918.15112 330.87866 -919.39783 360.0816 -920.20868 286.80719 -923.12506 314.61197 -931.96216 356.39731 -933.10217 323.78561 -943.33356 2200.0667 -END IONS -BEGIN IONS -PEPMASS=1043.4126 -CHARGE=1+ -TITLE=Label: L22, Spot_Id: 680102, Peak_List_Id: 1021033, MSMS Job_Run_Id: 33165, Comment: -70.06501 489.60178 -84.032959 557.4762 -86.070671 357.76208 -102.04431 700.85791 -110.08115 297.43369 -112.07626 570.69171 -129.08797 737.53326 -136.05919 515.14014 -146.06287 434.75989 -147.0517 1108.7931 -166.11069 296.41452 -172.04546 1361.1068 -175.07538 587.77893 -181.05836 290.96686 -189.05646 267.26663 -210.11879 333.15329 -225.08643 365.25751 -227.12166 338.66208 -234.02173 444.06833 -242.10513 269.96176 -249.01399 334.76736 -250.15778 263.84415 -256.077 378.33157 -260.12619 507.34445 -272.05899 350.16681 -275.12042 268.68213 -278.04861 350.17468 -294.05527 598.5733 -305.00031 414.71567 -310.07056 286.79477 -312.15359 331.81863 -314.07803 401.59924 -335.10132 269.40039 -335.19989 275.5535 -337.03491 304.24258 -340.02493 575.46863 -367.08984 375.78448 -371.21179 341.0665 -379.05515 824.19501 -384.13165 272.89102 -391.1188 737.81439 -393.19559 300.72885 -398.94858 434.98267 -399.98901 320.84271 -407.10098 284.73358 -408.11707 387.87573 -414.20978 344.18869 -417.0058 415.52829 -425.12668 454.18448 -427.01303 291.19992 -429.28897 398.50519 -432.09879 353.30588 -440.94644 409.43152 -442.97003 337.84113 -445.16214 491.41315 -446.28311 310.13483 -466.1889 311.76669 -469.0997 439.70685 -471.17059 421.67514 -476.17511 294.17673 -477.94901 571.78387 -479.35129 299.65115 -481.07913 283.32565 -486.26135 416.97797 -489.32492 332.18393 -503.04031 497.90479 -506.24072 398.6402 -507.01004 337.88416 -514.15564 302.45248 -516.40631 467.52615 -522.18982 306.73627 -522.61115 350.16046 -523.4895 326.10889 -525.06165 617.60931 -529.04205 373.60022 -535.01135 270.91068 -537.19128 600.06073 -540.17206 375.4559 -542.14587 405.76208 -547.31604 664.19965 -548.80231 366.28461 -549.08466 314.84418 -550.11304 409.3544 -551.60413 350.43964 -553.92383 406.52979 -554.20251 285.57809 -555.06879 353.84357 -557.01031 347.35843 -560.14069 275.45282 -562.26373 502.18524 -565.17151 536.75439 -566.38324 357.30322 -568.25476 374.01682 -570.06866 388.98013 -571.12561 458.97159 -574.16565 666.59808 -576.05499 264.40521 -580.14093 839.96069 -580.52332 380.60907 -580.9447 340.58075 -582.4754 317.34387 -583.02057 334.54874 -586.00409 269.95236 -586.13873 452.39072 -589.20117 571.22101 -591.12952 294.5921 -592.57977 305.33209 -594.25079 316.29144 -598.33691 271.41623 -604.07758 264.87253 -609.08984 342.55872 -611.97943 553.93848 -613.97217 428.53482 -614.96729 539.24268 -617.35632 305.66971 -620.0929 277.39847 -621.9093 406.75113 -624.00128 661.09601 -625.83466 426.50269 -626.31555 405.8212 -628.20386 347.0542 -629.31366 380.98111 -629.6676 290.47888 -629.94629 290.1702 -631.23163 292.93326 -633.22064 311.96527 -634.21307 276.48322 -638.43732 358.99951 -642.96399 330.0372 -647.3114 335.5585 -648.16162 475.51337 -651.25427 285.06992 -652.23456 308.98364 -653.1864 304.13177 -657.078 469.63202 -657.50226 756.61609 -657.90314 398.13141 -658.90729 466.93637 -661.07349 483.77316 -665.0611 650.453 -665.93701 686.4682 -669.09467 947.95746 -670.22882 327.14917 -671.10327 688.53296 -671.92114 941.69702 -674.18311 572.0152 -675.6637 754.73999 -677.98456 448.64163 -678.43683 385.02325 -679.27399 399.9321 -680.11371 398.61816 -682.34735 481.57391 -684.83746 341.01978 -689.10278 364.67328 -692.23358 460.01132 -694.03638 378.49173 -699.02344 743.29114 -700.10449 393.46753 -704.13629 371.23563 -705.17603 345.66055 -706.33368 434.19791 -710.97589 421.20093 -713.21252 408.26059 -714.01129 374.58075 -715.0166 455.91257 -719.23926 333.72644 -724.2005 390.5831 -725.39185 328.20236 -726.12415 385.01157 -730.30383 482.45523 -732.11115 463.6676 -735.24677 645.39813 -736.07648 544.41547 -739.30237 765.46918 -739.87317 345.77814 -741.09015 627.55872 -742.10797 631.0799 -744.10236 355.81192 -747.00537 434.92719 -747.36151 367.74246 -749.06824 711.4549 -751.21338 770.83069 -758.09479 435.7215 -759.18274 370.69305 -759.8327 571.89368 -760.81653 369.37338 -761.0191 356.48141 -769.09192 337.70383 -769.29889 363.95261 -783.05927 338.44467 -787.13806 587.05109 -792.14185 494.35989 -797.16583 721.17291 -800.21033 464.63733 -801.14368 1174.4139 -803.96527 908.52332 -805.14209 835.815 -808.20483 426.1478 -808.888 477.90134 -810.92957 1438.5178 -812.91785 1022.8459 -815.83704 828.57172 -816.75751 385.65356 -817.104 358.8168 -817.42627 419.44846 -817.94678 692.56122 -818.95978 346.2251 -819.64362 674.94153 -820.62421 436.90002 -821.38196 750.58826 -825.09912 977.36023 -827.31378 619.32239 -829.21997 457.16037 -829.95227 756.86597 -833.85101 606.2077 -834.23218 982.10992 -836.09937 1247.0573 -837.01453 558.95105 -838.7594 1170.5249 -839.20557 508.20636 -840.27667 1014.6025 -840.84192 469.36487 -841.10889 1477.8346 -843.10217 1523.3466 -844.08246 1191.181 -844.20996 1592.1923 -845.98468 2258.0828 -847.00336 4409.8979 -847.9884 3048.2385 -849.97729 1386.5956 -850.28302 779.14868 -851.05719 1319.7649 -851.95471 2625.7065 -853.96332 3063.8188 -854.90961 1590.3634 -855.91449 3353.9192 -856.90045 6592.2007 -857.91382 2987.6604 -859.85516 1812.5389 -860.11627 989.97144 -860.82904 969.15002 -861.88098 1603.2373 -862.80878 2033.8458 -863.76947 2534.3267 -864.75214 2863.1865 -865.94751 847.03064 -867.18524 424.86768 -868.53503 392.96576 -870.94177 518.72595 -872.00507 384.35773 -872.19366 347.82953 -876.28857 358.94644 -876.84174 318.36816 -879.82758 267.71814 -882.4834 304.79373 -885.04364 470.51328 -887.59027 350.48077 -888.15546 939.35034 -897.69458 300.37906 -898.42896 636.72278 -905.38684 353.53012 -907.19757 449.51208 -908.62268 547.98407 -909.39624 594.30042 -910.52539 578.68634 -913.55469 339.49646 -915.05402 576.53296 -916.42273 461.4238 -916.8399 368.00189 -918.4278 756.46979 -922.43555 632.79236 -924.1994 502.39639 -926.19196 309.4476 -928.065 338.85092 -928.33942 281.06281 -928.82861 411.71686 -929.23993 477.36087 -930.68732 265.02972 -932.31195 293.06903 -933.11908 508.08652 -934.25488 311.72684 -934.80011 379.15088 -935.26508 374.2377 -937.26166 617.0954 -940.19257 264.99222 -945.24799 574.51544 -945.54095 337.32379 -948.3952 732.56018 -950.22498 452.52682 -951.98169 525.45007 -954.24982 312.96521 -955.24982 529.15521 -956.34479 500.83636 -958.48578 276.0632 -961.44409 317.47379 -964.11383 310.08133 -965.40845 292.89236 -975.23853 572.16736 -983.21436 287.9812 -985.0871 380.44263 -END IONS -BEGIN IONS -PEPMASS=1178.6549 -CHARGE=1+ -TITLE=Label: L22, Spot_Id: 680102, Peak_List_Id: 1021037, MSMS Job_Run_Id: 33165, Comment: -70.049347 565.5387 -72.07338 389.33652 -84.062752 993.12561 -86.089256 1305.0126 -87.082634 373.45538 -110.08599 487.9252 -120.01376 236.58701 -129.09471 1085.326 -140.07117 208.97758 -169.05751 543.28101 -172.04469 774.33838 -172.19395 290.13925 -181.09125 289.17474 -185.10583 776.26996 -197.13164 384.96866 -213.09131 203.30673 -214.164 640.13483 -216.10867 287.18649 -218.10745 244.14799 -224.15277 196.02974 -226.11798 285.11163 -231.17455 242.53951 -244.11125 1529.656 -251.16069 410.50223 -285.15527 195.1537 -287.08621 214.57405 -295.0816 240.30919 -310.21146 197.38493 -312.19318 334.45569 -326.19907 215.45703 -327.2117 606.95966 -328.21823 450.62851 -330.19162 409.14954 -331.16309 242.10774 -343.27063 430.73035 -347.03122 189.57062 -348.05542 336.08362 -355.11014 248.50952 -363.10428 208.99602 -364.22473 276.18399 -365.20358 698.75763 -366.22836 207.14183 -373.50763 193.40987 -378.02863 330.85645 -381.16571 287.7579 -385.09415 260.26248 -399.21301 294.508 -400.31589 196.09326 -402.16086 346.23114 -404.38773 219.98395 -422.19952 190.89063 -427.29184 230.11513 -429.97577 241.39984 -437.0961 212.88988 -440.2442 255.16144 -446.58606 222.31129 -451.07593 315.57422 -455.99344 237.44817 -456.23581 1192.1627 -458.27103 664.8703 -469.33826 299.10339 -471.17645 189.25421 -475.23062 306.23184 -476.19046 510.22733 -478.28946 277.06229 -480.12421 584.36914 -494.33038 1687.6663 -496.29111 244.46243 -499.93951 223.48779 -520.91266 295.44348 -523.27734 217.82144 -543.11511 197.86826 -544.08759 432.34592 -551.75311 207.9502 -553.19385 304.80768 -556.45709 209.31081 -558.4129 272.21585 -559.21783 327.78922 -562.21625 549.51666 -564.03412 317.87607 -568.05725 233.45695 -569.36407 709.66382 -571.13409 297.21915 -572.11414 199.05878 -578.25616 351.75116 -587.57953 197.00671 -589.30389 208.60162 -589.46478 207.3246 -595.34082 917.31189 -597.34753 358.08032 -598.14056 234.54156 -599.33649 3602.655 -609.24164 392.4198 -611.09186 252.70949 -612.20795 308.5007 -617.17181 288.31036 -625.35419 187.23633 -632.32422 231.67258 -634.18262 213.93558 -639.16022 225.17148 -644.04596 241.8806 -646.28943 254.35364 -650.35345 260.70746 -652.39069 348.07547 -652.73462 329.04877 -653.36725 209.68723 -658.96027 227.38774 -662.3703 305.46924 -665.95905 239.66519 -667.35815 295.46576 -668.33075 233.46402 -669.82294 190.66902 -670.23175 768.9007 -670.67957 463.33624 -674.22998 561.06689 -675.19946 356.11853 -675.44708 231.65323 -681.16565 199.19493 -683.29266 349.9212 -686.38525 243.57626 -687.5553 228.2446 -690.3855 203.72989 -694.03986 214.02998 -694.89948 226.13358 -697.138 414.12573 -697.54663 202.10062 -699.30786 348.96979 -708.54181 237.19101 -720.28998 281.53473 -725.25977 226.29761 -725.92157 311.43005 -727.43719 987.82422 -730.33936 293.57214 -730.57941 239.11505 -732.99432 282.85342 -737.06226 198.27225 -738.64172 225.61714 -746.73248 288.2916 -747.26508 426.62289 -748.03467 203.9462 -750.02454 232.61575 -753.01178 204.77316 -758.16351 238.04768 -760.00769 202.00336 -760.33557 289.06909 -761.15283 217.19122 -767.58405 300.95068 -770.92444 187.38089 -772.22009 331.78595 -777.06104 279.27301 -778.77368 189.96443 -779.36621 239.72108 -779.87231 298.245 -780.59088 477.98538 -782.50726 985.18958 -784.85748 327.93616 -785.29315 410.56488 -786.60956 328.08182 -787.19086 820.6441 -791.23352 326.75201 -792.40283 192.08989 -793.22241 601.51624 -793.98267 280.2327 -799.41364 345.10486 -799.98041 224.42314 -800.37988 234.01465 -800.62476 391.42181 -803.97302 620.98224 -805.33972 420.29376 -805.91046 399.4567 -806.75208 245.39351 -807.03333 438.70157 -813.40515 228.09792 -816.44623 244.32356 -819.34363 213.71152 -820.5321 473.7395 -823.18304 339.68979 -824.75854 211.09474 -829.88 292.97882 -830.87885 329.94495 -831.96338 380.14996 -835.08539 234.18555 -837.02832 250.26198 -838.12152 356.46075 -838.44366 408.02301 -838.82507 370.41638 -841.23383 389.84622 -843.29321 393.61441 -844.50659 375.6813 -844.7605 230.06657 -845.56744 240.21573 -851.3175 193.58821 -859.15131 402.1889 -859.82831 232.17459 -866.42914 292.77728 -873.34717 402.14606 -879.08673 401.26962 -883.05853 560.07861 -884.52338 286.14557 -888.38525 267.88174 -890.24805 293.58157 -890.93048 329.18356 -892.7821 280.84143 -893.18317 395.07767 -899.06683 413.10278 -900.31573 1676.4384 -904.36847 381.31128 -908.62378 234.76276 -917.03265 325.87891 -918.39832 270.88644 -922.02484 766.27557 -923.33295 271.71677 -925.12183 349.61154 -930.3783 362.07355 -934.52734 417.03772 -936.76892 279.25156 -938.97211 304.19119 -939.28546 324.2352 -943.19702 746.61115 -944.95953 353.00122 -947.14606 270.11804 -948.13031 435.51801 -948.60687 265.42236 -949.03174 420.79504 -951.50824 677.15851 -952.93982 305.56671 -955.31598 786.26404 -957.56799 427.93152 -959.47711 234.88739 -960.74652 292.44559 -962.08258 502.32816 -962.59833 353.98679 -963.05524 521.57874 -964.59521 234.32883 -966.24969 377.64426 -968.1828 459.16479 -968.92358 1146.0012 -972.1214 404.61966 -972.81146 421.75351 -973.4455 465.46033 -974.15198 618.4267 -974.94867 463.78784 -975.6308 325.89896 -976.21417 522.68793 -978.12061 548.2511 -979.12738 1313.1611 -980.11902 1042.9072 -980.75079 338.72318 -982.0882 369.28275 -982.9574 766.95459 -983.42865 289.09546 -983.91876 326.25516 -984.9718 472.68994 -985.98175 517.20648 -986.21985 272.8988 -987.05096 463.75031 -987.94165 277.41934 -988.8316 563.18304 -989.82574 334.31946 -990.03687 837.90247 -990.51849 274.33881 -991.80511 435.87762 -992.69366 449.68063 -993.94128 1618.0034 -994.9317 691.68719 -998.3111 433.50717 -998.85468 602.62354 -999.20288 318.95404 -999.63312 351.87933 -1000.0234 311.10184 -1000.7396 559.12653 -1001.8535 553.87897 -1003.4711 273.99115 -1007.4508 362.63181 -1008.3204 287.67303 -1014.1926 519.26343 -1016.5643 317.07004 -1017.2841 398.44275 -1018.03 558.88983 -1018.7805 311.11719 -1021.1536 403.97562 -1029.3939 1531.2485 -1029.9658 451.13574 -1039.1555 323.96844 -1041.9413 238.09395 -1044.0894 531.16833 -1044.5149 343.97656 -1045.5822 261.41437 -1047.345 512.12909 -1050.9109 256.21182 -1051.9991 241.44562 -1053.437 357.40955 -1055.5657 397.15173 -1057.34 2127.9958 -1059.1737 580.935 -1060.7593 416.4772 -1080.1144 270.33444 -1081.7654 227.64792 -1085.1748 240.0918 -1090.213 242.55174 -END IONS -BEGIN IONS -PEPMASS=1330.7761 -CHARGE=1+ -TITLE=Label: L22, Spot_Id: 680102, Peak_List_Id: 1021038, MSMS Job_Run_Id: 33165, Comment: -86.087547 380.1239 -100.06525 239.82808 -110.07647 970.02002 -120.06669 291.01129 -122.04745 268.08798 -123.09573 176.5377 -125.05856 192.82323 -136.0674 160.58771 -150.07307 168.58916 -172.01678 174.39752 -181.04214 179.85136 -197.0555 159.65305 -201.08067 171.94588 -215.21361 157.81653 -226.08577 369.14246 -228.08229 166.0477 -234.07196 339.2272 -235.31575 166.3148 -244.13315 163.91013 -251.14709 204.00354 -263.36682 168.99144 -272.17365 219.70175 -293.07913 223.18036 -294.07358 224.20535 -298.23569 155.90228 -315.11307 167.03732 -336.18448 243.31581 -342.19684 186.23492 -343.1796 260.14822 -344.26654 169.27098 -351.01276 177.6595 -353.13101 208.12881 -380.11078 156.5822 -397.70145 214.8446 -415.2562 376.19196 -419.08984 171.76146 -420.12137 278.86896 -437.16025 219.21906 -443.15659 209.57564 -462.08603 168.50887 -463.2009 368.50018 -464.29703 198.18434 -465.31689 253.84657 -472.25107 160.71562 -483.24875 245.17583 -488.31067 157.32649 -493.21695 291.78076 -500.07947 160.76695 -505.41864 221.01595 -506.2951 167.80229 -512.26251 197.15701 -523.1944 368.24164 -526.08075 158.07314 -528.53101 184.26331 -540.05109 268.35654 -549.1073 155.62007 -557.32141 166.04349 -559.62769 156.28148 -563.1665 202.55449 -566.88263 198.94788 -567.62671 171.29045 -568.10944 352.11865 -578.32336 237.19382 -579.19373 168.05836 -594.2652 198.70711 -600.28491 271.54999 -605.52606 323.84866 -606.37372 367.65704 -621.08087 195.92065 -639.00824 175.52946 -639.35223 178.17577 -646.07764 185.34221 -647.1181 177.36115 -650.97131 171.13409 -651.14868 188.70552 -654.36719 235.29536 -659.06915 167.2475 -664.17627 200.61894 -671.11578 241.98276 -672.15814 237.95659 -673.26898 164.37434 -675.10956 371.06131 -677.23645 225.07063 -688.09991 226.6084 -694.47748 197.93517 -696.06897 217.30894 -703.85114 163.01866 -706.63196 295.26608 -710.3222 313.50208 -712.52924 466.28168 -713.30328 206.83247 -714.31873 199.71007 -715.49426 183.02885 -718.17883 195.1707 -721.13318 161.10068 -724.35779 211.81554 -726.49188 226.6823 -728.08569 183.54256 -733.92523 182.85364 -734.32153 995.48059 -736.40686 231.60887 -736.58362 203.61783 -742.45892 220.82141 -743.88104 172.9991 -747.25732 306.40021 -749.05414 170.05353 -750.46472 363.55627 -757.20502 214.37408 -766.24841 234.85376 -767.41058 216.69519 -770.19281 281.60764 -771.82971 172.29398 -774.05298 181.34987 -777.09839 271.61728 -782.11719 239.98013 -803.19952 295.87762 -813.01813 205.77948 -815.47449 258.0358 -816.97449 433.56305 -818.18561 258.73703 -828.43701 275.1965 -829.35498 183.91908 -832.0033 239.68492 -833.35712 418.21146 -836.32935 318.09103 -842.29175 360.0213 -842.49915 261.71112 -848.64209 179.41037 -849.02026 221.22487 -852.97705 402.03397 -853.34137 194.71237 -860.46729 171.50316 -861.23425 341.23367 -863.14447 202.13057 -863.3501 292.94717 -863.65417 212.02444 -864.27167 163.62244 -867.0332 208.48711 -872.06384 171.32542 -875.17682 274.00479 -882.8147 250.36243 -888.56201 158.49384 -890.16241 173.9099 -892.92139 225.60506 -898.35431 263.63156 -900.09357 349.55612 -902.14197 227.67711 -903.78192 213.27664 -904.96649 158.25122 -909.75891 168.78107 -918.65161 183.67851 -921.24182 235.71425 -925.54987 165.9146 -928.27789 444.0239 -930.37805 162.83508 -932.45026 204.39697 -936.76379 179.81902 -937.9408 271.20273 -939.09875 204.18646 -942.05017 354.7103 -942.35846 173.36055 -944.08862 315.81744 -944.98993 181.99684 -946.24817 333.12671 -948.11945 531.9342 -951.74854 236.12389 -953.30463 268.73215 -956.02844 175.84009 -956.91962 218.5029 -958.81354 173.08514 -961.62 409.24213 -961.87244 212.53119 -969.47192 337.60175 -971.70319 184.08676 -972.41931 179.37065 -975.89374 310.34924 -982.12189 199.85127 -983.34381 246.49185 -989.58514 324.3103 -992.56055 182.67117 -995.43921 169.22701 -998.92426 247.74693 -1000.1945 164.20374 -1008.176 251.54257 -1009.3303 261.25241 -1013.3011 250.62535 -1016.9681 276.06821 -1024.33 638.60327 -1026.4299 201.89508 -1026.8367 188.75522 -1029.0874 272.09009 -1030.2081 214.17569 -1031.5188 248.55446 -1033.0502 201.67467 -1035.9464 172.62404 -1036.3627 155.74812 -1037.1416 165.68819 -1038.7177 202.07086 -1039.0448 160.84575 -1039.2715 177.13409 -1041.8527 161.15642 -1042.0754 264.25327 -1046.0953 209.55605 -1047.1969 342.00763 -1047.5006 975.08685 -1049.1589 247.74782 -1054.1421 212.12764 -1054.6135 268.68329 -1055.0543 182.45566 -1056.8173 221.46208 -1060.5024 187.50488 -1062.8523 159.54254 -1066.8865 164.9671 -1067.3475 247.10843 -1069.4219 166.4472 -1076.9459 375.76224 -1077.5542 204.32379 -1079.1575 222.15877 -1084.1097 229.06558 -1087.4862 211.62163 -1088.0593 537.29218 -1089.6443 160.74072 -1091.3479 211.94116 -1094.7823 307.80936 -1095.278 176.00703 -1096.1257 202.60498 -1097.8624 349.95709 -1101.4375 225.65489 -1103.3134 260.8475 -1109.817 422.81848 -1110.2281 309.67154 -1117.525 252.94887 -1117.9844 245.71622 -1119.8312 311.63635 -1122.313 371.20712 -1122.8883 209.64066 -1124.0718 426.71478 -1126.2906 229.06099 -1127.2239 275.39484 -1127.6636 215.12576 -1128.0898 486.63672 -1128.9153 1226.1963 -1130.6686 237.48112 -1131.0065 350.20679 -1132.0309 2451.0842 -1134.0031 984.86938 -1134.9441 1152.3889 -1135.53 291.76678 -1136.9087 294.66626 -1138.1772 628.55859 -1139.9056 1325.035 -1142.0809 261.60977 -1142.3961 405.4679 -1142.7538 157.97563 -1143.0804 194.45656 -1144.0599 177.95116 -1144.8295 989.62 -1146.7516 443.25922 -1147.6522 406.44 -1148.9558 259.05499 -1149.7156 485.00076 -1150.0959 430.61914 -1150.8954 331.45813 -1151.8875 559.42798 -1152.6167 299.55536 -1153.7607 761.61053 -1155.5466 402.28766 -1156.7035 214.83209 -1159.6844 190.036 -1159.9949 158.86612 -1160.774 182.79453 -1161.1068 315.1976 -1166.8124 197.45483 -1172.7544 220.20996 -1173.3057 410.41934 -1174.3583 422.09018 -1175.0179 254.36507 -1177.2308 204.07185 -1178.0046 207.24814 -1181.4476 210.06284 -1182.699 196.43521 -1190.0074 266.66708 -1193.5916 311.42004 -1195.9302 207.51112 -1196.6282 218.76723 -1198.1187 225.68114 -1198.9395 180.86952 -1199.5013 677.80933 -1200.7283 409.85794 -1203.3215 364.34814 -1206.7054 240.97485 -1207.1088 258.97916 -1215.3163 391.40695 -1218.431 182.91663 -1220.5702 362.01224 -1223.7424 232.81111 -1224.2241 320.21161 -1224.7535 163.99298 -1232.2236 165.33873 -1296.7571 196.33664 -END IONS -BEGIN IONS -PEPMASS=1343.8032 -CHARGE=1+ -TITLE=Label: L22, Spot_Id: 680102, Peak_List_Id: 1021034, MSMS Job_Run_Id: 33165, Comment: -70.04213 444.44711 -86.076141 220.07994 -110.05585 800.09247 -161.117 222.32303 -164.15335 278.30579 -165.97063 299.49646 -166.07265 301.31015 -172.02827 594.40619 -195.03987 236.54875 -198.09496 272.36163 -204.08163 256.77463 -205.2822 213.05994 -209.09637 276.00562 -225.11093 299.11365 -245.12556 255.89217 -266.08765 225.10744 -270.17688 241.86343 -279.16068 376.66333 -290.08594 215.37682 -300.15533 249.3416 -330.14197 436.71457 -334.06256 224.6179 -335.16641 460.99258 -348.25323 229.54633 -358.125 201.84537 -368.13666 205.76051 -372.13571 276.38989 -389.11118 203.69688 -414.24582 263.71957 -419.21622 236.65431 -421.15952 215.75462 -423.10318 251.12405 -436.42227 236.53131 -457.12247 286.39355 -457.26746 266.13116 -501.35391 255.61926 -505.1199 203.97092 -546.27911 249.63152 -550.36292 240.53038 -552.40497 229.10968 -561.14282 349.1203 -577.18048 240.23148 -580.32092 207.18852 -589.29529 238.87454 -595.13507 220.40431 -606.29962 325.90125 -609.40314 337.25049 -613.37024 248.31088 -616.0224 231.86539 -618.18787 431.00403 -621.05139 329.33383 -622.14514 417.9953 -639.35077 271.88919 -643.45697 411.37076 -644.82104 239.66125 -648.08221 279.15948 -658.2038 341.125 -661.63794 250.55431 -664.31531 237.40117 -669.28314 218.27982 -670.09515 202.21959 -671.91119 211.35458 -674.13885 319.65237 -676.04327 219.35771 -680.24255 420.3374 -686.41858 245.66507 -699.12256 284.0314 -700.07373 412.84875 -701.43536 294.14941 -710.53522 237.75694 -712.45551 806.93951 -717.51489 268.11496 -718.08691 221.77759 -721.14862 202.15338 -722.42426 204.84688 -724.70551 222.295 -732.76355 296.80847 -733.24152 333.76501 -734.40686 753.2608 -734.92273 222.77841 -742.16162 242.57928 -747.43958 238.98613 -750.3067 482.62399 -756.23285 373.57492 -762.6059 267.36923 -765.25922 626.0531 -773.38708 284.18256 -775.44666 232.69695 -776.05939 241.22716 -778.26599 335.14905 -779.16687 485.69925 -786.95599 294.94919 -790.37476 337.4892 -791.26764 428.80176 -794.27655 281.04239 -797.4234 254.99203 -808.72479 210.59705 -811.48639 250.56313 -812.15033 572.65759 -815.2262 232.26903 -823.40594 214.14828 -827.14307 424.06107 -828.5943 203.03204 -840.81403 218.96371 -846.04559 228.36723 -849.3783 240.59019 -852.25165 231.28183 -853.3429 248.98738 -856.06836 290.85056 -856.47803 389.26001 -858.47235 478.2175 -860.13098 272.96698 -862.40533 226.11475 -863.66089 252.14719 -864.50177 283.12891 -865.36847 377.46014 -868.14063 253.35628 -868.80878 264.53342 -874.40936 242.84746 -876.29059 554.25323 -877.02271 290.31186 -879.36115 335.23285 -882.78827 292.03754 -885.42999 632.25446 -893.41595 245.75757 -893.85602 202.89183 -898.47882 253.06996 -899.07422 376.82986 -904.0282 274.92145 -905.81085 530.02197 -907.18616 247.515 -916.19312 246.09247 -920.815 309.92599 -925.03925 268.25278 -933.354 313.7916 -934.18262 557.72601 -935.21588 390.34445 -937.09491 392.53653 -942.263 275.30438 -946.27014 478.53241 -947.19135 528.99286 -947.96222 225.2634 -951.55157 1092.6975 -953.83551 247.59459 -954.15588 459.25732 -957.13861 800.6073 -959.94348 284.00684 -960.40015 353.1572 -961.8974 202.44214 -962.91907 203.58981 -963.45734 324.51666 -964.95184 318.22717 -968.72516 205.8437 -969.10602 446.07062 -969.57825 222.84247 -970.22095 226.66296 -970.99634 351.6543 -971.49951 226.54196 -972.0835 396.42511 -973.56506 252.66615 -974.20874 253.5732 -976.35077 482.13376 -977.16119 210.02805 -978.99609 441.15311 -984.39374 269.45291 -986.86011 229.98938 -987.08734 312.06223 -987.61414 214.01595 -994.21771 482.8519 -999.71906 348.5289 -1000.8476 278.66345 -1002.6825 500.27533 -1004.0432 461.37924 -1006.0884 280.30499 -1011.8793 213.42351 -1013.3425 420.62943 -1014.6211 226.79131 -1015.0425 225.56328 -1015.4548 323.17426 -1015.7948 216.48737 -1017.2271 248.05777 -1018.5456 211.85106 -1021.389 487.61325 -1023.3793 354.31369 -1023.8874 256.53149 -1024.3297 377.32788 -1025.0187 408.0936 -1029.2383 274.09482 -1031.1082 225.15167 -1031.5928 385.52917 -1033.1078 215.78925 -1035.2843 285.12128 -1038.3898 406.70831 -1041.1741 214.46623 -1043.6602 484.10861 -1048.2142 351.67795 -1048.5168 216.06291 -1058.9537 291.94507 -1067.1211 378.03287 -1067.8025 330.91873 -1068.4749 347.14255 -1070.4037 453.69321 -1071.1779 310.21973 -1073.7224 318.11472 -1075.6249 234.21516 -1078.7638 272.13889 -1079.1591 626.25708 -1098.4988 238.44289 -1100.3466 322.58911 -1101.166 247.29543 -1105.4712 393.67239 -1107.4026 253.33113 -1108.1989 291.70264 -1111.0867 297.00241 -1113.8156 313.23944 -1115.7844 334.91492 -1119.5115 267.81152 -1120.0529 603.03076 -1123.1906 456.78387 -1123.5419 307.36533 -1124.9236 312.52292 -1125.3214 284.60373 -1128.1455 294.48187 -1128.4535 348.10733 -1129.165 296.63092 -1129.7974 289.27921 -1131.0918 462.63162 -1132.6545 329.18103 -1133.0457 269.7897 -1133.9286 630.84473 -1135.1229 312.7558 -1135.6615 288.5701 -1136.4099 377.51154 -1138.0366 1147.7684 -1138.6233 330.2811 -1139.4988 290.54324 -1140.2175 636.74048 -1141.0114 1750.517 -1143.0903 612.703 -1143.4348 269.81921 -1144.1858 1228.1764 -1145.0369 1099.158 -1145.6643 321.2045 -1146.0735 987.34265 -1147.0022 645.95593 -1147.952 595.15479 -1149.9208 1171.6926 -1150.3473 593.8446 -1151.429 294.22015 -1151.7899 1719.2128 -1153.3694 730.34515 -1153.8002 461.2186 -1153.9739 740.35919 -1154.7942 1628.8671 -1156.8439 1506.8719 -1157.0499 440.5347 -1158.579 311.14108 -1159.6378 496.93707 -1160.28 463.10233 -1161.8821 1426.2341 -1162.694 1467.0853 -1166.0551 297.7569 -1166.8258 553.09424 -1169.1072 411.41757 -1175.6763 371.64868 -1176.3899 333.65997 -1178.4138 443.28568 -1180.542 454.22861 -1181.163 278.8147 -1185.1143 405.7908 -1186.4318 320.96124 -1186.9594 284.84674 -1188.0397 321.42657 -1188.6599 229.23201 -1190.3059 426.47113 -1192.171 354.35803 -1193.8903 347.36215 -1198.7601 325.75348 -1200.3593 607.82727 -1200.7319 235.00224 -1201.6101 892.51532 -1206.2241 415.07608 -1209.6591 340.90326 -1209.8477 263.82626 -1212.4313 310.42081 -1212.839 328.49106 -1213.4948 231.90558 -1216.4417 979.70227 -1217.6395 284.98511 -1218.788 291.84427 -1219.2396 665.24243 -1227.3024 406.69171 -1234.1804 251.66246 -1245.4088 286.17288 -1246.6427 725.86389 -1248.8751 324.83472 -1249.5652 505.32797 -1255.6305 251.90843 -1259.249 459.12265 -1322.5309 214.2359 -END IONS -BEGIN IONS -PEPMASS=1363.6647 -CHARGE=1+ -TITLE=Label: L22, Spot_Id: 680102, Peak_List_Id: 1021035, MSMS Job_Run_Id: 33165, Comment: -70.023163 175.79691 -70.075569 279.83707 -84.050835 175.78064 -86.083717 438.92752 -110.06782 914.94342 -136.07031 333.38797 -171.98631 262.91843 -200.11102 281.36942 -201.08481 498.79474 -227.1004 240.336 -231.05551 225.38664 -237.12543 235.72763 -270.15652 225.94849 -271.08597 185.49818 -285.12552 187.00359 -294.15518 186.76067 -298.14288 211.24176 -304.13876 419.12939 -308.16046 181.04141 -335.08954 213.47362 -349.08667 210.60112 -358.15302 198.66235 -364.54184 185.41585 -365.17609 183.85666 -376.15585 352.06253 -408.90854 179.53471 -421.24353 345.60864 -422.09946 304.53577 -431.26663 176.68095 -433.21539 211.12936 -434.08847 284.12857 -444.14111 300.28546 -447.19073 557.29272 -447.34708 204.82353 -449.10934 328.91095 -465.04712 201.84703 -475.2341 209.19034 -476.82294 185.61656 -495.28983 170.34329 -510.12271 234.20988 -513.10516 290.94348 -519.12085 904.44568 -521.29047 449.55957 -524.17419 181.60313 -526.18463 314.2261 -535.43964 271.26184 -551.01526 221.21716 -562.08844 296.25555 -571.08447 202.64183 -571.30725 201.85107 -576.3537 181.94601 -585.33667 327.96249 -592.28815 172.76041 -593.08099 221.63676 -600.99628 192.68822 -614.20398 225.00261 -618.05304 295.87625 -620.34558 197.62979 -623.10083 193.65515 -624.34528 181.02988 -626.20935 211.96996 -632.07379 205.24556 -634.27966 206.52615 -644.13922 228.10075 -646.19806 252.31264 -648.18134 1037.6188 -651.37494 200.48708 -658.12683 177.23044 -662.10095 179.50414 -664.77637 180.05518 -667.22577 288.53647 -671.11719 235.72151 -678.49036 313.16544 -691.35413 211.07515 -694.14935 227.30841 -696.17755 180.8486 -700.58844 213.59637 -702.99756 175.14301 -707.33008 206.47525 -714.32007 291.93811 -716.02771 187.28899 -718.43188 269.85498 -719.19965 254.73868 -726.02704 326.78665 -738.26086 182.00911 -739.91656 183.37709 -748.23151 214.91891 -751.32886 206.5753 -752.18591 255.86122 -753.53296 235.63217 -753.91113 366.30817 -757.20245 209.13751 -760.50903 220.41896 -763.31006 183.99731 -766.35187 1468.6685 -774.12537 449.74399 -774.48816 178.88266 -791.11652 176.11482 -793.10638 315.46637 -794.1366 244.98961 -797.19391 346.99506 -806.75525 237.41536 -809.05493 249.30803 -809.94788 185.13989 -813.90894 184.54993 -817.14307 178.55301 -819.28754 321.78912 -822.15289 181.72441 -827.14178 329.85495 -829.36694 187.73932 -835.08777 241.81572 -844.26892 229.43553 -850.40161 241.41815 -856.17725 498.17685 -862.26788 315.40042 -863.1499 323.65735 -863.44403 190.37709 -864.133 175.2677 -865.04126 295.20599 -871.17834 441.96167 -872.39703 179.63403 -873.27148 299.42593 -876.27844 442.96091 -877.26959 317.64301 -877.49677 214.06981 -881.24475 188.66573 -884.51123 286.88293 -885.34729 351.74664 -886.00134 210.75769 -886.74805 175.75693 -887.45282 229.35835 -889.28796 516.8382 -890.13733 227.19809 -890.45319 308.15579 -891.2489 232.0743 -892.3996 224.64876 -895.15369 380.60379 -895.33783 670.1875 -898.35498 202.60744 -901.28735 217.34277 -903.13153 280.9653 -911.5274 213.10938 -912.23486 231.19037 -914.45636 175.24052 -926.03235 249.40512 -927.41724 186.84933 -927.65887 202.69897 -930.07574 320.59183 -933.20697 177.6649 -935.03619 175.63533 -938.07562 183.1078 -942.31232 431.35959 -952.53326 195.83415 -955.36975 205.16866 -956.5177 181.49501 -962.16644 328.11411 -962.58643 292.36783 -971.13519 270.4653 -973.1839 250.12875 -973.86169 183.36145 -976.90326 201.34024 -977.27325 305.11447 -978.79016 263.49612 -979.19556 369.69385 -981.34845 171.00583 -982.06873 339.73831 -983.065 238.14444 -984.89996 212.42609 -986.06952 263.53476 -986.35406 499.45758 -987.3573 251.002 -988.0697 756.92035 -990.80652 304.18881 -992.37396 257.3002 -993.02289 215.63916 -996.94055 311.72705 -1001.9265 241.164 -1003.1234 205.05356 -1006.0583 300.58249 -1011.2554 296.90451 -1011.8112 194.0002 -1017.8646 169.89542 -1028.3501 267.96655 -1040.8342 302.57455 -1041.2271 192.97133 -1041.9424 210.24625 -1043.1964 250.6265 -1045.8151 204.85706 -1047.0402 180.98198 -1049.2294 302.65167 -1050.8657 250.93422 -1051.449 229.13097 -1055.1143 347.43536 -1057.0083 276.32635 -1063.9421 282.09177 -1065.0043 782.09857 -1068.7529 290.15952 -1072.1021 222.43721 -1072.5194 244.33603 -1073.292 247.65738 -1074.9808 257.57324 -1076.5209 463.74222 -1080.8054 237.33057 -1081.4711 249.84894 -1083.0867 304.49887 -1083.3478 302.39221 -1085.5104 242.49359 -1087.2642 245.0757 -1088.0275 254.23141 -1089.7731 371.24268 -1094.2174 213.21518 -1094.9911 287.2554 -1095.8866 366.1004 -1097.4017 266.48737 -1100.4683 542.9317 -1108.3125 492.64685 -1109.3625 247.14813 -1115.1692 278.81888 -1116.0442 261.41833 -1118.6337 258.44879 -1119.5548 241.77843 -1121.9397 546.73639 -1123.3755 422.97556 -1133.4078 491.66214 -1133.797 290.49991 -1134.6433 238.30501 -1141.881 513.94128 -1142.4171 352.14981 -1143.2201 444.11642 -1146.6769 235.6268 -1147.5323 247.41248 -1150.1809 299.46194 -1150.8285 223.50485 -1152.0238 715.15222 -1153.1365 277.64523 -1154.499 631.73108 -1157.3779 299.38605 -1158.229 354.69833 -1159.5289 302.02969 -1161.1688 464.93304 -1161.9574 1655.6931 -1163.7422 320.70282 -1164.2981 258.76767 -1164.9506 966.81445 -1165.1705 596.00928 -1166.5865 463.87982 -1167.1332 530.19696 -1167.9235 883.56018 -1168.2169 458.21384 -1168.925 431.28204 -1169.0725 582.62097 -1170.866 675.13214 -1173.0916 362.20535 -1174.8009 1091.8025 -1175.3116 535.89569 -1176.59 393.78455 -1177.9146 692.11963 -1178.6652 721.86279 -1179.0292 452.8996 -1179.8987 296.13992 -1180.6666 707.86639 -1181.1047 233.32491 -1181.9999 927.76801 -1182.6677 327.92969 -1182.9956 468.47256 -1183.5544 241.73422 -1184.4081 316.52924 -1184.6832 501.99643 -1186.7518 404.52347 -1187.6226 366.48166 -1188.3785 396.80508 -1188.9662 272.22961 -1190.1277 249.85669 -1195.923 424.30267 -1200.9419 352.18848 -1201.4718 301.2536 -1203.4974 234.9711 -1205.0066 214.81313 -1209.184 361.51886 -1209.4902 282.31378 -1212.5319 878.15344 -1213.4615 883.03967 -1215.6904 295.84586 -1219.8486 265.27017 -1221.9154 355.8494 -1222.6343 235.78185 -1224.2317 430.17581 -1230.5052 441.91513 -1231.9335 266.0379 -1232.3708 385.10242 -1236.2172 396.233 -1241.272 304.3053 -1248.1951 232.65019 -1254.3145 228.92026 -1259.5807 266.33789 -1261.3345 182.58745 -1265.275 245.22855 -1267.2279 192.01414 -1268.9954 357.24216 -1277.4779 192.04196 -END IONS -BEGIN IONS -PEPMASS=1587.7797 -CHARGE=1+ -TITLE=Label: L22, Spot_Id: 680102, Peak_List_Id: 1021039, MSMS Job_Run_Id: 33165, Comment: -60.886787 140.31328 -70.057419 387.76538 -86.109322 237.37849 -87.080284 161.59547 -96.038017 254.3672 -100.05177 152.49242 -101.06237 182.09277 -110.06445 429.71167 -112.09078 148.18297 -120.08092 457.52667 -127.08559 148.14201 -130.08757 169.64642 -147.11104 159.19719 -159.09363 138.66287 -167.10968 123.8427 -175.09216 386.88403 -203.07632 120.812 -223.16736 139.80247 -227.13994 155.21298 -249.18448 224.45691 -257.1965 203.27075 -266.19196 114.58322 -287.20874 130.0139 -293.0899 194.95116 -294.10077 126.09215 -336.17209 137.29245 -371.203 124.13469 -378.2341 196.56865 -380.13406 119.26265 -386.64755 114.09499 -397.21609 313.30542 -408.29181 139.37889 -411.41901 119.34332 -412.20572 115.5931 -417.9938 154.38615 -419.26859 119.59724 -433.13873 198.66434 -449.04846 194.78067 -462.07779 165.05901 -466.10944 142.33475 -486.10416 155.04596 -493.28891 267.84747 -495.21432 145.78812 -526.62201 120.50954 -530.18341 120.96578 -538.4953 146.6768 -544.92139 194.19817 -549.78693 130.94287 -556.36371 170.34796 -560.20581 128.4225 -563.13019 130.12256 -570.41321 168.50023 -581.45087 121.39931 -598.08545 153.11365 -602.39679 179.54512 -612.79712 170.94315 -620.32208 120.88761 -627.81592 171.83797 -635.25531 186.97728 -642.39771 148.66661 -642.88226 114.0655 -648.19086 146.60358 -649.224 139.85811 -657.11493 188.88219 -661.0957 177.08522 -662.37384 257.66498 -664.5744 132.5175 -664.87921 190.10548 -673.30615 272.32446 -678.11139 133.92062 -690.15051 120.57191 -693.73059 116.62978 -703.31995 223.92105 -708.25275 119.19335 -712.36169 117.77802 -717.42645 159.92958 -719.21375 178.96844 -729.26233 149.45601 -732.1593 117.29525 -732.75543 146.7937 -733.29529 172.0916 -733.58923 221.27818 -739.08533 158.68947 -739.64172 144.69456 -740.50037 126.99038 -743.27399 115.81772 -753.42523 160.98808 -755.36041 119.40472 -760.40649 197.37314 -762.27081 186.98497 -767.67444 180.42418 -769.0744 140.02309 -770.95953 150.12502 -776.40503 121.79386 -777.60168 157.49068 -789.14661 156.23637 -794.13086 159.5887 -794.39471 122.82855 -800.9278 221.07149 -805.35907 139.27263 -807.48724 209.99234 -814.12042 133.67479 -815.33167 208.617 -818.51099 178.84598 -820.34509 140.80717 -833.03687 135.80089 -843.3291 157.28421 -845.32782 146.17934 -846.02679 147.13057 -849.18188 135.39055 -859.38312 182.99368 -860.73511 175.01097 -864.1673 181.8956 -868.38 131.1433 -868.67468 117.3582 -889.43243 160.5804 -893.22931 125.51649 -897.10468 128.37494 -909.99475 133.61975 -911.23322 216.02892 -911.5036 151.59497 -926.03094 150.82767 -933.23328 123.98492 -934.38477 133.31383 -937.5722 141.87981 -941.67316 119.67651 -957.2312 121.75828 -958.47449 142.05193 -963.21411 218.58371 -965.36615 123.27852 -969.3894 269.61731 -973.1015 115.75565 -974.29596 219.48541 -977.4762 132.5491 -981.81281 122.63687 -987.12811 219.1696 -995.04401 146.51984 -998.86157 193.55016 -1000.1454 194.49922 -1000.4826 139.75323 -1008.4919 114.58282 -1010.3284 270.81812 -1013.7334 114.56889 -1020.1091 170.04593 -1024.0958 218.88394 -1029.1248 164.01811 -1032.1747 156.38135 -1033.3247 199.54947 -1039.049 130.06564 -1045.2979 115.34527 -1046.521 115.02182 -1047.9606 163.31459 -1049.4658 200.71875 -1049.8202 216.60422 -1051.478 153.39716 -1058.9314 160.13745 -1062.2783 121.529 -1073.9313 303.68857 -1100.0997 333.71152 -1109.8241 147.72964 -1112.4556 405.54172 -1117.1483 187.64117 -1126.8262 132.16708 -1129.1207 160.28918 -1131.4926 126.84285 -1136.5972 243.71767 -1136.9429 176.78625 -1140.6797 181.57181 -1141.4521 271.86273 -1147.1837 152.0278 -1152.0889 157.48721 -1153.4917 124.82143 -1162.9147 438.70532 -1169.7524 274.53665 -1180.0999 143.42278 -1181.4144 133.77751 -1184.7449 364.46872 -1187.3243 249.5401 -1191.1227 177.95091 -1192.0115 275.09946 -1197.7253 254.71834 -1200.0116 155.73116 -1201.2418 302.69644 -1206.9863 208.36258 -1208.1523 183.61964 -1208.5183 132.13365 -1210.0322 360.30099 -1214.0002 412.86453 -1215.0734 236.91814 -1216.7014 124.98306 -1219.2871 136.71126 -1221.3552 120.80164 -1221.6915 116.96658 -1226.4554 145.89516 -1242.6184 197.69553 -1247.9979 291.07925 -1251.0011 217.11197 -1253.8062 150.39279 -1256.5079 216.60675 -1258.051 151.0229 -1267.5159 148.05759 -1269.9606 119.22625 -1271.8544 121.88681 -1274.4528 201.50409 -1275.1226 173.65215 -1280.7046 120.40948 -1281.2246 188.047 -1287.2358 137.33015 -1296.1006 142.2655 -1297.6964 253.14676 -1304.7642 296.87051 -1305.2316 206.75867 -1305.6001 287.67548 -1307.5057 168.68681 -1312.4044 123.50969 -1314.9218 233.82959 -1316.2084 344.20508 -1320.0371 239.73907 -1322.772 271.87671 -1327.276 152.73914 -1331.6514 152.42828 -1334.2803 243.73621 -1336.4091 194.45239 -1338.8174 168.30118 -1339.6393 159.98833 -1344.974 130.32674 -1348.9547 264.33585 -1349.2531 121.0077 -1353.3772 142.30811 -1354.8365 266.44446 -1355.5292 209.57767 -1356.3506 153.10132 -1357.2313 136.21178 -1359.1006 355.38712 -1363.4781 226.82672 -1364.9791 131.9137 -1365.4069 143.95375 -1366.7369 175.94415 -1368.2948 148.15843 -1369.8831 205.30461 -1371.7871 551.42676 -1375.2711 376.08447 -1377.3552 115.34786 -1378.1812 151.80142 -1379.0219 294.87653 -1381.0797 358.11835 -1384.1388 233.78969 -1385.0317 318.4819 -1385.4054 136.89375 -1385.8734 267.37149 -1386.54 207.97404 -1387.0441 278.00473 -1389.329 611.49347 -1391.4585 154.01947 -1391.7511 330.36487 -1393.0804 318.06024 -1393.8885 611.7558 -1394.3716 244.95119 -1395.9131 232.54997 -1396.2646 314.64844 -1396.8737 129.48781 -1397.73 179.70111 -1398.8756 457.93777 -1399.5972 173.7323 -1400.0641 188.49841 -1401.5453 132.06422 -1403.9756 471.22183 -1404.807 200.06717 -1405.2922 194.75931 -1406.9309 230.42227 -1407.4329 409.40744 -1408.13 220.06082 -1410.0771 231.21259 -1411.6523 450.42148 -1413.2473 177.27693 -1415.7201 172.3755 -1418.0669 163.05315 -1418.5128 294.1391 -1419.3221 148.0827 -1424.7937 177.46539 -1427.3019 120.89653 -1427.8654 135.43098 -1428.0864 268.67084 -1432.4995 223.81894 -1435.3978 185.35431 -1446.3761 206.16017 -1449.809 118.58466 -1450.4626 266.07123 -1452.8381 317.54388 -1453.2664 123.96468 -1454.4641 141.6245 -1458.4852 147.98648 -1459.2246 295.67633 -1475.1011 133.14687 -1477.3164 140.06339 -1481.5482 211.06392 -1483.0618 131.44629 -1484.4972 161.66423 -1485.9232 115.62759 -1535.4983 119.23839 -END IONS -BEGIN IONS -PEPMASS=1662.0535 -CHARGE=1+ -TITLE=Label: L22, Spot_Id: 680102, Peak_List_Id: 1021036, MSMS Job_Run_Id: 33165, Comment: -70.047302 500.68915 -101.08686 370.7233 -112.07738 202.53624 -120.07842 318.9209 -129.10483 306.53461 -171.1248 421.63419 -175.08659 369.19897 -181.05754 169.98741 -183.10802 313.07062 -197.19485 296.68536 -198.09724 227.76317 -199.10413 412.77478 -200.18169 400.40317 -213.20378 177.61615 -226.08057 683.50531 -226.198 398.95688 -227.15337 464.47769 -228.1033 301.41608 -228.75493 200.60316 -245.07925 455.84338 -257.14203 191.88583 -262.13669 383.05765 -268.20709 258.72272 -297.24142 230.95039 -312.2309 218.92824 -313.14957 181.49605 -325.16 678.85352 -326.17566 313.9343 -326.48737 198.90225 -330.00995 261.93103 -331.38824 222.94081 -351.12677 169.76852 -361.11273 197.58366 -361.20001 325.92331 -364.00949 170.31004 -369.2182 195.50424 -373.24445 170.99208 -383.28659 309.22949 -389.32465 253.1087 -398.31808 176.57387 -398.68625 168.99614 -405.14749 204.00624 -410.93283 168.96419 -411.26462 203.34801 -412.26334 333.97903 -415.35022 312.94962 -417.12073 267.24692 -418.16534 228.91263 -418.37344 166.1588 -424.10934 204.28342 -459.27542 229.70151 -472.10452 230.59389 -495.42972 185.81975 -498.56628 181.85829 -512.32397 238.4431 -513.24139 367.96512 -524.37494 370.2103 -539.2608 185.37421 -541.40668 263.97519 -583.35126 304.32236 -589.50665 218.436 -590.41388 267.17764 -591.31415 255.42479 -616.35876 248.1295 -630.28308 220.75401 -636.30951 315.43942 -639.41504 209.91327 -640.43146 185.50578 -641.099 228.14967 -643.41058 190.26485 -645.24921 194.31299 -663.43201 169.31512 -664.33807 187.73291 -686.48914 191.37079 -690.70679 188.78456 -702.25604 400.10742 -702.52856 372.84689 -712.12445 445.92719 -712.46729 191.4966 -718.15051 167.2874 -724.50513 167.85527 -726.45917 171.23419 -733.14099 235.37019 -735.27258 168.9308 -739.47003 233.32498 -741.06903 166.57826 -752.78857 277.74313 -788.45227 170.24741 -798.22729 277.75674 -802.24438 236.6075 -813.97552 175.22032 -831.49219 170.43149 -832.56671 243.4593 -846.18005 201.59419 -849.10858 188.31458 -851.05475 263.30606 -856.38953 209.21341 -857.30585 213.392 -860.41364 200.54343 -866.54309 201.93504 -871.24609 203.14987 -873.24072 176.96191 -877.46808 215.9315 -882.46136 284.06253 -884.0816 174.5184 -886.28558 188.03751 -890.18665 234.78841 -900.53302 1964.3701 -903.7594 216.12257 -908.98273 184.23492 -918.24579 293.93579 -923.22485 345.98837 -926.77405 187.9389 -927.38647 166.35196 -933.32391 186.9417 -936.91815 177.7327 -937.57123 189.88696 -938.38593 295.8241 -955.888 270.56805 -958.53442 186.83441 -959.07715 209.73972 -977.19104 187.69702 -981.14526 345.51877 -982.40833 212.92944 -995.51117 243.74472 -1000.871 187.37988 -1001.5757 482.01273 -1005.1971 242.37157 -1005.4194 169.33017 -1005.9728 190.2886 -1008.1917 173.51363 -1023.7124 251.36534 -1034.2739 209.84033 -1035.2262 339.11539 -1051.1737 421.69067 -1055.4186 243.60948 -1058.0627 165.94197 -1059.2107 175.67242 -1065.2375 173.73747 -1066.4706 180.59177 -1067.1089 253.96936 -1073.5256 201.15208 -1078.9767 295.0538 -1087.5176 287.30347 -1089.9395 177.03241 -1093.0477 254.74463 -1095.6132 209.59386 -1097.2397 272.29083 -1100.4563 251.18529 -1100.8651 330.6673 -1102.6139 302.6488 -1104.4725 179.41693 -1107.7421 167.47496 -1111.3701 356.03922 -1117.8932 195.24806 -1120.0155 200.99008 -1131.2397 459.98038 -1133.1836 187.09966 -1144.1337 179.21745 -1144.8912 166.86362 -1146.4313 182.70116 -1152.4957 174.09392 -1154.4563 184.21906 -1158.6703 191.90463 -1173.9805 212.04723 -1187.6783 192.45328 -1203.3551 376.26874 -1207.5541 216.51579 -1210.2476 239.18745 -1222.5371 317.05121 -1224.329 212.94589 -1230.3218 243.95949 -1230.7021 235.9346 -1230.9774 205.97943 -1232.0901 175.45158 -1234.3154 246.09535 -1242.6487 213.30122 -1245.2891 167.67889 -1246.6112 296.36447 -1246.8489 165.36336 -1249.2544 257.25302 -1249.7269 252.42754 -1250.297 181.4613 -1256.1744 264.36581 -1257.6561 192.24055 -1263.3865 349.38989 -1266.6841 198.93503 -1272.1666 436.90588 -1279.0291 355.44919 -1280.0428 294.38757 -1282.9529 197.61159 -1283.1782 261.05853 -1285.3624 194.9043 -1287.4747 207.39618 -1288.2126 262.41849 -1293.5374 456.07422 -1297.8639 259.59766 -1298.4127 378.54849 -1300.0078 183.026 -1301.1661 366.72983 -1301.7955 390.96204 -1306.725 305.8782 -1308.7346 293.91995 -1310.1406 226.76746 -1313.5975 201.18071 -1315.0356 179.12982 -1317.0999 167.15182 -1323.757 246.89139 -1328.3524 201.75902 -1329.6377 178.95335 -1331.097 259.60825 -1339.1877 209.96774 -1339.8862 391.49933 -1352.8844 282.72635 -1353.4857 302.53091 -1361.0591 167.47467 -1367.2881 215.56732 -1369.9794 479.03171 -1374.2728 186.38725 -1374.6228 203.15007 -1376.5465 269.03104 -1378.1971 303.38571 -1378.6674 309.6329 -1383.8401 249.96904 -1386.7018 329.02545 -1389.7988 223.20164 -1392.5649 266.31323 -1394.4916 168.69972 -1402.9094 346.85358 -1407.6384 168.02202 -1408.1892 248.88654 -1412.1652 534.02313 -1412.9366 186.66478 -1414.1543 237.49155 -1414.7476 286.78561 -1415.4917 283.8519 -1415.986 265.60532 -1418.0791 257.47528 -1418.9606 311.64532 -1421.5345 173.20474 -1422.6644 228.3378 -1429.8986 254.16254 -1430.5653 324.57162 -1434.7303 945.35187 -1443.973 207.40294 -1444.5294 173.8717 -1445.2034 352.88873 -1446.4346 175.94586 -1447.0972 203.65936 -1450.8799 426.97452 -1452.2357 169.72894 -1457.2065 269.53955 -1457.5016 309.15829 -1460.7512 275.40204 -1461.9843 379.06802 -1462.3738 230.65144 -1463.4701 233.60315 -1464.495 241.81337 -1465.0159 910.92188 -1466.2635 258.59406 -1468.1152 461.99023 -1469.6552 338.80624 -1472.6813 319.78635 -1473.0662 461.98611 -1473.881 421.83212 -1474.6912 174.8833 -1475.8303 369.28568 -1477.6281 353.07904 -1479.0754 281.35165 -1480.0089 215.74805 -1482.0298 249.40356 -1482.754 195.04219 -1484.1271 227.46815 -1484.5465 458.45782 -1486.2379 280.35574 -1492.8666 178.82396 -1496.4998 190.57529 -1500.5552 186.46606 -1501.0994 200.33585 -1502.3722 321.88712 -1503.5286 217.8045 -1505.7637 1530.2886 -1507.5795 1087.2933 -1508.3109 419.96414 -1513.5953 270.44299 -1518.7095 179.3593 -1519.394 505.62604 -1521.4536 325.7908 -1521.8843 295.79034 -1522.3198 669.05475 -1523.0497 248.09787 -1524.9467 273.95889 -1525.6979 178.79283 -1526.0576 219.61934 -1526.5446 424.95697 -1529.3038 240.86546 -1544.5505 177.62703 -1553.0576 273.03116 -1558.3284 166.83907 -1565.2611 199.20024 -END IONS -BEGIN IONS -PEPMASS=1754.8656 -CHARGE=1+ -TITLE=Label: L22, Spot_Id: 680102, Peak_List_Id: 1021040, MSMS Job_Run_Id: 33165, Comment: -70.06266 432.67404 -80.100578 99.382042 -83.958389 91.977867 -86.132088 90.90522 -110.02361 195.30003 -123.04635 156.41417 -127.10858 92.355125 -129.08684 178.07542 -143.03943 89.798386 -147.08803 127.01817 -152.01437 90.142403 -165.59651 95.066879 -181.02989 195.54454 -185.06723 90.616844 -195.84874 100.1681 -231.63194 100.70276 -237.09988 152.45769 -246.07628 151.342 -248.77797 93.170944 -251.1048 175.58173 -271.0051 121.7023 -272.07559 160.51852 -286.21225 96.886482 -292.2662 94.851097 -294.07404 99.433022 -308.15033 117.47633 -352.12701 90.956673 -360.19016 157.89563 -363.90427 101.09383 -366.15283 98.41571 -366.95053 109.90588 -377.15146 106.62427 -379.18652 211.04138 -383.20602 322.31689 -383.33163 112.16309 -384.00214 91.804825 -387.10352 119.43024 -392.12704 148.74786 -402.20459 94.832993 -408.06903 132.52615 -437.21069 127.36543 -447.04117 102.64162 -450.05087 127.21156 -457.24878 135.93759 -458.93884 104.93478 -460.21304 101.87561 -467.27075 93.154114 -479.25742 156.8168 -487.41815 106.99084 -504.29785 93.377373 -510.31314 184.09016 -512.1925 608.58942 -512.97467 174.89868 -514.22253 141.06525 -582.19073 91.460838 -585.9967 155.09328 -592.52155 136.8111 -597.13605 189.97173 -598.32635 199.42664 -598.52496 102.94541 -605.27539 233.92191 -610.35699 107.4617 -623.56598 109.03123 -625.58789 131.64995 -627.185 515.90912 -637.29938 198.12967 -646.94031 90.248199 -666.65881 100.05718 -666.87311 143.84747 -675.38373 94.048187 -693.38733 171.8524 -694.72522 124.15469 -698.5368 91.864182 -701.59729 109.79927 -707.39972 163.32175 -725.2301 182.52841 -731.52557 118.88165 -740.18787 97.153381 -744.15228 109.93806 -744.60022 112.33158 -747.67493 149.98933 -748.23389 223.76355 -754.46405 136.99707 -756.19574 102.82285 -764.21088 112.50684 -764.47424 97.072777 -765.63104 95.982033 -766.31927 246.38899 -769.70953 119.64305 -771.33997 95.139 -771.60406 102.33592 -774.89954 151.17024 -781.90576 97.510124 -784.45367 99.325645 -796.21667 218.61729 -798.92352 113.11941 -800.07861 108.06298 -804.28937 111.89616 -807.2287 97.968666 -828.46875 160.22867 -841.62958 170.17801 -845.4278 102.03172 -851.48724 98.310699 -853.21283 112.0753 -856.39056 205.14934 -857.73523 140.22328 -860.0907 106.3023 -868.95197 138.22377 -871.40393 7169.0166 -880.42316 151.09085 -881.87341 93.465828 -884.48291 126.40833 -888.28949 234.1662 -903.15814 99.216438 -904.0033 154.97755 -919.19104 176.59619 -923.81403 105.43839 -925.45013 137.29776 -930.31854 102.64803 -936.39246 258.16574 -938.40912 92.911034 -940.49939 136.31798 -963.72815 115.55652 -976.13257 232.64726 -979.5733 127.15013 -983.19238 122.38283 -988.30896 123.78989 -990.77618 140.13576 -996.8349 119.77805 -1000.2931 282.81931 -1002.649 206.90085 -1005.455 328.09937 -1008.0449 100.81747 -1009.2673 99.242622 -1011.9795 221.89595 -1022.1857 146.30182 -1022.4553 332.483 -1044.9656 160.61789 -1051.281 180.38371 -1056.2633 108.66093 -1056.6807 108.34162 -1060.3403 153.65468 -1062.597 91.870956 -1067.6049 243.58252 -1068.9771 136.93918 -1105.1637 172.00743 -1110.3412 93.636635 -1113.3022 146.5387 -1115.4736 156.94966 -1119.9933 110.12893 -1121.348 110.35266 -1126.3029 94.893402 -1127.9221 199.63045 -1128.4867 140.1178 -1129.7612 209.94547 -1134.3071 230.96623 -1141.6117 167.98439 -1142.2386 104.08218 -1146.1478 105.3013 -1152.6497 98.42971 -1157.3856 177.86057 -1162.1871 101.21054 -1170.39 108.88728 -1176.8459 97.425964 -1179.5961 93.752365 -1181.2496 156.09369 -1183.9325 125.92572 -1185.7197 104.67274 -1188.1309 109.63126 -1191.0612 142.60536 -1194.9186 126.03605 -1197.1552 95.334831 -1197.5647 129.45432 -1202.6522 141.71906 -1212.7831 100.43423 -1213.1212 171.15286 -1213.3002 164.98569 -1217.1578 132.77464 -1219.293 104.18087 -1225.8677 192.216 -1229.042 193.86743 -1236.1682 90.648575 -1244.3048 89.776024 -1245.686 151.21106 -1253.8206 93.567001 -1258.0558 144.90514 -1268.4976 93.120033 -1271.6893 204.14394 -1275.327 135.38994 -1275.6636 117.12797 -1278.2457 167.01204 -1280.4558 206.4427 -1283.587 122.09007 -1291.0977 173.29163 -1291.4972 119.44794 -1300.7247 96.080452 -1306.8698 104.26665 -1308.0787 254.2536 -1316.8838 205.89819 -1318.8757 95.770592 -1330.7668 124.13714 -1334.4824 108.86661 -1343.0133 142.12383 -1343.3362 177.32494 -1347.7032 104.23023 -1351.2186 156.66226 -1354.2438 135.34253 -1359.0874 157.28503 -1361.3474 123.51346 -1363.1963 137.39005 -1368.4244 126.82423 -1369.0981 254.03882 -1376.775 269.58478 -1377.9551 212.09152 -1379.6097 255.78773 -1381.1879 174.31845 -1387.8217 215.39099 -1388.7728 112.01137 -1391.0282 211.67516 -1394.7725 153.89165 -1397.7572 185.99841 -1405.308 194.45746 -1405.9557 167.01335 -1410.63 91.48468 -1414.9069 219.9893 -1421.1659 120.52929 -1429.8748 166.76566 -1445.5155 114.67178 -1445.9539 99.186768 -1446.3536 116.88525 -1466.3888 166.56123 -1473.7308 95.786362 -1481.2391 112.57141 -1491.0269 125.82017 -1498.2605 202.72249 -1500.5905 139.93802 -1501.0968 123.79572 -1503.7977 107.48371 -1505.6777 222.78757 -1508.9938 163.77133 -1511.3524 179.65501 -1512.7504 350.31213 -1517.2222 95.529427 -1518.5309 98.119926 -1520.7522 149.25743 -1527.2799 203.44241 -1535.5488 121.9062 -1539.1705 205.34744 -1540.3489 217.11108 -1540.9139 259.65878 -1545.1788 245.5952 -1545.5354 164.83479 -1546.0447 183.29626 -1550.1526 93.713264 -1551.9813 316.49777 -1553.1285 227.59082 -1553.5551 140.14992 -1554.7299 217.45366 -1555.5313 531.23108 -1556.1635 223.35658 -1556.7793 485.32156 -1558.0875 375.90649 -1559.6526 150.91623 -1560.8594 239.6226 -1561.604 104.81944 -1563.8091 246.54253 -1566.84 249.11386 -1568.3547 123.84643 -1568.9692 198.32433 -1569.8286 150.26045 -1571.442 263.61121 -1571.9067 171.17645 -1575.9482 221.63522 -1576.7808 123.1974 -1580.4116 106.94012 -1581.1783 148.76912 -1581.8721 195.2753 -1582.6274 361.52725 -1583.2628 109.21659 -1584.4281 256.31641 -1589.3861 106.4445 -1592.8107 211.03819 -1593.2421 172.27261 -1596.8894 439.39795 -1597.6902 145.25867 -1604.8441 95.422035 -1608.2051 91.030037 -1611.042 97.681046 -1614.5249 90.555527 -1617.1333 102.15717 -1625.4601 105.3119 -1625.8313 199.86292 -1632.3328 100.62115 -1637.3815 105.15272 -1641.4141 156.16737 -1644.6125 111.83329 -1654.8284 100.79004 -1659.5751 101.47638 -1660.3585 103.39894 -1718.9561 91.167625 -END IONS