25 #ifndef __RD_ATOMPAIRS_H__ 26 #define __RD_ATOMPAIRS_H__ 30 #include <boost/cstdint.hpp> 37 const unsigned int atomNumberTypes[1<<
numTypeBits]={5,6,7,8,9,14,15,16,17,33,34,35,51,52,43};
58 boost::uint32_t
getAtomCode(
const Atom *atom,
unsigned int branchSubtract=0,
bool includeChirality=
false);
69 boost::uint32_t
getAtomPairCode(boost::uint32_t codeI,boost::uint32_t codeJ,
70 unsigned int dist,
bool includeChirality=
false);
107 unsigned int minLength,
unsigned int maxLength,
108 const std::vector<boost::uint32_t> *fromAtoms=0,
109 const std::vector<boost::uint32_t> *ignoreAtoms=0,
110 const std::vector<boost::uint32_t> *atomInvariants=0,
111 bool includeChirality=
false,
117 const std::vector<boost::uint32_t> *fromAtoms=0,
118 const std::vector<boost::uint32_t> *ignoreAtoms=0,
119 const std::vector<boost::uint32_t> *atomInvariants=0,
120 bool includeChirality=
false,
153 unsigned int nBits=2048,
154 unsigned int minLength=1,
155 unsigned int maxLength=maxPathLen-1,
156 const std::vector<boost::uint32_t> *fromAtoms=0,
157 const std::vector<boost::uint32_t> *ignoreAtoms=0,
158 const std::vector<boost::uint32_t> *atomInvariants=0,
159 bool includeChirality=
false,
192 unsigned int nBits=2048,
193 unsigned int minLength=1,
194 unsigned int maxLength=maxPathLen-1,
195 const std::vector<boost::uint32_t> *fromAtoms=0,
196 const std::vector<boost::uint32_t> *ignoreAtoms=0,
197 const std::vector<boost::uint32_t> *atomInvariants=0,
198 unsigned int nBitsPerEntry=4,
199 bool includeChirality=
false,
239 unsigned int targetSize=4,
240 const std::vector<boost::uint32_t> *fromAtoms=0,
241 const std::vector<boost::uint32_t> *ignoreAtoms=0,
242 const std::vector<boost::uint32_t> *atomInvariants=0,
243 bool includeChirality=
false 273 unsigned int nBits=2048,
274 unsigned int targetSize=4,
275 const std::vector<boost::uint32_t> *fromAtoms=0,
276 const std::vector<boost::uint32_t> *ignoreAtoms=0,
277 const std::vector<boost::uint32_t> *atomInvariants=0,
278 bool includeChirality=
false);
303 unsigned int nBits=2048,
304 unsigned int targetSize=4,
305 const std::vector<boost::uint32_t> *fromAtoms=0,
306 const std::vector<boost::uint32_t> *ignoreAtoms=0,
307 const std::vector<boost::uint32_t> *atomInvariants=0,
308 unsigned int nBitsPerEntry=4,
309 bool includeChirality=
false);
const std::string atomPairsVersion
Pulls in all the BitVect classes.
SparseIntVect< boost::int32_t > * getHashedAtomPairFingerprint(const ROMol &mol, unsigned int nBits=2048, unsigned int minLength=1, unsigned int maxLength=maxPathLen-1, const std::vector< boost::uint32_t > *fromAtoms=0, const std::vector< boost::uint32_t > *ignoreAtoms=0, const std::vector< boost::uint32_t > *atomInvariants=0, bool includeChirality=false, bool use2D=true, int confId=-1)
returns the hashed atom-pair fingerprint for a molecule
SparseIntVect< boost::int64_t > * getTopologicalTorsionFingerprint(const ROMol &mol, unsigned int targetSize=4, const std::vector< boost::uint32_t > *fromAtoms=0, const std::vector< boost::uint32_t > *ignoreAtoms=0, const std::vector< boost::uint32_t > *atomInvariants=0, bool includeChirality=false)
returns the topological-torsion fingerprint for a molecule
const unsigned int maxPathLen
const unsigned int numPathBits
const unsigned int maxNumPi
SparseIntVect< boost::int64_t > * getHashedTopologicalTorsionFingerprint(const ROMol &mol, unsigned int nBits=2048, unsigned int targetSize=4, const std::vector< boost::uint32_t > *fromAtoms=0, const std::vector< boost::uint32_t > *ignoreAtoms=0, const std::vector< boost::uint32_t > *atomInvariants=0, bool includeChirality=false)
returns a hashed topological-torsion fingerprint for a molecule
ROMol is a molecule class that is intended to have a fixed topology.
boost::uint32_t getAtomCode(const Atom *atom, unsigned int branchSubtract=0, bool includeChirality=false)
const unsigned int numPiBits
Includes a bunch of functionality for handling Atom and Bond queries.
const unsigned int maxNumBranches
const unsigned int numBranchBits
boost::uint64_t getTopologicalTorsionCode(const std::vector< boost::uint32_t > &atomCodes, bool includeChirality=false)
ExplicitBitVect * getHashedTopologicalTorsionFingerprintAsBitVect(const ROMol &mol, unsigned int nBits=2048, unsigned int targetSize=4, const std::vector< boost::uint32_t > *fromAtoms=0, const std::vector< boost::uint32_t > *ignoreAtoms=0, const std::vector< boost::uint32_t > *atomInvariants=0, unsigned int nBitsPerEntry=4, bool includeChirality=false)
returns a hashed topological-torsion fingerprint for a molecule as a bit vector
const unsigned int numAtomPairFingerprintBits
a class for efficiently storing sparse vectors of ints
a class for bit vectors that are densely occupied
boost::uint32_t getAtomPairCode(boost::uint32_t codeI, boost::uint32_t codeJ, unsigned int dist, bool includeChirality=false)
const unsigned int codeSize
const unsigned int atomNumberTypes[1<< numTypeBits]
The class for representing atoms.
ExplicitBitVect * getHashedAtomPairFingerprintAsBitVect(const ROMol &mol, unsigned int nBits=2048, unsigned int minLength=1, unsigned int maxLength=maxPathLen-1, const std::vector< boost::uint32_t > *fromAtoms=0, const std::vector< boost::uint32_t > *ignoreAtoms=0, const std::vector< boost::uint32_t > *atomInvariants=0, unsigned int nBitsPerEntry=4, bool includeChirality=false, bool use2D=true, int confId=-1)
returns the hashed atom-pair fingerprint for a molecule as a bit vector
SparseIntVect< boost::int32_t > * getAtomPairFingerprint(const ROMol &mol, unsigned int minLength, unsigned int maxLength, const std::vector< boost::uint32_t > *fromAtoms=0, const std::vector< boost::uint32_t > *ignoreAtoms=0, const std::vector< boost::uint32_t > *atomInvariants=0, bool includeChirality=false, bool use2D=true, int confId=-1)
returns the atom-pair fingerprint for a molecule
const unsigned int numChiralBits
const unsigned int numTypeBits