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)
 
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)
 
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)
 
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