Class SRSearcher


  • public class SRSearcher
    extends java.lang.Object
    The SRSearcher class handles reaction-sub-structure searches. Correctly, the class should be named SuperReactionSearcher, because it is rather a search for super reactions for a given query reaction. The query reaction may also be called transformation and may contain atom or bond based query features.
    • Constructor Summary

      Constructors 
      Constructor Description
      SRSearcher()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean isQueryInReaction()
      Performs a reaction substructure search with the SSSearcher.cDefaultMatchMode
      boolean isQueryInReaction​(int matchMode)  
      void setQuery​(byte[] rxncode, byte[] rxnmapping, byte[] rxncoords, long[] reactantFFP, long[] productFFP)  
      void setQuery​(Reaction query)
      This defines the query reaction (or transformation).
      void setQuery​(Reaction query, long[] reactantFFP, long[] productFFP)
      This defines the query reaction (or transformation).
      void setReaction​(byte[] rxncode, byte[] rxnmapping, byte[] rxncoords, long[] reactantFFP, long[] productFFP)  
      void setReaction​(Reaction reaction)  
      void setReaction​(Reaction reaction, long[] reactantFFP, long[] productFFP)
      This defines the query reaction (or transformation).
      void stop()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SRSearcher

        public SRSearcher()
    • Method Detail

      • setQuery

        public void setQuery​(byte[] rxncode,
                             byte[] rxnmapping,
                             byte[] rxncoords,
                             long[] reactantFFP,
                             long[] productFFP)
      • setReaction

        public void setReaction​(byte[] rxncode,
                                byte[] rxnmapping,
                                byte[] rxncoords,
                                long[] reactantFFP,
                                long[] productFFP)
      • setQuery

        public void setQuery​(Reaction query,
                             long[] reactantFFP,
                             long[] productFFP)
        This defines the query reaction (or transformation). Typically, this method is called once, while setReaction() is called many times, if a reaction collection is searched for hits. For acceleration through ffp based pre-screening, you should use this method to supply query ffps. If the query reaction contains multiple reactants or multiple products, then setQuery() merges these into one reactant and one product molecule. If you call setQuery() with the same query reactions multiple times, then for a maximum of performance you should cache merged query reactions and pass these. Merging can be done by getMergedCopy() of the reaction class.
        Parameters:
        query -
        reactantFFP -
        productFFP -
      • setReaction

        public void setReaction​(Reaction reaction,
                                long[] reactantFFP,
                                long[] productFFP)
        This defines the query reaction (or transformation). Typically, this method is called once, while setReaction() is called many times, if a reaction collection is searched for hits. For acceleration through ffp based pre-screening, you should use this method to supply query ffps. If the query reaction contains multiple reactants or multiple products, these are merged into one molecule each. Thus, for a maximum of performance you may avoid this step by parsing a reaction that contains one reactant and one product only.
        Parameters:
        reaction -
        reactantFFP -
        productFFP -
      • setQuery

        public void setQuery​(Reaction query)
        This defines the query reaction (or transformation). Typically, this method is called once, while setReaction() is called many times, if a reaction collection is searched for hits. If the query reaction contains multiple reactants or multiple products, these are merged into one molecule each. Thus, for a maximum of performance you may avoid this step by parsing a reaction that contains one reactant and one product only.
        Parameters:
        query -
      • setReaction

        public void setReaction​(Reaction reaction)
      • stop

        public void stop()
      • isQueryInReaction

        public boolean isQueryInReaction()
        Performs a reaction substructure search with the SSSearcher.cDefaultMatchMode
        Returns:
      • isQueryInReaction

        public boolean isQueryInReaction​(int matchMode)
        Parameters:
        matchMode - cDefaultMatchMode or combination of cMatchAtomCharge, cMatchAtomMass, cMatchDBondToDelocalized, cMatchAromDBondToDelocalized
        Returns: