Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.xmlcml.noncml
Class MDLMolImpl  view MDLMolImpl download MDLMolImpl.java

java.lang.Object
  extended byPMRDocumentImpl
      extended byorg.xmlcml.cmlimpl.CMLDocumentImpl
          extended byorg.xmlcml.noncml.NonCMLDocumentImpl
              extended byorg.xmlcml.noncml.MDLMolImpl
All Implemented Interfaces:
org.xmlcml.cml.CMLDocument, org.w3c.dom.Document, org.xmlcml.cml.mvc.HasController, MDLMol, org.w3c.dom.Node, NonCMLDocument

public class MDLMolImpl
extends NonCMLDocumentImpl
implements MDLMol

class to read (? and write?) mdl-molfiles as described in chemical MIME.

NOTE: I have not been able to find any public statement of the format and am unable to guarantee the correctness of any code which interprets Mol files.


Field Summary
(package private)  org.xmlcml.cml.CMLAtom[] atomArray
           
(package private)  org.xmlcml.cml.CMLBond[] bond
           
(package private)  int[][] bondend
           
(package private)  int chirflag
           
static java.lang.String D2
           
protected  java.lang.String d2d3
           
static java.lang.String D3
           
static java.lang.String DUNK
           
(package private)  int natomlists
           
(package private)  int nprops
           
(package private)  boolean parsed
           
(package private)  java.util.Hashtable serialTable
           
(package private)  double[] x
           
(package private)  double[] y
           
(package private)  double[] z
           
 
Fields inherited from class org.xmlcml.noncml.NonCMLDocumentImpl
ATOM_FACTORY, atomParent, atomVector, BOND_FACTORY, bondParent, bondVector, bReader, convention, currentLine, DOCUMENT_FACTORY, inputCML, inputCMLMolecule, inputDescription2TypeTable, localDictionary, markLine, MOLECULE_FACTORY, natoms, nbonds, nextLine, nLine, nonCmlDoc, outputCML, outputCMLMolecule, outputDescription2TypeTable, parseFile, selector, SPACE40, SPACE80
 
Fields inherited from class org.xmlcml.cmlimpl.CMLDocumentImpl
CML_DICTIONARY, controller, moleculeVector
 
Fields inherited from interface org.xmlcml.noncml.NonCMLDocument
CASTEP, CIF, CML, CMLARRAY, FORMAT, G94, GAMESS, INPUT_DESCRIPTIONS, INPUT_SUFFIXES, INPUT_TYPES, JCAMP, JME, MDLMOL, MIF, MMCIF, MOL2, MOPAC, MOPACIn, OUTPUT_DESCRIPTIONS, OUTPUT_SUFFIXES, OUTPUT_TYPES, PDB, PDBConect, SDF, SMILES, SWISS, TEST, VAMP, XML, XYZ
 
Fields inherited from interface org.xmlcml.cml.CMLDocument
CML_DICTIONARY_FILENAME, CML_DICTIONARY_NAME, CML_DICTIONARY_NAMESPACE_URI, CML_DICTIONARY_PREFIX, PACKAGE_NAME
 
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
Constructor Summary
MDLMolImpl()
           
MDLMolImpl(java.io.BufferedReader bReader, java.lang.String id)
          form a MDLMol object from a local file
MDLMolImpl(org.xmlcml.cml.CMLMolecule outputCMLMolecule)
          form a MDLMol object from a CML file
 
Method Summary
static java.lang.String cmlBondOrder(int molNumber)
          translates MDL bond orders into JUMBO-MOL orders
static java.lang.String cmlStereoBond(int molNumber)
          translates MDL numbers into JUMBO-MOL codes
private  void guess2d3d()
           
static void main(java.lang.String[] args)
           
static int molBondOrder(java.lang.String cmlCode)
          translates "CML"-MOL codes into MDL numbers
static int molBondStereo(java.lang.String cmlCode)
          translates JUMBO-MOL codes into MDL numbers
 java.lang.String output(java.io.Writer writer)
          outputs CMLMolecule as an MDLMofile if possible.
 void parse(java.io.BufferedReader bReader)
          input from a Reader.
(package private)  int parseInteger(java.lang.String s, int start, int end)
           
(package private)  ABVal[] readABVals(java.lang.String line)
           
(package private)  void readAtoms()
           
(package private)  void readBonds()
           
(package private)  void readFooter()
           
(package private)  void readHeader()
           
 java.lang.String writeAtoms(java.io.Writer writer)
           
 java.lang.String writeBonds(java.io.Writer writer)
           
 java.lang.String writeFooter(java.io.Writer writer)
           
 java.lang.String writeHeader(java.io.Writer writer)
           
 
Methods inherited from class org.xmlcml.noncml.NonCMLDocumentImpl
addDataItem, convertFile, convertList, createAndAddCMLElement, createAndAddMoleculeElement, createCMLDocument, createCMLDocument, createCMLDocument, createCMLElement, createMoleculeElement, getAndCheckVectors, getCurrentLine, getDictionary, getInputDescriptions, getInputSuffixes, getInputTypes, getMoleculeVector, getOutputDescriptions, getOutputSuffixes, getOutputTypes, getSelector, getSuffixFromType, getTypeFromFile, getTypesFromFile, makeDataItem, makeFileStem, outform, parse, peekLine, processLinks, readFortranReal, readNextLine, resetMark, setMark, setOutputCML, setOutputCMLMolecule, setParseFile, setSelector
 
