Interface Smolecule

  • All Superinterfaces:
    Incomplecule
    All Known Subinterfaces:
    WSmolecule

    @PublicAPI
    public interface Smolecule
    extends Incomplecule
    Array-based abstract molecule class.

    PLEASE DO NOT IMPLEMENT THIS INTERFACE! It may get more abstract methods in later versions.

    Since:
    Marvin 5.2.2, 04/24/2009
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int A_ALL
      Use all atom and bond property arrays.
      static int A_ASTEREO
      Use atom stereo properties arrays, equals A_PARITY|A_CHIRALITY.
      static int A_ATOMMAP
      Use atom type array.
      static int A_BOND
      Use arrays to store bonds.
      static int A_CHARGE
      Use charge array.
      static int A_CHIRALITY
      Chirality.
      static int A_EXPLH
      Use explicit Hydrogen count array.
      static int A_HYBRIDIZATION
      Use hybridization state array.
      static int A_IMPLH
      Use implicit Hydrogen count array.
      static int A_MASSNO
      Use mass number array.
      static int A_PARITY
      Atom parity.
      static int A_RADICAL
      Use radical array.
      static int A_RGROUP
      Use R-group ID array.
      static int A_VALENCE
      Use valence array.
      static int RGROUP_MAX
      Maximum R-group index (32767).
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean areNeighbors​(int atom1, int atom2)
      Tests whether two atoms are connected.
      chemaxon.struc.Gearch gearch()
      Gets graph search algorithms.
      int getArrayFlags()
      Gets info about the used arrays.
      int getAtom1​(int i)
      Gets the index of the first atom of the specified bond.
      int getAtom2​(int i)
      Gets the index of the second atom of the specified bond.
      int getAtomMap​(int atom)
      Gets the atom-atom mapping number.
      int getAtomStereo​(int atom)
      Gets atom stereo properties as an integer.
      int getAtomType​(int atom)
      Gets the type of an atom.
      int getBondFlags​(int i)
      Gets the bond descriptor flags.
      int getBondIndex​(int atom1, int atom2)
      Gets the index of the bond between the specified atoms.
      int getBondType​(int i)
      Gets the type of a bond.
      int getBondType​(int atom1, int atom2)
      Gets the type of a bond between the two specified atoms.
      int getCharge​(int atom)
      Gets the charge of an ion.
      int getChirality​(int atom)
      Gets the chirality of an atom.
      int getExplicitHcount​(int atom)
      Gets the number of explicit hydrogen atom neighbors of the given atom.
      int getHcount​(int atom)
      Gets the total number of hydrogens of an atom.
      int getHybridizationState​(int atom)
      Gets the hybridization state of an atom.
      int getImplicitHcount()
      Gets the total number of implicit Hydrogens.
      int getImplicitHcount​(int atom)
      Gets the number of implicit Hydrogens of an atom.
      int getMassno​(int atom)
      Gets the mass number of an atom.
      int getNeighbor​(int atom, int i)
      Gets the index of a neighbor of an atom.
      int getNeighborCount​(int atom)
      Gets the number of neighbors of an atom.
      int getParity​(int atom)
      Gets the parity of an atom.
      int getQPropAsInt​(int atom, String name)
      Gets a query property as an integer.
      int getRadical​(int atom)
      Gets the radical value of an atom.
      int getRgroupId​(int atom)
      Gets the R-group identifier of an atom.
      int getValence​(int atom)
      Gets the valence.
      boolean inAtomList​(int atom, int atno)
      Tests whether the specified element is in the atom list.
    • Method Detail

      • getArrayFlags

        int getArrayFlags()
        Gets info about the used arrays.
        Returns:
        the array info
      • getAtomType

        int getAtomType​(int atom)
        Gets the type of an atom.
        Parameters:
        atom - the atom index
        Returns:
        the atom type
      • getCharge

        int getCharge​(int atom)
        Gets the charge of an ion.
        Parameters:
        atom - the atom index
        Returns:
        the charge
        See Also:
        A_CHARGE
      • getRadical

        int getRadical​(int atom)
        Gets the radical value of an atom.
        Parameters:
        atom - the atom index
        Returns:
        the radical value
        See Also:
        A_RADICAL
      • getMassno

        int getMassno​(int atom)
        Gets the mass number of an atom. In the case of an element it returns 0, because it is a mix of isotopes having different mass numbers.
        Parameters:
        atom - the atom index
        Returns:
        the mass number, or zero if not specified
        See Also:
        A_MASSNO
      • getHybridizationState

        int getHybridizationState​(int atom)
        Gets the hybridization state of an atom.
        Parameters:
        atom - the atom index
        Returns:
        the hybridization state
        See Also:
        HybridizationStateConsts, A_HYBRIDIZATION
      • getQPropAsInt

        int getQPropAsInt​(int atom,
                          String name)
        Gets a query property as an integer.
        Parameters:
        atom - the atom index
        name - the property name
        Returns:
        the property's value
      • inAtomList

        boolean inAtomList​(int atom,
                           int atno)
        Tests whether the specified element is in the atom list.
        Parameters:
        atom - the atom index
        atno - the atomic number of the element to check
        Returns:
        true if the atom list contains the element, false otherwise
      • getImplicitHcount

        int getImplicitHcount​(int atom)
        Gets the number of implicit Hydrogens of an atom.
        Parameters:
        atom - the atom index
        Returns:
        the number of Hydrogens
        See Also:
        A_IMPLH
      • getImplicitHcount

        int getImplicitHcount()
        Gets the total number of implicit Hydrogens.
        Returns:
        the number of implicit Hydrogens
        See Also:
        A_IMPLH
      • getExplicitHcount

        int getExplicitHcount​(int atom)
        Gets the number of explicit hydrogen atom neighbors of the given atom.
        Parameters:
        atom - the atom index
        Returns:
        the number of Hydrogens
        See Also:
        A_EXPLH
      • getHcount

        int getHcount​(int atom)
        Gets the total number of hydrogens of an atom. This method should return getImplicitHcount(atom)|getExplicitHcount(atom)
        Parameters:
        atom - the atom index
        Returns:
        sum of the number of implicit and explicit Hydrogens
      • getValence

        int getValence​(int atom)
        Gets the valence. If valence is set as a property, returns that. Otherwise the valence is the sum of bond orders plus the number of implicit hydrogens or query hydrogen atoms.
        Parameters:
        atom - the atom index
        Returns:
        the valence
        See Also:
        A_VALENCE
      • getAtomMap

        int getAtomMap​(int atom)
        Gets the atom-atom mapping number.
        Parameters:
        atom - the atom index
        Returns:
        the map value (positive integer) or 0
        See Also:
        A_ATOMMAP
      • getRgroupId

        int getRgroupId​(int atom)
        Gets the R-group identifier of an atom.
        Parameters:
        atom - the atom index
        Returns:
        the R-group identifier (between 0 and RGROUP_MAX) or 0 for normal atoms
        See Also:
        A_RGROUP
      • getNeighborCount

        int getNeighborCount​(int atom)
        Gets the number of neighbors of an atom.
        Parameters:
        atom - the atom index
        Returns:
        the number of neighbors
        See Also:
        A_BOND
      • getNeighbor

        int getNeighbor​(int atom,
                        int i)
        Gets the index of a neighbor of an atom.
        Parameters:
        atom - the atom index
        i - the neighbor index
        Returns:
        the atom index of the i-th neighbor of atom k
        See Also:
        A_BOND
      • areNeighbors

        boolean areNeighbors​(int atom1,
                             int atom2)
        Tests whether two atoms are connected.
        Parameters:
        atom1 - first atom index
        atom2 - second atom index
        Returns:
        true if they are connected, false otherwise
        See Also:
        A_BOND
      • getAtom1

        int getAtom1​(int i)
        Gets the index of the first atom of the specified bond.
        Parameters:
        i - the bond index
        Returns:
        an atom index
        See Also:
        A_BOND
      • getAtom2

        int getAtom2​(int i)
        Gets the index of the second atom of the specified bond.
        Parameters:
        i - the bond index
        Returns:
        an atom index
        See Also:
        A_BOND
      • gearch

        chemaxon.struc.Gearch gearch()
        Gets graph search algorithms.
        Returns:
        graph searches
      • getBondIndex

        int getBondIndex​(int atom1,
                         int atom2)
        Gets the index of the bond between the specified atoms.
        Parameters:
        atom1 - first atom index
        atom2 - second atom index
        Returns:
        the bond index or -1
        See Also:
        A_BOND
      • getBondFlags

        int getBondFlags​(int i)
        Gets the bond descriptor flags.
        Parameters:
        i - the bond index
        Returns:
        getBondType(i) | stereo1 | stereo2 | topology | reacting_center
        See Also:
        A_BOND