25#include <boost/rational.hpp>
98 boost::rational<int> &&frac,
int dist, uint8_t flags);
108 Node *dp_origin =
nullptr;
112 bool d_atropisomerMode =
false;
115 Node *dp_root =
nullptr;
117 Atom *dp_rule6Ref =
nullptr;
121 std::list<Node> d_nodes;
122 std::list<Edge> d_edges;
The class for representing atoms.
class for representing a bond
Digraph(const CIPMol &mol, Atom *atom, bool atropsomerMode=false)
Digraph & operator=(const Digraph &)=delete
void changeRoot(Node *newroot)
Node * getOriginalRoot() const
void setRule6Ref(Atom *ref)
Atom * getRule6Ref() const
Digraph(const CIPMol &&mol, Atom *atom, bool atropsomerMode=false)=delete
const CIPMol & getMol() const
Node * getCurrentRoot() const
Digraph(CIPMol &&mol, Atom *atom, bool atropsomerMode=false)=delete
bool seenAtom(Atom *atom) const
Digraph(const Digraph &)=delete
Node & addNode(std::vector< std::uint32_t > &&visit, Atom *atom, boost::rational< int > &&frac, int dist, uint8_t flags)
std::vector< Node * > getNodes(Atom *atom) const