RDCode: atomic_data.h Source File

# atomic_data.h

Go to the documentation of this file.

    00001 //
    00002 //  Copyright (C) 2001-2008 Greg Landrum and Rational Discovery LLC
    00003 //
    00004 //   @@ All Rights Reserved  @@
    00005 //
    00006
    00007 /*! \file atomic_data.h
    00008
    00009   \brief No user-serviceable parts inside
    00010
    00011   This stuff is used by the PeriodicTable interface
    00012
    00013 */
    00014 #ifndef __RD_ATOMIC_DATA_H
    00015 #define __RD_ATOMIC_DATA_H
    00016
    00017 #include <RDGeneral/types.h>
    00018
    00019 namespace RDKit {
    00020   extern const std::string periodicTableAtomData;
    00021
    00022   class atomicData {
    00023   public :
    00024     atomicData(const std::string &dataLine);
    00025     ~atomicData() {};
    00026
    00027     int AtomicNum() const { return anum;};
    00028
    00029     int DefaultValence() const { return valence.front();};
    00030
    00031     int NumValence() const { return static_cast<int>(valence.size());};
    00032
    00033     const INT_VECT &ValenceList() const {
    00034       return valence;
    00035     };
    00036
    00037     double Mass() const { return mass;};
    00038
    00039     std::string Symbol() const {
    00040       return symb;
    00041     }
    00042
    00043     double Rcov() const { return rCov; }
    00044
    00045     double Rb0() const {return rB0;}
    00046
    00047     double Rvdw() const { return rVdw;}
    00048
    00049     int NumOuterShellElec() const { return nVal;}
    00050
    00051   private:
    00052     int anum; //atomic number
    00053     std::string symb; // atomic symbol
    00054     double rCov, rB0, rVdw; //radii
    00055     INT_VECT valence; //list of all valences, the first one is the default valence, -1 at the end signifies that any upper valence is tolerated
    00056     double mass;  // atomic mass
    00057     int nVal; // number of outer shell electrons
    00058   };
    00059
    00060 };
    00061 #endif