Class MDLV3000Reader

All Implemented Interfaces:
Closeable, AutoCloseable, IChemObjectIO, IChemObjectReader, ISimpleChemObjectReader

public class MDLV3000Reader extends DefaultChemObjectReader
Class that implements the MDL mol V3000 format. This reader reads the element symbol and 2D or 3D coordinates from the ATOM block.

This reader is capable of reading query bonds, i.e., bond types
  • 4 aromatic
  • 5 single or double
  • 6 single or aromatic
  • 7 double or aromatic
  • 8 any
Limitations:
Atoms: The only properties read in the atom block are atom index, atom type, atom coordinates, atom-atom mapping, atom charge (CHG), atom radical (RAD}, stereo configuration (CFG), atomic weight (MASS), and valence (VAL).
Bonds: The reader throws a CDKException if bond types 9 (coordination) or 10 (hydrogen) are encountered.
Author:
Egon Willighagen <egonw@users.sf.net>
IO options:
NameQuestionDefault
AddStereo0dAllow stereo created from parity value when no coordinatestrue
AddStereoElementsDetect and create IStereoElements for the input.true
InterpretHydrogenIsotopesShould D and T be interpreted as hydrogen isotopes?true
ForceReadAs3DCoordinatesShould coordinates always be read as 3D?false
Keywords:
MDL molfile V3000
Created on:
2006
Requires:
java1.4+
  • Field Details

  • Constructor Details

  • Method Details

    • getFormat

      public IResourceFormat getFormat()
      Description copied from interface: IChemObjectIO
      Returns the IResourceFormat class for this IO class.
    • setReader

      public void setReader(Reader input) throws CDKException
      Description copied from interface: IChemObjectReader
      Sets the Reader from which this ChemObjectReader should read the contents.
      Throws:
      CDKException
    • setReader

      public void setReader(InputStream input) throws CDKException
      Description copied from interface: IChemObjectReader
      Sets the InputStream from which this ChemObjectReader should read the contents.
      Throws:
      CDKException
    • accepts

      public boolean accepts(Class<? extends IChemObject> classObject)
      Description copied from interface: IChemObjectIO
      Returns whether the given IChemObject can be read or written.
      Parameters:
      classObject - IChemObject of which is tested if it can be handled.
      Returns:
      true, if the IChemObject can be handled.
    • read

      public <T extends IChemObject> T read(T object) throws CDKException
      Description copied from interface: ISimpleChemObjectReader
      Reads an IChemObject of type "object" from input. The constructor of the actual implementation may take a Reader as input to get a very flexible reader that can read from string, files, etc.
      Parameters:
      object - the type of object to return
      Returns:
      returns an object of that contains the content (or part) of the input content
      Throws:
      CDKException - it is thrown if the type of information is not available from the input
    • readMolecule

      public IAtomContainer readMolecule(IChemObjectBuilder builder) throws CDKException
      Reads a molecule and returns the corresponding AtomContainer.
      Parameters:
      builder - the builder object used to create the AtomContainer
      Returns:
      the AtomContainer representing the CTAB block
      Throws:
      CDKException - if there is an error while reading the CTAB block
    • readConnectionTable

      public IAtomContainer readConnectionTable(IChemObjectBuilder builder) throws CDKException
      Reads a Connection Table (CTAB) block and returns the corresponding AtomContainer.
      Parameters:
      builder - the builder object used to create the AtomContainer
      Returns:
      the AtomContainer representing the CTAB block
      Throws:
      CDKException - if there is an error while reading the CTAB block
    • isReady

      public boolean isReady() throws CDKException
      Throws:
      CDKException
    • close

      public void close() throws IOException
      Description copied from interface: IChemObjectIO
      Closes this IChemObjectIO's resources.
      Throws:
      IOException - when the wrapper IO class cannot be closed.