Package org.openscience.cdk.debug
Class DebugMolecularFormula
java.lang.Object
org.openscience.cdk.formula.MolecularFormula
org.openscience.cdk.debug.DebugMolecularFormula
- All Implemented Interfaces:
Cloneable,ICDKObject,IMolecularFormula
Debugging implementation of
IMolecularFormula.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionadd(IMolecularFormula formula) Adds an molecularFormula to this MolecularFormula.addIsotope(IIsotope isotope) Adds an Isotope to this MolecularFormula one time.addIsotope(IIsotope isotope, int count) Adds an Isotope to this MolecularFormula in a number of occurrences.booleanTrue, if the MolecularFormula contains the given IIsotope object and not the instance.Returns aIChemObjectBuilderfor the data classes that extend this class.Access the charge of this IMolecularFormula.intChecks a set of Nodes for the number of different isotopes in the IMolecularFormula.intgetIsotopeCount(IIsotope isotope) Checks a set of Nodes for the occurrence of the isotope in the IMolecularFormula from a particular isotope.Returns a Map with the IChemObject's properties.I should integrate into ChemObject.<T> TgetProperty(Object description) Returns a property for the IChemObject - the object is automatically cast to the required type.isotopes()Returns an Iterator for looping over all isotopes in this IMolecularFormula.voidRemoves all isotopes of this molecular formula.voidremoveIsotope(IIsotope isotope) Removes the given isotope from the MolecularFormula.voidremoveProperty(Object description) Removes a property for a IChemObject.voidSets the charge of this IMolecularFormula, since there is no atom associated with the charge the number of a given isotope is not modified.voidsetProperties(Map<Object, Object> properties) Sets the properties of this object.voidsetProperty(Object description, Object property) Sets a property for a IChemObject.Methods inherited from class org.openscience.cdk.formula.MolecularFormula
clone, getProperty, isTheSameMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.openscience.cdk.interfaces.IMolecularFormula
clone, getProperty
-
Constructor Details
-
DebugMolecularFormula
public DebugMolecularFormula()
-
-
Method Details
-
add
Adds an molecularFormula to this MolecularFormula.- Specified by:
addin interfaceIMolecularFormula- Overrides:
addin classMolecularFormula- Parameters:
formula- The molecularFormula to be added to this chemObject- Returns:
- The IMolecularFormula
-
addIsotope
Adds an Isotope to this MolecularFormula one time.- Specified by:
addIsotopein interfaceIMolecularFormula- Overrides:
addIsotopein classMolecularFormula- Parameters:
isotope- The isotope to be added to this MolecularFormula- Returns:
- the new molecular formula
- See Also:
-
addIsotope
Adds an Isotope to this MolecularFormula in a number of occurrences.- Specified by:
addIsotopein interfaceIMolecularFormula- Overrides:
addIsotopein classMolecularFormula- Parameters:
isotope- The isotope to be added to this MolecularFormulacount- The number of occurrences to add- Returns:
- the new molecular formula
- See Also:
-
contains
True, if the MolecularFormula contains the given IIsotope object and not the instance. The method looks for other isotopes which has the same symbol, natural abundance and exact mass.- Specified by:
containsin interfaceIMolecularFormula- Overrides:
containsin classMolecularFormula- Parameters:
isotope- The IIsotope this MolecularFormula is searched for- Returns:
- True, if the MolecularFormula contains the given isotope object
-
getCharge
Access the charge of this IMolecularFormula. If the charge has not been set the return value is null.- Specified by:
getChargein interfaceIMolecularFormula- Overrides:
getChargein classMolecularFormula- Returns:
- the charge of this IMolecularFormula
- See Also:
-
getIsotopeCount
Checks a set of Nodes for the occurrence of the isotope in the IMolecularFormula from a particular isotope. It returns 0 if the does not exist.- Specified by:
getIsotopeCountin interfaceIMolecularFormula- Overrides:
getIsotopeCountin classMolecularFormula- Parameters:
isotope- The IIsotope to look for- Returns:
- The occurrence of this isotope in this IMolecularFormula
- See Also:
-
getIsotopeCount
public int getIsotopeCount()Checks a set of Nodes for the number of different isotopes in the IMolecularFormula.- Specified by:
getIsotopeCountin interfaceIMolecularFormula- Overrides:
getIsotopeCountin classMolecularFormula- Returns:
- The the number of different isotopes in this IMolecularFormula
- See Also:
-
getProperties
Returns a Map with the IChemObject's properties.I should integrate into ChemObject.- Specified by:
getPropertiesin interfaceIMolecularFormula- Overrides:
getPropertiesin classMolecularFormula- Returns:
- The object's properties as an Hashtable
- See Also:
-
getProperty
Returns a property for the IChemObject - the object is automatically cast to the required type. This does however mean if the wrong type is provided then a runtime ClassCastException will be thrown.IAtom atom = new Atom("C"); atom.setProperty("number", 1); // set an integer property // access the property and automatically cast to an int Integer number = atom.getProperty("number"); // if the method is in a chain or needs to be nested the type // can be provided methodAcceptingInt(atom.getProperty("number", Integer.class)); // the type cannot be checked and so... String number = atom.getProperty("number"); // ClassCastException // if the type is provided a more meaningful error is thrown atom.getProperty("number", String.class); // IllegalArgumentException- Specified by:
getPropertyin interfaceIMolecularFormula- Overrides:
getPropertyin classMolecularFormula- Type Parameters:
T- generic return type- Parameters:
description- An object description of the property (most likely a unique string)- Returns:
- The object containing the property. Returns null if property is not set.
- See Also:
-
isotopes
Returns an Iterator for looping over all isotopes in this IMolecularFormula.- Specified by:
isotopesin interfaceIMolecularFormula- Overrides:
isotopesin classMolecularFormula- Returns:
- An Iterator with the isotopes in this IMolecularFormula
-
removeAllIsotopes
public void removeAllIsotopes()Removes all isotopes of this molecular formula.- Specified by:
removeAllIsotopesin interfaceIMolecularFormula- Overrides:
removeAllIsotopesin classMolecularFormula
-
removeIsotope
Removes the given isotope from the MolecularFormula.- Specified by:
removeIsotopein interfaceIMolecularFormula- Overrides:
removeIsotopein classMolecularFormula- Parameters:
isotope- The IIsotope to be removed
-
removeProperty
Removes a property for a IChemObject. I should integrate into ChemObject.- Specified by:
removePropertyin interfaceIMolecularFormula- Overrides:
removePropertyin classMolecularFormula- Parameters:
description- The object description of the property (most likely a unique string)- See Also:
-
setCharge
Sets the charge of this IMolecularFormula, since there is no atom associated with the charge the number of a given isotope is not modified.// Correct usage IMolecularFormula phenolate = MolecularFormulaManipulator.getMolecularFormula("C6H5O", builder) mf.setCharge(-1); // MF=C6H5O- // Wrong! the H6 is not automatically adjust IMolecularFormula phenolate = MolecularFormulaManipulator.getMolecularFormula("C6H6O", builder) mf.setCharge(-1); // MF=C6H6O- (wrong)If you wish to adjust the protonation of a formula try the convenience method of theMolecularFormulaManipulator:IMolecularFormula mf = MolecularFormulaManipulator.getMolecularFormula("[C6H5O]-", bldr); MolecularFormulaManipulator.adjustProtonation(mf, +1); MolecularFormulaManipulator.getString(mf); // "C6H6O"- Specified by:
setChargein interfaceIMolecularFormula- Overrides:
setChargein classMolecularFormula- Parameters:
charge- The partial charge- See Also:
-
setProperties
Sets the properties of this object.- Specified by:
setPropertiesin interfaceIMolecularFormula- Overrides:
setPropertiesin classMolecularFormula- Parameters:
properties- a Hashtable specifying the property values- See Also:
-
setProperty
Sets a property for a IChemObject. I should integrate into ChemObject.- Specified by:
setPropertyin interfaceIMolecularFormula- Overrides:
setPropertyin classMolecularFormula- Parameters:
description- An object description of the property (most likely a unique string)property- An object with the property itself- See Also:
-
getBuilder
Returns aIChemObjectBuilderfor the data classes that extend this class.- Specified by:
getBuilderin interfaceICDKObject- Overrides:
getBuilderin classMolecularFormula- Returns:
- The
IChemObjectBuildermatching thisICDKObject
-