11#ifndef _RD_FRAGCATALOGENTRY_H_
12#define _RD_FRAGCATALOGENTRY_H_
31 dp_props =
new Dict();
61 unsigned int getOrder()
const {
return dp_mol->getNumBonds(); }
70 void setProp(
const char *key, T &val)
const {
71 dp_props->setVal(key, val);
75 void setProp(
const std::string &key, T &val)
const {
76 setProp(key.c_str(), val);
79 void setProp(
const char *key,
int val)
const { dp_props->setVal(key, val); }
81 void setProp(
const std::string &key,
int val)
const {
82 setProp(key.c_str(), val);
85 void setProp(
const char *key,
float val)
const { dp_props->setVal(key, val); }
87 void setProp(
const std::string &key,
float val)
const {
88 setProp(key.c_str(), val);
91 void setProp(
const std::string &key, std::string &val)
const {
92 setProp(key.c_str(), val);
96 void getProp(
const char *key, T &res)
const {
97 dp_props->getVal(key, res);
100 void getProp(
const std::string &key, T &res)
const {
101 getProp(key.c_str(), res);
108 return dp_props->hasVal(key);
112 void clearProp(
const char *key)
const { dp_props->clearVal(key); }
122 ROMol *dp_mol{
nullptr};
125 std::string d_descrip;
127 unsigned int d_order{0};
132 INT_INT_VECT_MAP d_aToFmap;
pulls in the core RDKit functionality
functionality for finding subgraphs and paths in molecules
Abstract base class to be used to represent an entry in a Catalog.
The Dict class can be used to store objects of arbitrary type keyed by strings.
container for user parameters used to create a fragment catalog
void setDescription(const FragCatParams *params)
const INT_INT_VECT_MAP & getFuncGroupMap() const
~FragCatalogEntry() override
bool match(const FragCatalogEntry *other, double tol) const
void getProp(const std::string &key, T &res) const
void initFromStream(std::istream &ss) override
initializes from a stream pickle
void setProp(const std::string &key, std::string &val) const
void setDescription(const std::string &val)
Subgraphs::DiscrimTuple getDiscrims() const
bool hasProp(const char *key) const
FragCatalogEntry(const ROMol *omol, const PATH_TYPE &path, const MatchVectType &aidToFid)
void setProp(const char *key, float val) const
FragCatalogEntry(const std::string &pickle)
void setProp(const char *key, int val) const
void setProp(const std::string &key, float val) const
std::string Serialize() const override
returns a string with a serialized (pickled) representation
unsigned int getOrder() const
void setProp(const std::string &key, T &val) const
void getProp(const char *key, T &res) const
void setProp(const std::string &key, int val) const
void setProp(const char *key, T &val) const
void clearProp(const std::string &key) const
void clearProp(const char *key) const
void initFromString(const std::string &text) override
initializes from a string pickle
std::string getDescription() const override
returns a text description of this entry
void toStream(std::ostream &ss) const override
serializes (pickles) to a stream
bool hasProp(const std::string &key) const
#define RDKIT_FRAGCATALOG_EXPORT
std::tuple< std::uint32_t, std::uint32_t, std::uint32_t > DiscrimTuple
used to return path discriminators (three unsigned ints):
std::vector< std::pair< int, int > > MatchVectType
used to return matches from substructure searching, The format is (queryAtomIdx, molAtomIdx)
std::map< int, INT_VECT > INT_INT_VECT_MAP
std::vector< int > PATH_TYPE