Class CIFReader

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

    public class CIFReader
    extends DefaultChemObjectReader
    This is not a reader for the CIF and mmCIF crystallographic formats. It is able, however, to extract some content from such files. It's very ad hoc, not written using any dictionary. So please complain if something is not working. In addition, the things it does read are considered experimental.

    The CIF example on the IUCR website has been tested, as well as Crambin (1CRN) in the PDB database.

    Author:
    E.L. Willighagen
    Source code:
    main
    Belongs to CDK module:
    io
    Keywords:
    file format, CIF, file format, mmCIF
    Created on:
    2003-10-12
    • Constructor Detail

      • CIFReader

        public CIFReader​(Reader input)
        Create an CIF like file reader.
        Parameters:
        input - source of CIF data
      • CIFReader

        public CIFReader()
    • Method Detail

      • accepts

        public boolean accepts​(Class<? extends IChemObject> testClass)
        Description copied from interface: IChemObjectIO
        Returns whether the given IChemObject can be read or written.
        Parameters:
        testClass - 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
        Read a ChemFile from input.
        Parameters:
        object - the type of object to return
        Returns:
        the content in a ChemFile object
        Throws:
        CDKException - it is thrown if the type of information is not available from the input
      • 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.