/* * Copyright (c) 2012 Diamond Light Source Ltd. * * 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 */ package uk.ac.diamond.scisoft.analysis.fitting; import java.util.HashMap; import java.util.Map; public class FittingConstants { public static final String PEAK_NUMBER = "org.dawb.workbench.plotting.tools.peakNumber"; public static final String PEAK_NUMBER_CHOICES = "org.dawb.workbench.plotting.tools.peakNumberChoices"; public static final String FIT_SMOOTH_FACTOR = "org.dawb.workbench.plotting.tools.fitSmoothFactor"; public static final String SHOW_FWHM_SELECTIONS = "org.dawb.workbench.plotting.tools.showFWHMSelection"; public static final String SHOW_PEAK_SELECTIONS = "org.dawb.workbench.plotting.tools.showPeakSelection"; public static final String SHOW_FITTING_TRACE = "org.dawb.workbench.plotting.tools.showFittingTrace"; public static final String SHOW_ANNOTATION_AT_PEAK = "org.dawb.workbench.plotting.tools.showAnnoationsAtPeak"; public static final String PEAK_TYPE = "org.dawb.workbench.plotting.tools.peakType"; public static final String SMOOTHING = "org.dawb.workbench.plotting.tools.smoothing"; public static final String QUALITY = "org.dawb.workbench.plotting.tools.quality"; public static final String POLY_ORDER = "org.dawb.workbench.plotting.tools.polyOrder"; public static final String POLY_CHOICES = "org.dawb.workbench.plotting.tools.polyChoices"; public static final String SHOW_POLY_TRACE = "org.dawb.workbench.plotting.tools.showPolyTrace"; public static final String SHOW_POLY_RANGE = "org.dawb.workbench.plotting.tools.showPolyRange"; public static final String INT_FORMAT = "org.dawb.workbench.plotting.tools.fitting.intFormat"; public static final String REAL_FORMAT = "org.dawb.workbench.plotting.tools.fitting.realFormat"; public static final String FIT_QUALITY = "org.dawb.workbench.plotting.tools.fitQuality"; public static final String FIT_ALGORITHM = "org.dawb.workbench.plotting.tools.fitAlgorithm"; public static final String ADD_PEAK_MODE = "org.dawb.workbench.plotting.tools.addingPeaks"; private static Map<Integer, FIT_ALGORITHMS> idMap = new HashMap<>(); /** * Function fitting algorithms available */ public enum FIT_ALGORITHMS { APACHENELDERMEAD(0, "Nelder Mead Fitting"), GENETIC(1, "Genetic Algorithm"), APACHECONJUGATEGRADIENT(2, "Conjugate Gradient"), APACHELEVENBERGMAQUARDT(3, "Levenberg Marquardt"); public final int ID; public final String NAME; private FIT_ALGORITHMS(int id, String name) { ID = id; NAME = name; idMap.put(id, this); } /** * Return the algorithm for the given id, or null if * no such id exists. */ public static FIT_ALGORITHMS fromId(int id) { return idMap.get(id); } } }