13#include <boost/dynamic_bitset.hpp>
29 std::vector<const Atom *>
Atoms;
30 std::vector<const Bond *>
Bonds;
53 NewBond(
unsigned int bond_idx,
unsigned int new_atom,
unsigned int to_atom,
63 boost::dynamic_bitset<> addNewBondsToSeed(
const ROMol &qmol,
65 bool canAddAllNonFusedRingBondsConnectedToBond(
67 void addNewBondFromAtom(
const Atom &srcAtom,
const Bond &bond)
const;
69 mutable std::vector<NewBond> NewBonds;
70 bool StoreAllDegenerateMCS =
false;
91#ifdef DUP_SUBSTRUCT_CACHE
106 NewBonds = src.NewBonds;
115 StoreAllDegenerateMCS = src.StoreAllDegenerateMCS;
116#ifdef DUP_SUBSTRUCT_CACHE
129 StoreAllDegenerateMCS = parent->StoreAllDegenerateMCS;
130#ifdef DUP_SUBSTRUCT_CACHE
146 (StoreAllDegenerateMCS &&
pulls in the core RDKit functionality
The class for representing atoms.
class for representing a bond
unsigned int LastAddedBondsBeginIdx
unsigned int addBond(const Bond *bond)
unsigned int getNumAtoms() const
void createFromParent(const Seed *parent)
unsigned int GrowingStage
unsigned int LastAddedAtomsBeginIdx
unsigned int getNumBonds() const
void grow(MaximumCommonSubgraph &mcs) const
void setStoreAllDegenerateMCS(bool value)
void fillNewBonds(const ROMol &qmol, MaximumCommonSubgraph *mcs=nullptr) const
unsigned int RemainingAtoms
MolFragment MoleculeFragment
DuplicatedSeedCache::TKey DupCacheKey
std::vector< TargetMatch > MatchResult
void setMoleculeFragment(const Seed &src)
unsigned int RemainingBonds
bool canGrowBiggerThan(unsigned int maxBonds, unsigned int maxAtoms) const
unsigned int addAtom(const Atom *atom)
boost::dynamic_bitset ExcludedBonds
Seed & operator=(const Seed &src)
void computeRemainingSize(const ROMol &qmol)
#define RDKIT_FMCS_EXPORT
std::map< unsigned int, unsigned int > SeedAtomIdxMap
std::vector< const Bond * > Bonds
std::vector< const Atom * > Atoms
NewBond(unsigned int bond_idx, unsigned int new_atom, unsigned int to_atom, const Atom *a)