RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
RDKit::SubstructLibrary Class Reference

Substructure Search a library of molecules. More...

#include <SubstructLibrary.h>

Public Member Functions

 SubstructLibrary ()
 
 SubstructLibrary (boost::shared_ptr< MolHolderBase > molecules)
 
 SubstructLibrary (boost::shared_ptr< MolHolderBase > molecules, boost::shared_ptr< FPHolderBase > fingerprints)
 
 SubstructLibrary (boost::shared_ptr< MolHolderBase > molecules, boost::shared_ptr< KeyHolderBase > keys)
 
 SubstructLibrary (boost::shared_ptr< MolHolderBase > molecules, boost::shared_ptr< FPHolderBase > fingerprints, boost::shared_ptr< KeyHolderBase > keys)
 
 SubstructLibrary (const std::string &pickle)
 
boost::shared_ptr< MolHolderBase > & getMolHolder ()
 Get the underlying molecule holder implementation.
 
const boost::shared_ptr< MolHolderBase > & getMolHolder () const
 
boost::shared_ptr< FPHolderBase > & getFpHolder ()
 Get the underlying molecule holder implementation.
 
const boost::shared_ptr< FPHolderBase > & getFpHolder () const
 Get the underlying molecule holder implementation.
 
boost::shared_ptr< KeyHolderBase > & getKeyHolder ()
 Get the underlying molecule holder implementation.
 
const boost::shared_ptr< KeyHolderBase > & getKeyHolder () const
 Get the underlying molecule holder implementation.
 
const MolHolderBasegetMolecules () const
 
FPHolderBasegetFingerprints ()
 Get the underlying fingerprint implementation.
 
const FPHolderBasegetFingerprints () const
 
KeyHolderBasegetKeys ()
 Get the underlying key holder implementation.
 
const KeyHolderBasegetKeys () const
 Get the underlying key holder implementation.
 
unsigned int addMol (const ROMol &mol)
 Add a molecule to the library.
 
template<class Query >
std::vector< unsigned intgetMatches (const Query &query, bool recursionPossible=true, bool useChirality=true, bool useQueryQueryMatches=false, int numThreads=-1, int maxResults=-1) const
 Get the matching indices for the query.
 
template<class Query >
std::vector< unsigned intgetMatches (const Query &query, const SubstructMatchParameters &params, int numThreads=-1, int maxResults=-1) const
 overload
 
template<class Query >
std::vector< unsigned intgetMatches (const Query &query, unsigned int startIdx, unsigned int endIdx, bool recursionPossible=true, bool useChirality=true, bool useQueryQueryMatches=false, int numThreads=-1, int maxResults=-1) const
 Get the matching indices for the query between the given indices.
 
std::vector< unsigned intgetMatches (const ROMol &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1, int maxResults=-1) const
 overload
 
std::vector< unsigned intgetMatches (const MolBundle &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1, int maxResults=-1) const
 overload
 
std::vector< unsigned intgetMatches (const TautomerQuery &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1, int maxResults=-1) const
 overload
 
std::vector< unsigned intgetMatches (const ExtendedQueryMol &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1, int maxResults=-1) const
 overload
 
template<class Query >
unsigned int countMatches (const Query &query, bool recursionPossible=true, bool useChirality=true, bool useQueryQueryMatches=false, int numThreads=-1) const
 Return the number of matches for the query.
 
