Class InChIJNA

All Implemented Interfaces:
InChIStructureProvider, JmolInChI

public class InChIJNA extends InchiJmol
Interface with inchi.c via JNA (see JNA-InChI github project). For InChI to SMILES, we use JNA-InChI to read InChI's input structure, via -InChI.
  • Constructor Details

    • InChIJNA

      public InChIJNA()
  • Method Details

    • getInchi

      public String getInchi(Viewer vwr, BS atoms, Object molData, String options)
      Parameters:
      vwr -
      atoms -
      molData - can be String or InputStream
      options -
      Returns:
      InChI or SMILES or InChIKey or internal InChI structure details
    • initializeModelForSmiles

      public void initializeModelForSmiles()
    • getNumAtoms

      public int getNumAtoms()
    • setAtom

      public InChIStructureProvider setAtom(int i)
    • getElementType

      public String getElementType()
    • getX

      public double getX()
    • getY

      public double getY()
    • getZ

      public double getZ()
    • getCharge

      public int getCharge()
    • getIsotopicMass

      public int getIsotopicMass()
      Description copied from interface: InChIStructureProvider
      from inchi_api.h #define ISOTOPIC_SHIFT_FLAG 10000 add to isotopic mass if isotopic_mass = (isotopic mass - average atomic mass) AT_NUM isotopic_mass; 0 => non-isotopic; isotopic mass or ISOTOPIC_SHIFT_FLAG + mass - (average atomic mass)
      Returns:
      inchi's value of average mass
    • getImplicitH

      public int getImplicitH()
    • getNumBonds

      public int getNumBonds()
    • setBond

      public InChIStructureProvider setBond(int i)
    • getIndexOriginAtom

      public int getIndexOriginAtom()
    • getIndexTargetAtom

      public int getIndexTargetAtom()
    • getInchiBondType

      public String getInchiBondType()
    • getNumStereo0D

      public int getNumStereo0D()
    • setStereo0D

      public InChIStructureProvider setStereo0D(int i)
    • getNeighbors

      public int[] getNeighbors()
    • getCenterAtom

      public int getCenterAtom()
    • getStereoType

      public String getStereoType()
    • getParity

      public String getParity()
    • getInternalInchiVersion

      public static String getInternalInchiVersion()
      Get the InChI version directly from the inchi code without an API. To be replaced in the future with a simple inchi IXA call? Future format may change.
      Returns:
      something like "InChI version 1, Software 1.07.2 (API Library)"