Lipinski.h

Go to the documentation of this file.
00001 //
00002 //  Copyright (C) 2007-2011 Greg Landrum
00003 //
00004 //   @@ All Rights Reserved @@
00005 //  This file is part of the RDKit.
00006 //  The contents are covered by the terms of the BSD license
00007 //  which is included in the file license.txt, found at the root
00008 //  of the RDKit source tree.
00009 //
00010 
00011 /*! \file Lipinski.h
00012 
00013   \brief Contains Lipinski and Lipinski-like descriptors. Use MolDescriptors.h in client code.
00014 
00015 */
00016 #ifndef __RD_LIPINSKI_H__
00017 #define __RD_LIPINSKI_H__
00018 namespace RDKit{
00019   class ROMol;
00020   namespace Descriptors {
00021 
00022     const std::string lipinskiHBAVersion="1.0.0";
00023     //! calculates the standard Lipinski HBA definition
00024     /*!  
00025       \param mol        the molecule of interest
00026 
00027       \return the number of Ns and Os in the molecule
00028 
00029     */
00030     unsigned int calcLipinskiHBA(const ROMol &mol);
00031 
00032     const std::string lipinskiHBDVersion="2.0.0";
00033     //! calculates the standard Lipinski HBA definition
00034     /*!  
00035       \param mol        the molecule of interest
00036 
00037       \return the number of N-H and O-H bonds in the molecule
00038 
00039     */
00040     unsigned int calcLipinskiHBD(const ROMol &mol);
00041 
00042     extern const std::string NumRotatableBondsVersion;
00043     unsigned int calcNumRotatableBonds(const ROMol &mol);
00044     extern const std::string NumHBDVersion;
00045     unsigned int calcNumHBD(const ROMol &mol);
00046     extern const std::string NumHBAVersion;
00047     unsigned int calcNumHBA(const ROMol &mol);
00048     extern const std::string NumHeteroatomsVersion;
00049     unsigned int calcNumHeteroatoms(const ROMol &mol);
00050     extern const std::string NumAmideBondsVersion;
00051     unsigned int calcNumAmideBonds(const ROMol &mol);
00052 
00053     extern const std::string NumRingsVersion;
00054     unsigned int calcNumRings(const ROMol &mol);
00055 
00056 
00057   } // end of namespace Descriptors
00058 } //end of namespace RDKit
00059 
00060 #endif