Canon.h File Reference
`#include <boost/tuple/tuple.hpp>`
`#include <boost/dynamic_bitset.hpp>`

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

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

## Typedefs

typedef std::vector< MolStackElem > | RDKit::Canon::MolStack
typedef boost::tuple< int, int, Bond * > | RDKit::Canon::PossibleType
| used to represent possible branches from an atom More...

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

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=0, const std::vector< std::string > *bondSymbols=0, bool doIsomericSmiles=false)
| constructs the canonical traversal order for a molecular fragment More...

## Variables

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