11#ifndef RD_GENERICGROUPS_H
12#define RD_GENERICGROUPS_H
17#include <boost/dynamic_bitset.hpp>
24namespace GenericGroups {
242const static std::map<
244 std::function<
bool(
const ROMol &,
const Atom &, boost::dynamic_bitset<>)>>
281 const std::vector<unsigned int> &match);
The class for representing atoms.
#define RDKIT_GENERICGROUPS_EXPORT
RDKIT_GENERICGROUPS_EXPORT bool CyclicAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches cyclic side chains.
RDKIT_GENERICGROUPS_EXPORT bool AlkylAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches alkyl side chains.
RDKIT_GENERICGROUPS_EXPORT bool CarbocycloalkylAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches cycloalkyl side chains.
RDKIT_GENERICGROUPS_EXPORT bool HeteroacyclicAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches acyclic side chains with at least one heteroatom.
RDKIT_GENERICGROUPS_EXPORT bool HeterocyclicAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches heterocyclic side chains.
RDKIT_GENERICGROUPS_EXPORT bool CarbocyclicAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches carbocyclic side chains.
RDKIT_GENERICGROUPS_EXPORT bool AcyclicAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches acyclic side chains.
RDKIT_GENERICGROUPS_EXPORT bool AlkynylAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches alkynyl side chains.
RDKIT_GENERICGROUPS_EXPORT bool CarbocycloalkenylAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches cycloalkenyl side chains.
RDKIT_GENERICGROUPS_EXPORT bool NoCarbonRingAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches rings without carbon.
RDKIT_GENERICGROUPS_EXPORT bool CarboacyclicAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches all-carbon acyclic side chains.
RDKIT_GENERICGROUPS_EXPORT bool HeteroarylAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches heteroaryl side chains.
RDKIT_GENERICGROUPS_EXPORT bool AlkoxyacyclicAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches acyclic alkoxy side chains.
RDKIT_GENERICGROUPS_EXPORT bool AlkenylAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches alkenyl side chains.
RDKIT_GENERICGROUPS_EXPORT bool CarboarylAtomMatcher(const ROMol &mol, const Atom &atom, boost::dynamic_bitset<> ignore)
Matches aryl side chains.
RDKIT_GENERICGROUPS_EXPORT bool genericAtomMatcher(const ROMol &mol, const ROMol &query, const std::vector< unsigned int > &match)
RDKIT_GENERICGROUPS_EXPORT void setGenericQueriesFromProperties(ROMol &mol, bool useAtomLabels=true, bool useSGroups=true)
sets the apropriate generic query tags based on atom labels and/or SGroups
static const std::map< std::string, std::function< bool(const ROMol &, const Atom &, boost::dynamic_bitset<>)> > genericMatchers
RDKIT_GENERICGROUPS_EXPORT void convertGenericQueriesToSubstanceGroups(ROMol &mol)
bool rdvalue_is(const RDValue_cast_t)