RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
Canon.h File Reference
#include <RDGeneral/export.h>
#include <RDGeneral/BoostStartInclude.h>
#include <tuple>
#include <boost/dynamic_bitset.hpp>
#include <RDGeneral/BoostEndInclude.h>

Go to the source code of this file.

Classes

union  RDKit::Canon::MolStackUnion
 used to store components in the molecular stack More...
 
class  RDKit::Canon::MolStackElem
 these are the actual elements in the molecular stack More...
 

Namespaces

namespace  RDKit
 Std stuff.
 
namespace  RDKit::Canon
 

Typedefs

typedef std::vector< MolStackElemRDKit::Canon::MolStack
 
typedef std::tuple< int, int, Bond * > RDKit::Canon::PossibleType
 used to represent possible branches from an atom
 

Enumerations

enum  RDKit::Canon::AtomColors { RDKit::Canon::WHITE_NODE = 0 , RDKit::Canon::GREY_NODE , RDKit::Canon::BLACK_NODE }
 used in traversals of the molecule More...
 
enum  RDKit::Canon::MolStackTypes {
  RDKit::Canon::MOL_STACK_ATOM = 0 , RDKit::Canon::MOL_STACK_BOND , RDKit::Canon::MOL_STACK_RING , RDKit::Canon::MOL_STACK_BRANCH_OPEN ,
  RDKit::Canon::MOL_STACK_BRANCH_CLOSE
}
 used to indicate types of entries in the molecular stack: More...
 

Functions

RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::canonicalizeFragment (ROMol &mol, int atomIdx, std::vector< AtomColors > &colors, const std::vector< unsigned int > &ranks, MolStack &molStack, const boost::dynamic_bitset<> *bondsInPlay=nullptr, const std::vector< std::string > *bondSymbols=nullptr, bool doIsomericSmiles=false, bool doRandom=false, bool doChiralInversions=true)
 constructs the canonical traversal order for a molecular fragment
 
RDKIT_GRAPHMOL_EXPORT bool RDKit::Canon::chiralAtomNeedsTagInversion (const RDKit::ROMol &mol, const RDKit::Atom *atom, bool isAtomFirst, size_t numClosures)
 
RDKIT_GRAPHMOL_EXPORT void RDKit::Canon::canonicalizeEnhancedStereo (ROMol &mol, const std::vector< unsigned int > *atomRanks=nullptr)
 Canonicalizes the atom stereo labels in enhanced stereo groups.
 

Variables

const int RDKit::Canon::MAX_NATOMS = 5000
 used in the canonical traversal code
 
const int RDKit::Canon::MAX_CYCLES = 1000
 used in the canonical traversal code
 
const int RDKit::Canon::MAX_BONDTYPE = 32
 used in the canonical traversal code