Methods inherited from class org.xmlcml.cmlimpl.CMLDocumentImpl
addTracer, arrayify, createCMLDocument, deArrayify, debug, debug, dereferenceDescendantLinks, dereferenceLinks, getController, getDictionaryFileName, getDictionaryName, getDictionaryNamespaceURI, getDictionaryPrefix, getMolecule, getMoleculeFactory, getMoleculeList, getMoleculeVector, hasLinkElements, isTrace, readXMLTest, removeTracer, setController, setMoleculeFactory, setTrace, test1, trace
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.xmlcml.noncml.NonCMLDocument
createAndAddMoleculeElement, createMoleculeElement, setOutputCML, setOutputCMLMolecule
 
Methods inherited from interface org.xmlcml.cml.CMLDocument
arrayify, deArrayify, debug, debug, dereferenceLinks, getMolecule, getMoleculeFactory, getMoleculeList, getMoleculeVector, hasLinkElements, parse, readXMLTest, setMoleculeFactory
 
Methods inherited from interface org.w3c.dom.Document
adoptNode, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, getDoctype, getDocumentElement, getDocumentURI, getDomConfig, getElementById, getElementsByTagName, getElementsByTagNameNS, getImplementation, getInputEncoding, getStrictErrorChecking, getXmlEncoding, getXmlStandalone, getXmlVersion, importNode, normalizeDocument, renameNode, setDocumentURI, setStrictErrorChecking, setXmlStandalone, setXmlVersion
 
Methods inherited from interface org.w3c.dom.Node
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
 

Field Detail

D2

public static final java.lang.String D2
See Also:
Constant Field Values

D3

public static final java.lang.String D3
See Also:
Constant Field Values

DUNK

public static final java.lang.String DUNK
See Also:
Constant Field Values

natomlists

int natomlists

chirflag

int chirflag

nprops

int nprops

d2d3

protected java.lang.String d2d3

parsed

boolean parsed

x

double[] x

y

double[] y

z

double[] z

bond

org.xmlcml.cml.CMLBond[] bond

bondend

int[][] bondend

serialTable

java.util.Hashtable serialTable

atomArray

org.xmlcml.cml.CMLAtom[] atomArray
Constructor Detail

MDLMolImpl

public MDLMolImpl()

MDLMolImpl

public MDLMolImpl(java.io.BufferedReader bReader,
                  java.lang.String id)
           throws java.io.IOException,
                  org.xmlcml.cml.CMLException
form a MDLMol object from a local file


MDLMolImpl

public MDLMolImpl(org.xmlcml.cml.CMLMolecule outputCMLMolecule)
form a MDLMol object from a CML file

Method Detail

parse

public void parse(java.io.BufferedReader bReader)
           throws java.io.IOException,
                  org.xmlcml.cml.CMLException
Description copied from interface: NonCMLDocument
input from a Reader. If the String value is to be input, use a StringReader. This could be used after a default constructor either immediately or with some additional customisation and may be used in the class constructors. Note that parse(URL) is inherited from CMLDocument

Specified by:
parse in interface NonCMLDocument
Specified by:
parse in class NonCMLDocumentImpl

readHeader

void readHeader()
          throws java.io.IOException,
                 org.xmlcml.cml.CMLException

parseInteger

int parseInteger(java.lang.String s,
                 int start,
                 int end)
           throws org.xmlcml.cml.CMLException

guess2d3d

private void guess2d3d()

readAtoms

void readAtoms()
         throws java.io.IOException,
                org.xmlcml.cml.CMLException

readBonds

void readBonds()
         throws java.io.IOException,
                org.xmlcml.cml.CMLException

readFooter

void readFooter()
          throws java.io.IOException,
                 org.xmlcml.cml.CMLException

readABVals

ABVal[] readABVals(java.lang.String line)
             throws org.xmlcml.cml.CMLException

molBondOrder

public static int molBondOrder(java.lang.String cmlCode)
translates "CML"-MOL codes into MDL numbers


cmlBondOrder

public static java.lang.String cmlBondOrder(int molNumber)
translates MDL bond orders into JUMBO-MOL orders


molBondStereo

public static int molBondStereo(java.lang.String cmlCode)
translates JUMBO-MOL codes into MDL numbers


cmlStereoBond

public static java.lang.String cmlStereoBond(int molNumber)
translates MDL numbers into JUMBO-MOL codes


output

public java.lang.String output(java.io.Writer writer)
                        throws org.xmlcml.cml.CMLException,
                               java.io.IOException
outputs CMLMolecule as an MDLMofile if possible. This is NOT a faithful representation as I haven't read the spec completely

Specified by:
output in interface NonCMLDocument
Specified by:
output in class NonCMLDocumentImpl

writeHeader

public java.lang.String writeHeader(java.io.Writer writer)
                             throws org.xmlcml.cml.CMLException,
                                    java.io.IOException

writeAtoms

public java.lang.String writeAtoms(java.io.Writer writer)
                            throws org.xmlcml.cml.CMLException,
                                   java.io.IOException

writeBonds

public java.lang.String writeBonds(java.io.Writer writer)
                            throws org.xmlcml.cml.CMLException,
                                   java.io.IOException

writeFooter

public java.lang.String writeFooter(java.io.Writer writer)
                             throws org.xmlcml.cml.CMLException,
                                    java.io.IOException

main

public static void main(java.lang.String[] args)