RDKit
Open-source cheminformatics and machine learning.
RDKit::RandomSampleStrategy Class Reference

This is a class for fully randomly sampling reagents. More...

#include <RandomSample.h>

Inheritance diagram for RDKit::RandomSampleStrategy:
RDKit::EnumerationStrategyBase

Public Member Functions

 RandomSampleStrategy ()
 
virtual void initializeStrategy (const ChemicalReaction &, const EnumerationTypes::BBS &)
 
virtual const char * type () const
 
virtual const EnumerationTypes::RGROUPS & next ()
 The current permutation {r1, r2, ...}. More...
 
virtual boost::uint64_t getPermutationIdx () const
 Returns how many permutations have been processed by this strategy. More...
 
virtual operator bool () const
 
EnumerationStrategyBase * copy () const
 copy the enumeration strategy complete with current state More...
 
void initialize (const ChemicalReaction &reaction, const EnumerationTypes::BBS &building_blocks)
 
- Public Member Functions inherited from RDKit::EnumerationStrategyBase
 EnumerationStrategyBase ()
 
virtual ~EnumerationStrategyBase ()
 
void initialize (const ChemicalReaction &reaction, const EnumerationTypes::BBS &building_blocks)
 
const EnumerationTypes::RGROUPS & getPosition () const
 The current position in the enumeration. More...
 
boost::uint64_t getNumPermutations () const
 
bool skip (boost::uint64_t skipCount)
 

Additional Inherited Members

- Static Public Attributes inherited from RDKit::EnumerationStrategyBase
static const boost::uint64_t EnumerationOverflow
 
- Protected Member Functions inherited from RDKit::EnumerationStrategyBase
void internalInitialize (const EnumerationTypes::RGROUPS &rgroups)
 
- Protected Attributes inherited from RDKit::EnumerationStrategyBase
EnumerationTypes::RGROUPS m_permutation
 
EnumerationTypes::RGROUPS m_permutationSizes
 
boost::uint64_t m_numPermutations
 

Detailed Description

This is a class for fully randomly sampling reagents.

basic usage:

std::vector<MOL_SPTR_VECT> bbs;
bbs.push_back( bbs_for_reactants_1 );
bbs.push_back( bbs_for_reactants_2 );

RandomSampleStrategy rgroups;
rgroups.initialize(rxn, bbs);
for(size_t i=0; i<num_samples && rgroups; ++i) {
  MOL_SPTR_VECT rvect = getReactantsFromRGroups(bbs, rgroups.next());
  std::vector<MOL_SPTR_VECT> lprops = rxn.RunReactants(rvect);
  ...
}

See EnumerationStrategyBase for more details and usage.

Definition at line 65 of file RandomSample.h.

Constructor & Destructor Documentation

◆ RandomSampleStrategy()

RDKit::RandomSampleStrategy::RandomSampleStrategy ( )
inline

Definition at line 72 of file RandomSample.h.

Member Function Documentation

◆ copy()

EnumerationStrategyBase* RDKit::RandomSampleStrategy::copy ( ) const
inlinevirtual

copy the enumeration strategy complete with current state

Implements RDKit::EnumerationStrategyBase.

Definition at line 115 of file RandomSample.h.

◆ getPermutationIdx()

virtual boost::uint64_t RDKit::RandomSampleStrategy::getPermutationIdx ( ) const
inlinevirtual

Returns how many permutations have been processed by this strategy.

Implements RDKit::EnumerationStrategyBase.

Definition at line 109 of file RandomSample.h.

◆ initialize()

void RDKit::EnumerationStrategyBase::initialize
inline

Initialize the enumerator based on the reaction and the supplied building blocks This is the standard API point.

Definition at line 141 of file EnumerationStrategyBase.h.

◆ initializeStrategy()

virtual void RDKit::RandomSampleStrategy::initializeStrategy ( const ChemicalReaction &  ,
const EnumerationTypes::BBS &   
)
inlinevirtual

Implements RDKit::EnumerationStrategyBase.

Definition at line 85 of file RandomSample.h.

◆ next()

virtual const EnumerationTypes::RGROUPS& RDKit::RandomSampleStrategy::next ( )
inlinevirtual

The current permutation {r1, r2, ...}.

Implements RDKit::EnumerationStrategyBase.

Definition at line 99 of file RandomSample.h.

◆ operator bool()

virtual RDKit::RandomSampleStrategy::operator bool ( ) const
inlinevirtual

returns true if there are more permutations left random enumerators may always return true...

Implements RDKit::EnumerationStrategyBase.

Definition at line 113 of file RandomSample.h.

◆ type()

virtual const char* RDKit::RandomSampleStrategy::type ( ) const
inlinevirtual

Reimplemented from RDKit::EnumerationStrategyBase.

Definition at line 96 of file RandomSample.h.


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