RDKit
Open-source cheminformatics and machine learning.
new_canon.h File Reference
#include <RDGeneral/hanoiSort.h>
#include <GraphMol/ROMol.h>
#include <GraphMol/RingInfo.h>
#include <boost/cstdint.hpp>
#include <boost/foreach.hpp>
#include <boost/dynamic_bitset.hpp>
#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

 RDKit
 Includes a bunch of functionality for handling Atom and Bond queries.
 
 RDKit::Canon
 

Functions

void RDKit::Canon::updateAtomNeighborIndex (canon_atom *atoms, std::vector< bondholder > &nbrs)
 
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)
 
void RDKit::Canon::CreateSinglePartition (unsigned int nAtoms, int *order, int *count, canon_atom *atoms)
 
void RDKit::Canon::ActivatePartitions (unsigned int nAtoms, int *order, int *count, int &activeset, int *next, int *changed)
 
void RDKit::Canon::rankMolAtoms (const ROMol &mol, std::vector< unsigned int > &res, bool breakTies=true, bool includeChirality=true, bool includeIsotopes=true)
 
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=NULL, bool breakTies=true, bool includeChirality=true, bool includeIsotopes=true)
 
void RDKit::Canon::chiralRankMolAtoms (const ROMol &mol, std::vector< unsigned int > &res)
 
void RDKit::Canon::initCanonAtoms (const ROMol &mol, std::vector< Canon::canon_atom > &atoms, bool includeChirality=true)
 

Variables

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