RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
new_canon.h File Reference
#include <RDGeneral/export.h>
#include <RDGeneral/hanoiSort.h>
#include <GraphMol/ROMol.h>
#include <GraphMol/RingInfo.h>
#include <GraphMol/StereoGroup.h>
#include <RDGeneral/BoostStartInclude.h>
#include <cstdint>
#include <boost/dynamic_bitset.hpp>
#include <RDGeneral/BoostEndInclude.h>
#include <cstring>
#include <iostream>
#include <cassert>
#include <vector>

Go to the source code of this file.

Classes

struct  RDKit::Canon::bondholder
struct  RDKit::Canon::canon_atom
class  RDKit::Canon::SpecialChiralityAtomCompareFunctor
class  RDKit::Canon::SpecialSymmetryAtomCompareFunctor
class  RDKit::Canon::AtomCompareFunctor
class  RDKit::Canon::ChiralAtomCompareFunctor

Namespaces

namespace  RDKit
 Std stuff.
namespace  RDKit::Canon
namespace  RDKit::Canon::detail

Functions

RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::updateAtomNeighborIndex (canon_atom *atoms, std::vector< bondholder > &nbrs)
RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::updateAtomNeighborNumSwaps (canon_atom *atoms, std::vector< bondholder > &nbrs, unsigned int atomIdx, std::vector< std::pair< unsigned int, unsigned int > > &result)
template<typename CompareFunc>
void RDKit::Canon::RefinePartitions (const ROMol &mol, canon_atom *atoms, CompareFunc compar, int mode, int *order, int *count, int &activeset, int *next, int *changed, char *touchedPartitions)
template<typename CompareFunc>
void RDKit::Canon::BreakTies (const ROMol &mol, canon_atom *atoms, CompareFunc compar, int mode, int *order, int *count, int &activeset, int *next, int *changed, char *touchedPartitions)
RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::CreateSinglePartition (unsigned int nAtoms, int *order, int *count, canon_atom *atoms)
RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::ActivatePartitions (unsigned int nAtoms, int *order, int *count, int &activeset, int *next, int *changed)
RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::rankMolAtoms (const ROMol &mol, std::vector< unsigned int > &res, bool breakTies=true, bool includeChirality=true, bool includeIsotopes=true, bool includeAtomMaps=true, bool includeChiralPresence=false, bool includeStereoGroups=true, bool useNonStereoRanks=false)
 Note that atom maps on dummy atoms will always be used.
RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::rankFragmentAtoms (const ROMol &mol, std::vector< unsigned int > &res, const boost::dynamic_bitset<> &atomsInPlay, const boost::dynamic_bitset<> &bondsInPlay, const std::vector< std::string > *atomSymbols, const std::vector< std::string > *bondSymbols, bool breakTies, bool includeChirality, bool includeIsotope, bool includeAtomMaps, bool includeChiralPresence)
 Note that atom maps on dummy atoms will always be used.
void RDKit::Canon::rankFragmentAtoms (const ROMol &mol, std::vector< unsigned int > &res, const boost::dynamic_bitset<> &atomsInPlay, const boost::dynamic_bitset<> &bondsInPlay, const std::vector< std::string > *atomSymbols=nullptr, bool breakTies=true, bool includeChirality=true, bool includeIsotopes=true, bool includeAtomMaps=true, bool includeChiralPresence=false)
 Note that atom maps on dummy atoms will always be used.
RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::chiralRankMolAtoms (const ROMol &mol, std::vector< unsigned int > &res)
RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::initCanonAtoms (const ROMol &mol, std::vector< Canon::canon_atom > &atoms, bool includeChirality=true, bool includeStereoGroups=true)
void RDKit::Canon::detail::initFragmentCanonAtoms (const ROMol &mol, std::vector< Canon::canon_atom > &atoms, bool includeChirality, const std::vector< std::string > *atomSymbols, const std::vector< std::string > *bondSymbols, const boost::dynamic_bitset<> &atomsInPlay, const boost::dynamic_bitset<> &bondsInPlay, bool needsInit)
template<typename T>
void RDKit::Canon::detail::rankWithFunctor (T &ftor, bool breakTies, int *order, bool useSpecial=false, bool useChirality=false, const boost::dynamic_bitset<> *atomsInPlay=nullptr, const boost::dynamic_bitset<> *bondsInPlay=nullptr)

Variables

const unsigned int RDKit::Canon::ATNUM_CLASS_OFFSET = 10000