18#ifndef RD_StereoGroup_092018
19#define RD_StereoGroup_092018
47 std::vector<Atom *> d_atoms;
48 std::vector<Bond *> d_bonds;
52 unsigned d_readId = 0u;
53 unsigned d_writeId = 0u;
59 std::vector<Bond *> &&bonds,
unsigned readId = 0);
61 std::vector<Bond *> &bonds,
unsigned readId = 0);
79 return (d_grouptype == other.d_grouptype) && (d_atoms == other.d_atoms) &&
80 (d_bonds == other.d_bonds);
83 return (d_grouptype != other.d_grouptype) || (d_atoms != other.d_atoms) ||
84 (d_bonds != other.d_bonds);
87 const Atom *atom, std::vector<StereoGroup> &groups);
90 const Atom *atom, std::vector<StereoGroup> &
groups);
92 const Atom *atom, std::vector<StereoGroup> &
groups);
94 const std::vector<Atom *> &atoms, std::vector<StereoGroup> &
groups);
100 std::vector<StereoGroup> &
groups);
RDKIT_GRAPHMOL_EXPORT std::ostream & operator<<(std::ostream &target, const RDKit::StereoGroup &stg)
allows StereoGroup objects to be dumped to streams
The class for representing atoms.
StereoGroup(StereoGroupType grouptype, std::vector< Atom * > &&atoms, std::vector< Bond * > &&bonds, unsigned readId=0)
StereoGroup & operator=(const StereoGroup &other)=default
StereoGroup & operator=(StereoGroup &&other)=default
unsigned getWriteId() const
StereoGroup(const StereoGroup &other)=default
StereoGroupType getGroupType() const
unsigned getReadId() const
StereoGroup(StereoGroup &&other)=default
StereoGroup(StereoGroupType grouptype, const std::vector< Atom * > &atoms, std::vector< Bond * > &bonds, unsigned readId=0)
bool operator==(const StereoGroup &other) const
void setWriteId(unsigned id)
friend RDKIT_GRAPHMOL_EXPORT void removeAtomFromGroups(const Atom *atom, std::vector< StereoGroup > &groups)
bool operator!=(const StereoGroup &other) const
const std::vector< Atom * > & getAtoms() const
const std::vector< Bond * > & getBonds() const
#define RDKIT_GRAPHMOL_EXPORT
RDKIT_GRAPHMOL_EXPORT void forwardStereoGroupIds(ROMol &mol)
bool rdvalue_is(const RDValue_cast_t)
RDKIT_GRAPHMOL_EXPORT void removeGroupsWithAtom(const Atom *atom, std::vector< StereoGroup > &groups)
RDKIT_GRAPHMOL_EXPORT void assignStereoGroupIds(std::vector< StereoGroup > &groups)
RDKIT_GRAPHMOL_EXPORT void removeAtomFromGroups(const Atom *atom, std::vector< StereoGroup > &groups)
RDKIT_GRAPHMOL_EXPORT void removeGroupsWithAtoms(const std::vector< Atom * > &atoms, std::vector< StereoGroup > &groups)