1 // 2 // Copyright (c) 2016, Guillaume GODIN 3 // All rights reserved. 4 // 5 // Redistribution and use in source and binary forms, with or without 6 // modification, are permitted provided that the following conditions are 7 // met: 8 // 9 // * Redistributions of source code must retain the above copyright 10 // notice, this list of conditions and the following disclaimer. 11 // * Redistributions in binary form must reproduce the above 12 // copyright notice, this list of conditions and the following 13 // disclaimer in the documentation and/or other materials provided 14 // with the distribution. 15 // * Neither the name of Institue of Cancer Research. 16 // nor the names of its contributors may be used to endorse or promote 17 // products derived from this software without specific prior written 18 // permission. 19 // 20 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 23 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 24 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 25 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 26 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 30 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 // 32 // 33 #include <RDGeneral/export.h> 34 #ifndef MOLDATA3DDESCRIPTORS_2017 35 #define MOLDATA3DDESCRIPTORS_2017 36 37 #include <GraphMol/RDKitBase.h> 38 #include "Data3Ddescriptors.h" 39 40 class RDKIT_DESCRIPTORS_EXPORT MolData3Ddescriptors { 41 private: 42 Data3Ddescriptors data3D; 43 44 public: 45 MolData3Ddescriptors(); 46 std::vector<double> GetCharges(const RDKit::ROMol& mol); 47 std::vector<double> GetRelativeMW(const RDKit::ROMol& mol); 48 std::vector<double> GetCustomAtomProp(const RDKit::ROMol& mol, 49 const std::string& customAtomPropName); 50 std::vector<double> GetRelativePol(const RDKit::ROMol& mol); 51 std::vector<double> GetRelativeRcov(const RDKit::ROMol& mol); 52 std::vector<double> GetRelativeENeg(const RDKit::ROMol& mol); 53 std::vector<double> GetRelativeIonPol(const RDKit::ROMol& mol); 54 std::vector<double> GetRelativeVdW(const RDKit::ROMol& mol); 55 std::vector<double> GetUn(int numAtoms); 56 int GetPrincipalQuantumNumber(int AtomicNum); 57 std::vector<double> GetIState(const RDKit::ROMol& mol); 58 std::vector<double> GetIStateDrag(const RDKit::ROMol& mol); 59 std::vector<double> GetEState(const RDKit::ROMol& mol); 60 std::vector<double> GetEState2(const RDKit::ROMol& mol); 61 }; 62 #endif 63