Fingerprints.h

Go to the documentation of this file.
00001 //
00002 //  Copyright (C) 2003-2008 Greg Landrum and Rational Discovery LLC
00003 //
00004 //   @@ All Rights Reserved  @@
00005 //
00006 #ifndef _RD_FINGERPRINTS_H_
00007 #define _RD_FINGERPRINTS_H_
00008 
00009 class ExplicitBitVect;
00010 namespace RDKit{
00011   class ROMol;
00012   //! \brief Generates a topological (Daylight like) fingerprint for a molecule
00013   /*!
00014 
00015     \param mol:          the molecule to be fingerprinted
00016     \param minPath:      the minimum path length (in bonds) to be included
00017     \param maxPath:      the minimum path length (in bonds) to be included
00018     \param fpSize:       the size of the fingerprint
00019     \param nBitsPerHash: the number of bits to be set by each path
00020     \param useHs:        toggles inclusion of Hs in distinguishing paths from
00021                          each other.
00022     \param tgtDensity:   if the generated fingerprint is below this density, it will
00023                          be folded until the density is reached.
00024     \param minSize:      the minimum size to which the fingerprint will be
00025                          folded
00026 
00027     \return the molecular fingerprint, as an ExplicitBitVect
00028 
00029     <b>Notes:</b>
00030       - the caller is responsible for <tt>delete</tt>ing the result
00031     
00032   */
00033   ExplicitBitVect *DaylightFingerprintMol(const ROMol &mol,
00034                                           unsigned int minPath=1,unsigned int maxPath=7,
00035                                           unsigned int fpSize=2048,unsigned int nBitsPerHash=4,
00036                                           bool useHs=true,
00037                                           double tgtDensity=0.0,unsigned int minSize=128);
00038 
00039   //! \brief Generates a topological (Daylight like) fingerprint for a molecule
00040   //!        using an alternate (faster) hashing algorithm  
00041   /*!
00042 
00043     \param mol:          the molecule to be fingerprinted
00044     \param minPath:      the minimum path length (in bonds) to be included
00045     \param maxPath:      the minimum path length (in bonds) to be included
00046     \param fpSize:       the size of the fingerprint
00047     \param nBitsPerHash: the number of bits to be set by each path
00048     \param useHs:        toggles inclusion of Hs in distinguishing paths from
00049                          each other.
00050     \param tgtDensity:   if the generated fingerprint is below this density, it will
00051                          be folded until the density is reached.
00052     \param minSize:      the minimum size to which the fingerprint will be
00053                          folded
00054 
00055     \return the molecular fingerprint, as an ExplicitBitVect
00056 
00057     <b>Notes:</b>
00058       - the caller is responsible for <tt>delete</tt>ing the result
00059     
00060   */
00061   ExplicitBitVect *RDKFingerprintMol(const ROMol &mol,
00062                                     unsigned int minPath=1,unsigned int maxPath=7,
00063                                     unsigned int fpSize=2048,unsigned int nBitsPerHash=4,
00064                                     bool useHs=true,
00065                                     double tgtDensity=0.0,unsigned int minSize=128);
00066 
00067 }
00068 
00069 #endif

Generated on Tue Oct 7 06:10:10 2008 for RDCode by  doxygen 1.5.5