33 std::unique_ptr<MacroMolTemplateLibrary> localTemplateLibrary);
45 std::unique_ptr<MacroMolTemplateLibrary> newTemplateLibrary);
82 unsigned int addMacroBond(
unsigned int beginAtomIdx,
unsigned int endAtomIdx,
83 int beginAttachPt,
int endAttachPt,
99 unsigned int beginAtomIdx,
unsigned int endMacroAtomIdx,
int endAttachPt,
115 unsigned int beginMacroAtomIdx,
unsigned int endAtomIdx,
130 unsigned int addBond(
unsigned int beginAtomIdx,
unsigned int endAtomIdx,
139 unsigned int addMacroBondHelper(
unsigned int beginAtomIdx,
140 unsigned int endAtomIdx,
int beginAttachPt,
144 std::unique_ptr<MacroMolTemplateLibrary> dp_localTemplateLibrary;
Defines atom-level macro atom information.
Defines the editable molecule class RWMol.
The class for representing atoms.
class for representing a bond
void setLocalTemplateLibrary(std::unique_ptr< MacroMolTemplateLibrary > newTemplateLibrary)
Replaces the local template library and takes ownership of it.
unsigned int addBond(Bond *bond, bool takeOwnership=false)
This is an overloaded member function, provided for convenience. It differs from the above function o...
unsigned int addAtomToMacroAtomBond(unsigned int beginAtomIdx, unsigned int endMacroAtomIdx, int endAttachPt, Bond::BondType bondType=Bond::BondType::SINGLE)
Adds a bond from a regular atom to a macro atom.
MacroMol(MacroMol &&other) noexcept=default
unsigned int addMacroAtom(std::string symbol, MonomerClass monomerClass)
Adds a new macro atom to the molecule.
const MacroMolTemplateLibrary & getLocalTemplateLibrary() const
Returns this molecule's local template library.
unsigned int addMacroAtomToAtomBond(unsigned int beginMacroAtomIdx, unsigned int endAtomIdx, int beginAttachPt, Bond::BondType bondType=Bond::BondType::SINGLE)
Adds a bond from a macro atom to a regular atom.
bool checkLocalTemplateReferences() const
Checks that every macro atom resolves in the local template library.
MacroMol & operator=(MacroMol &&other) noexcept=default
MacroMolTemplateLibrary & getLocalTemplateLibrary()
Returns this molecule's local template library.
MacroMol & operator=(const MacroMol &other)
unsigned int addBond(unsigned int beginAtomIdx, unsigned int endAtomIdx, Bond::BondType bondType=Bond::SINGLE)
Adds a bond between two regular atoms.
MacroMol(std::unique_ptr< MacroMolTemplateLibrary > localTemplateLibrary)
Constructs a MacroMol that takes ownership of a local template library.
unsigned int addMacroBond(unsigned int beginAtomIdx, unsigned int endAtomIdx, int beginAttachPt, int endAttachPt, Bond::BondType bondType=Bond::SINGLE)
Adds a bond between two macro atoms.
unsigned int addBond(Atom *beginAtom, Atom *endAtom, Bond::BondType bondType=Bond::SINGLE)
This is an overloaded member function, provided for convenience. It differs from the above function o...
MacroMol()
Constructs a MacroMol with an empty local template library.
MacroMol(const MacroMol &other)
#define RDKIT_GRAPHMOL_EXPORT
static const char * symbol[119]
MonomerClass
Format-neutral classes of monomer that a macro atom can represent.