template<class Query >
unsigned int countMatches (const Query &query, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
template<class Query >
unsigned int countMatches (const Query &query, unsigned int startIdx, unsigned int endIdx, bool recursionPossible=true, bool useChirality=true, bool useQueryQueryMatches=false, int numThreads=-1) const
 Return the number of matches for the query.
 
unsigned int countMatches (const ROMol &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
unsigned int countMatches (const TautomerQuery &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
unsigned int countMatches (const MolBundle &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
unsigned int countMatches (const ExtendedQueryMol &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
template<class Query >
bool hasMatch (const Query &query, bool recursionPossible=true, bool useChirality=true, bool useQueryQueryMatches=false, int numThreads=-1) const
 Returns true if any match exists for the query.
 
template<class Query >
bool hasMatch (const Query &query, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
template<class Query >
bool hasMatch (const Query &query, unsigned int startIdx, unsigned int endIdx, bool recursionPossible=true, bool useChirality=true, bool useQueryQueryMatches=false, int numThreads=-1) const
 
bool hasMatch (const ROMol &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
bool hasMatch (const TautomerQuery &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
bool hasMatch (const MolBundle &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
bool hasMatch (const ExtendedQueryMol &query, unsigned int startIdx, unsigned int endIdx, const SubstructMatchParameters &params, int numThreads=-1) const
 overload
 
boost::shared_ptr< ROMolgetMol (unsigned int idx) const
 Returns the molecule at the given index.
 
boost::shared_ptr< ROMoloperator[] (unsigned int idx)
 Returns the molecule at the given index.
 
unsigned int size () const
 return the number of molecules in the library
 
void setSearchOrder (const std::vector< unsigned int > &order)
 does error checking
 
const std::vector< unsigned int > & getSearchOrder () const
 
std::vector< unsigned int > & getSearchOrder ()
 
void resetHolders ()
 access required for serialization
 
void toStream (std::ostream &ss) const
 serializes (pickles) to a stream
 
std::string Serialize () const
 returns a string with a serialized (pickled) representation
 
void initFromStream (std::istream &ss)
 initializes from a stream pickle
 
void initFromString (const std::string &text)
 initializes from a string pickle
 

Detailed Description

Substructure Search a library of molecules.

This class allows for multithreaded substructure searches of large datasets.

The implementations can use fingerprints to speed up searches and have molecules cached as binary forms to reduce memory usage.

basic usage:

lib.addMol(mol);
std::vector<unsigned int> results = lib.getMatches(query);
for(std::vector<unsigned int>::const_iterator matchIndex=results.begin();
matchIndex != results.end();
boost::shared_ptr<ROMol> match = lib.getMol(*matchIndex);
}
Substructure Search a library of molecules.
unsigned int addMol(const ROMol &mol)
Add a molecule to the library.
bool rdvalue_is(const RDValue_cast_t)

Using different mol holders and pattern fingerprints.

boost::shared_ptr<CachedTrustedSmilesMolHolder> molHolder = \
boost::make_shared<CachedTrustedSmilesMolHolder>();
boost::shared_ptr<PatternHolder> patternHolder = \
boost::make_shared<PatternHolder>();
lib.addMol(mol);

Cached molecule holders create molecules on demand. There are currently three styles of cached molecules.

CachedMolHolder: stores molecules in the rdkit binary format. CachedSmilesMolHolder: stores molecules in smiles format. CachedTrustedSmilesMolHolder: stores molecules in smiles format.

The CachedTrustedSmilesMolHolder is made to add molecules from a trusted source. This makes the basic assumption that RDKit was used to sanitize and canonicalize the smiles string. In practice this is considerably faster than using arbitrary smiles strings since certain assumptions can be made. Molecules generated from trusted smiles do not have ring information (although this is created in the molecule being searched if necessary).

When loading from external data, as opposed to using the "addMol" API, care must be taken to ensure that the pattern fingerprints and smiles are synchronized.

Each pattern holder has an API point for making its fingerprint. This is useful to ensure that the pattern stored in the database will be compatible with the patterns made when analyzing queries.

boost::shared_ptr<CachedTrustedSmilesMolHolder> molHolder = \
boost::make_shared<CachedTrustedSmilesMolHolder>();
boost::shared_ptr<PatternHolder> patternHolder = \
boost::make_shared<PatternHolder>();
// the PatternHolder instance is able to make fingerprints.
// These, of course, can be read from a file. For demonstration
// purposes we construct them here.
const std::string trustedSmiles = "c1ccccc1";
const ExplicitBitVect *bitVector = patternHolder->makeFingerprint(*m);
// The trusted smiles and bitVector can be read from any source.
// This is the fastest way to load a substruct library.
molHolder->addSmiles( trustedSmiles );
patternHolder->addFingerprint( *bitVector );
delete m;
delete bitVector;
a class for bit vectors that are densely occupied
RDKit::RWMol * SmilesToMol(const std::string &smi, const SmilesParserParams &ps)

Finally, using the KeyFromPropHolder will store user ids or keys. By default, it uses RDKit's default _Name prop, but can be changed to any property.

boost::shared_ptr<CachedTrustedSmilesMolHolder> molHolder = \
boost::make_shared<CachedTrustedSmilesMolHolder>();
boost::shared_ptr<KeyFromPropHolder> keyHolder = \
boost::make_shared<KeyFromPropHolder>();
...
You can get the keys in multiple through the use of the keyholder
auto key = lib.getKeys().getKey(idx);
auto keys = lib.getKeys().getKeys(lib.GetMatch(query));

Definition at line 519 of file SubstructLibrary.h.

Constructor & Destructor Documentation

◆ SubstructLibrary() [1/6]

RDKit::SubstructLibrary::SubstructLibrary ( )
inline

Definition at line 530 of file SubstructLibrary.h.

◆ SubstructLibrary() [2/6]

RDKit::SubstructLibrary::SubstructLibrary ( boost::shared_ptr< MolHolderBase > molecules)
inline

Definition at line 536 of file SubstructLibrary.h.

◆ SubstructLibrary() [3/6]

RDKit::SubstructLibrary::SubstructLibrary ( boost::shared_ptr< MolHolderBase > molecules,
boost::shared_ptr< FPHolderBase > fingerprints )
inline

Definition at line 543 of file SubstructLibrary.h.

◆ SubstructLibrary() [4/6]

RDKit::SubstructLibrary::SubstructLibrary ( boost::shared_ptr< MolHolderBase > molecules,
boost::shared_ptr< KeyHolderBase > keys )
inline

Definition at line 556 of file SubstructLibrary.h.

◆ SubstructLibrary() [5/6]

RDKit::SubstructLibrary::SubstructLibrary ( boost::shared_ptr< MolHolderBase > molecules,
boost::shared_ptr< FPHolderBase > fingerprints,
boost::shared_ptr< KeyHolderBase > keys )
inline

Definition at line 569 of file SubstructLibrary.h.

◆ SubstructLibrary() [6/6]

RDKit::SubstructLibrary::SubstructLibrary ( const std::string & pickle)
inline

Definition at line 583 of file SubstructLibrary.h.

Member Function Documentation

◆ addMol()

unsigned int RDKit::SubstructLibrary::addMol ( const ROMol & mol)

Add a molecule to the library.

Parameters
molMolecule to add

returns index for the molecule in the library

◆ countMatches() [1/7]

unsigned int RDKit::SubstructLibrary::countMatches ( const ExtendedQueryMol & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1 ) const

overload

◆ countMatches() [2/7]

unsigned int RDKit::SubstructLibrary::countMatches ( const MolBundle & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1 ) const

overload

◆ countMatches() [3/7]

template<class Query >
unsigned int RDKit::SubstructLibrary::countMatches ( const Query & query,
bool recursionPossible = true,
bool useChirality = true,
bool useQueryQueryMatches = false,
int numThreads = -1 ) const
inline

Return the number of matches for the query.

Parameters
queryMolecule or Tautomer Query to match against molecules
recursionPossibleflags whether or not recursive matches are allowed [default true]
useChiralityuse atomic CIP codes as part of the comparison [default true]
useQueryQueryMatchesif set, the contents of atom and bond queries will be used as part of the matching [default false]
numThreadsIf -1 use all available processors [default -1]

Definition at line 770 of file SubstructLibrary.h.

References RDKit::SubstructMatchParameters::recursionPossible, RDKit::SubstructMatchParameters::useChirality, and RDKit::SubstructMatchParameters::useQueryQueryMatches.

◆ countMatches() [4/7]

template<class Query >
unsigned int RDKit::SubstructLibrary::countMatches ( const Query & query,
const SubstructMatchParameters & params,
int numThreads = -1 ) const
inline

overload

Definition at line 782 of file SubstructLibrary.h.

◆ countMatches() [5/7]

template<class Query >
unsigned int RDKit::SubstructLibrary::countMatches ( const Query & query,
unsigned int startIdx,
unsigned int endIdx,
bool recursionPossible = true,
bool useChirality = true,
bool useQueryQueryMatches = false,
int numThreads = -1 ) const
inline

Return the number of matches for the query.

Return the number of matches for the query between the given indices

Parameters
queryQuery to match against molecules
startIdxStart index of the search
endIdxEnding idx (non-inclusive) of the search.
recursionPossibleflags whether or not recursive matches are allowed [default true]
useChiralityuse atomic CIP codes as part of the comparison [default true]
useQueryQueryMatchesif set, the contents of atom and bond queries will be used as part of the matching [default false]
numThreadsIf -1 use all available processors [default -1]

Definition at line 805 of file SubstructLibrary.h.

References RDKit::SubstructMatchParameters::recursionPossible, RDKit::SubstructMatchParameters::useChirality, and RDKit::SubstructMatchParameters::useQueryQueryMatches.

◆ countMatches() [6/7]

unsigned int RDKit::SubstructLibrary::countMatches ( const ROMol & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1 ) const

overload

◆ countMatches() [7/7]

unsigned int RDKit::SubstructLibrary::countMatches ( const TautomerQuery & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1 ) const

overload

◆ getFingerprints() [1/2]

FPHolderBase & RDKit::SubstructLibrary::getFingerprints ( )
inline

Get the underlying fingerprint implementation.

Throws a value error if no fingerprints have been set

Definition at line 625 of file SubstructLibrary.h.

◆ getFingerprints() [2/2]

const FPHolderBase & RDKit::SubstructLibrary::getFingerprints ( ) const
inline

Definition at line 632 of file SubstructLibrary.h.

◆ getFpHolder() [1/2]

boost::shared_ptr< FPHolderBase > & RDKit::SubstructLibrary::getFpHolder ( )
inline

Get the underlying molecule holder implementation.

Definition at line 603 of file SubstructLibrary.h.

◆ getFpHolder() [2/2]

const boost::shared_ptr< FPHolderBase > & RDKit::SubstructLibrary::getFpHolder ( ) const
inline

Get the underlying molecule holder implementation.

Definition at line 606 of file SubstructLibrary.h.

◆ getKeyHolder() [1/2]

boost::shared_ptr< KeyHolderBase > & RDKit::SubstructLibrary::getKeyHolder ( )
inline

Get the underlying molecule holder implementation.

Definition at line 611 of file SubstructLibrary.h.

◆ getKeyHolder() [2/2]

const boost::shared_ptr< KeyHolderBase > & RDKit::SubstructLibrary::getKeyHolder ( ) const
inline

Get the underlying molecule holder implementation.

Definition at line 614 of file SubstructLibrary.h.

◆ getKeys() [1/2]

KeyHolderBase & RDKit::SubstructLibrary::getKeys ( )
inline

Get the underlying key holder implementation.

Throws a value error if no keyholder have been set

Definition at line 641 of file SubstructLibrary.h.

◆ getKeys() [2/2]

const KeyHolderBase & RDKit::SubstructLibrary::getKeys ( ) const
inline

Get the underlying key holder implementation.

Throws a value error if no keyholder have been set

Definition at line 650 of file SubstructLibrary.h.

◆ getMatches() [1/7]

std::vector< unsigned int > RDKit::SubstructLibrary::getMatches ( const ExtendedQueryMol & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1,
int maxResults = -1 ) const

overload

◆ getMatches() [2/7]

std::vector< unsigned int > RDKit::SubstructLibrary::getMatches ( const MolBundle & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1,
int maxResults = -1 ) const

overload

◆ getMatches() [3/7]

template<class Query >
std::vector< unsigned int > RDKit::SubstructLibrary::getMatches ( const Query & query,
bool recursionPossible = true,
bool useChirality = true,
bool useQueryQueryMatches = false,
int numThreads = -1,
int maxResults = -1 ) const
inline

Get the matching indices for the query.

Parameters
queryQuery or Tautomer Query to match against molecules
recursionPossibleflags whether or not recursive matches are allowed [default true]
useChiralityuse atomic CIP codes as part of the comparison [default true]
useQueryQueryMatchesif set, the contents of atom and bond queries will be used as part of the matching [default false]
numThreadsIf -1 use all available processors [default -1]
maxResultsMaximum results to return, -1 means return all [default -1]

Definition at line 680 of file SubstructLibrary.h.

References RDKit::SubstructMatchParameters::recursionPossible, RDKit::SubstructMatchParameters::useChirality, and RDKit::SubstructMatchParameters::useQueryQueryMatches.

◆ getMatches() [4/7]

template<class Query >
std::vector< unsigned int > RDKit::SubstructLibrary::getMatches ( const Query & query,
const SubstructMatchParameters & params,
int numThreads = -1,
int maxResults = -1 ) const
inline

overload

Definition at line 694 of file SubstructLibrary.h.

◆ getMatches() [5/7]

template<class Query >
std::vector< unsigned int > RDKit::SubstructLibrary::getMatches ( const Query & query,
unsigned int startIdx,
unsigned int endIdx,
bool recursionPossible = true,
bool useChirality = true,
bool useQueryQueryMatches = false,
int numThreads = -1,
int maxResults = -1 ) const
inline

Get the matching indices for the query between the given indices.

Parameters
queryQuery to match against molecules
startIdxStart index of the search
endIdxEnding idx (non-inclusive) of the search.
recursionPossibleflags whether or not recursive matches are allowed [default true]
useChiralityuse atomic CIP codes as part of the comparison [default true]
useQueryQueryMatchesif set, the contents of atom and bond queries will be used as part of the matching [default false]
numThreadsIf -1 use all available processors [default -1]
maxResultsMaximum results to return, -1 means return all [default -1]

Definition at line 717 of file SubstructLibrary.h.

References RDKit::SubstructMatchParameters::recursionPossible, RDKit::SubstructMatchParameters::useChirality, and RDKit::SubstructMatchParameters::useQueryQueryMatches.

◆ getMatches() [6/7]

std::vector< unsigned int > RDKit::SubstructLibrary::getMatches ( const ROMol & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1,
int maxResults = -1 ) const

overload

◆ getMatches() [7/7]

std::vector< unsigned int > RDKit::SubstructLibrary::getMatches ( const TautomerQuery & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1,
int maxResults = -1 ) const

overload

◆ getMol()

boost::shared_ptr< ROMol > RDKit::SubstructLibrary::getMol ( unsigned int idx) const
inline

Returns the molecule at the given index.

Parameters
idxIndex of the molecule in the library (n.b. could contain null)

Definition at line 910 of file SubstructLibrary.h.

References RDKit::MolHolderBase::getMol(), and PRECONDITION.

◆ getMolecules()

const MolHolderBase & RDKit::SubstructLibrary::getMolecules ( ) const
inline

Definition at line 618 of file SubstructLibrary.h.

References PRECONDITION.

◆ getMolHolder() [1/2]

boost::shared_ptr< MolHolderBase > & RDKit::SubstructLibrary::getMolHolder ( )
inline

Get the underlying molecule holder implementation.

Definition at line 596 of file SubstructLibrary.h.

◆ getMolHolder() [2/2]

const boost::shared_ptr< MolHolderBase > & RDKit::SubstructLibrary::getMolHolder ( ) const
inline

Definition at line 598 of file SubstructLibrary.h.

◆ getSearchOrder() [1/2]

std::vector< unsigned int > & RDKit::SubstructLibrary::getSearchOrder ( )
inline

Definition at line 947 of file SubstructLibrary.h.

◆ getSearchOrder() [2/2]

const std::vector< unsigned int > & RDKit::SubstructLibrary::getSearchOrder ( ) const
inline

Definition at line 943 of file SubstructLibrary.h.

◆ hasMatch() [1/7]

bool RDKit::SubstructLibrary::hasMatch ( const ExtendedQueryMol & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1 ) const

overload

◆ hasMatch() [2/7]

bool RDKit::SubstructLibrary::hasMatch ( const MolBundle & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1 ) const

overload

◆ hasMatch() [3/7]

template<class Query >
bool RDKit::SubstructLibrary::hasMatch ( const Query & query,
bool recursionPossible = true,
bool useChirality = true,
bool useQueryQueryMatches = false,
int numThreads = -1 ) const
inline

Returns true if any match exists for the query.

Parameters
queryMolecule or Tautomer Query to match against molecules
recursionPossibleflags whether or not recursive matches are allowed [default true]
useChiralityuse atomic CIP codes as part of the comparison [default true]
useQueryQueryMatchesif set, the contents of atom and bond queries will be used as part of the matching [default false]
numThreadsIf -1 use all available processors [default -1]

Definition at line 851 of file SubstructLibrary.h.

References RDKit::SubstructMatchParameters::recursionPossible, RDKit::SubstructMatchParameters::useChirality, and RDKit::SubstructMatchParameters::useQueryQueryMatches.

◆ hasMatch() [4/7]

template<class Query >
bool RDKit::SubstructLibrary::hasMatch ( const Query & query,
const SubstructMatchParameters & params,
int numThreads = -1 ) const
inline

overload

Definition at line 862 of file SubstructLibrary.h.

◆ hasMatch() [5/7]

template<class Query >
bool RDKit::SubstructLibrary::hasMatch ( const Query & query,
unsigned int startIdx,
unsigned int endIdx,
bool recursionPossible = true,
bool useChirality = true,
bool useQueryQueryMatches = false,
int numThreads = -1 ) const
inline

Returns true if any match exists for the query between the specified indices

Parameters
queryQuery to match against molecules
startIdxStart index of the search
endIdxEnding idx (inclusive) of the search.
recursionPossibleflags whether or not recursive matches are allowed [default true]
useChiralityuse atomic CIP codes as part of the comparison [default true]
useQueryQueryMatchesif set, the contents of atom and bond queries will be used as part of the matching [default false]
numThreadsIf -1 use all available processors [default -1]

Definition at line 880 of file SubstructLibrary.h.

References RDKit::SubstructMatchParameters::recursionPossible, RDKit::SubstructMatchParameters::useChirality, and RDKit::SubstructMatchParameters::useQueryQueryMatches.

◆ hasMatch() [6/7]

bool RDKit::SubstructLibrary::hasMatch ( const ROMol & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1 ) const

overload

◆ hasMatch() [7/7]

bool RDKit::SubstructLibrary::hasMatch ( const TautomerQuery & query,
unsigned int startIdx,
unsigned int endIdx,
const SubstructMatchParameters & params,
int numThreads = -1 ) const

overload

◆ initFromStream()

void RDKit::SubstructLibrary::initFromStream ( std::istream & ss)

initializes from a stream pickle

◆ initFromString()

void RDKit::SubstructLibrary::initFromString ( const std::string & text)

initializes from a string pickle

◆ operator[]()

boost::shared_ptr< ROMol > RDKit::SubstructLibrary::operator[] ( unsigned int idx)
inline

Returns the molecule at the given index.

Parameters
idxIndex of the molecule in the library (n.b. could contain null)

Definition at line 921 of file SubstructLibrary.h.

References RDKit::MolHolderBase::getMol(), and PRECONDITION.

◆ resetHolders()

void RDKit::SubstructLibrary::resetHolders ( )
inline

access required for serialization

Definition at line 949 of file SubstructLibrary.h.

◆ Serialize()

std::string RDKit::SubstructLibrary::Serialize ( ) const

returns a string with a serialized (pickled) representation

◆ setSearchOrder()

void RDKit::SubstructLibrary::setSearchOrder ( const std::vector< unsigned int > & order)
inline

does error checking

Definition at line 934 of file SubstructLibrary.h.

References RDKit::MolHolderBase::size().

◆ size()

unsigned int RDKit::SubstructLibrary::size ( ) const
inline

return the number of molecules in the library

Definition at line 928 of file SubstructLibrary.h.

References PRECONDITION.

◆ toStream()

void RDKit::SubstructLibrary::toStream ( std::ostream & ss) const

serializes (pickles) to a stream


The documentation for this class was generated from the following file: