001/*
002 *                    BioJava development code
003 *
004 * This code may be freely distributed and modified under the
005 * terms of the GNU Lesser General Public Licence.  This should
006 * be distributed with the code.  If you do not have a copy,
007 * see:
008 *
009 *      http://www.gnu.org/copyleft/lesser.html
010 *
011 * Copyright for this code is held jointly by the individual
012 * authors.  These should be listed in @author doc comments.
013 *
014 * For more information on the BioJava project and its aims,
015 * or to join the biojava-l mailing list, visit the home page
016 * at:
017 *
018 *      http://www.biojava.org/
019 *
020 */
021
022/*
023 * Created on December 20, 2000, 7:15 PM
024 */
025
026package org.biojava.bio.symbol;
027
028/**
029 * class for maintaining properties associated with a symbol
030 * @author Mike Jones
031 * @author George Waldon
032 */
033public interface SymbolPropertyTable {
034  
035  //amino acid mass properties
036  public static String AVG_MASS = "avgMass";
037
038  public static String MONO_MASS = "monoMass";
039
040  //amino acid pK properties
041  public static String PK_Nterm = "pK_Nterm";
042  
043  public static String PK = "pK";
044  
045  public static String PK_Cterm = "pK_Cterm";
046
047  //amino acid Hydropathicity properties
048  public static String HYDROPATHICITY = "hydropathicity";
049  
050  // the name of the property e.g. "isotopic mass"
051  public String getName();
052
053  // the alphabet that this property is defined for e.g. PROTEIN
054  public Alphabet getAlphabet();
055
056  // the value of the property for a given symbol
057  public double getDoubleValue(Symbol s) throws IllegalSymbolException;
058
059 // public void setDoubleProperty(Symbol s, String value) throws IllegalSymbolException;
060
061  // the value of the property for a given symbol
062 // public void setDoubleProperty(Symbol s, String value) throws IllegalSymbolException;
063
064}