High-level driver for pharmacophore-based screening of a Pharm::ScreeningDBAccessor-backed database against a query feature container, reporting alignment hits via a user-supplied callback.
More...
#include <ScreeningProcessor.hpp>
|
| class | SearchHit |
| | Data structure representing a single alignment hit produced by the screening processor, bundling the source pharmacophore/molecule, the alignment transformation and the source-database indices. More...
|
| |
High-level driver for pharmacophore-based screening of a Pharm::ScreeningDBAccessor-backed database against a query feature container, reporting alignment hits via a user-supplied callback.
◆ SharedPointer
A reference-counted smart pointer [SHPTR] for dynamically allocated ScreeningProcessor instances.
◆ HitCallbackFunction
Type of the callback invoked for every alignment hit (return: true to continue, false to abort the search).
◆ ScoringFunction
Type of the function used to score a search hit.
◆ ProgressCallbackFunction
Type of the progress-reporting callback (arguments: current molecule index, total molecule count; return: true to continue, false to abort).
◆ HitReportMode
Specifies which conformer-level hits are reported per molecule.
| Enumerator |
|---|
| FIRST_MATCHING_CONF | Report the first conformer that matches the query.
|
| BEST_MATCHING_CONF | Report only the best-scoring matching conformer.
|
| ALL_MATCHING_CONFS | Report every conformer that matches the query.
|
◆ ScreeningProcessor() [1/2]
Constructs the ScreeningProcessor instance for the given screening database accessor db_acc.
- Parameters
-
| db_acc | An accessor for the database to screen. |
◆ ScreeningProcessor() [2/2]
◆ ~ScreeningProcessor()
| CDPL::Pharm::ScreeningProcessor::~ScreeningProcessor |
( |
| ) |
|
◆ operator=()
◆ setDBAccessor()
Specifies the screening database accessor.
- Parameters
-
| db_acc | The new database accessor. |
◆ getDBAccessor()
Returns the currently configured screening database accessor.
- Returns
- A reference to the database accessor.
◆ setHitReportMode()
| void CDPL::Pharm::ScreeningProcessor::setHitReportMode |
( |
HitReportMode |
mode | ) |
|
Sets the hit-report mode.
- Parameters
-
| mode | The new hit-report mode. |
◆ getHitReportMode()
| HitReportMode CDPL::Pharm::ScreeningProcessor::getHitReportMode |
( |
| ) |
const |
Returns the currently configured hit-report mode.
- Returns
- The hit-report mode.
◆ setMaxNumOmittedFeatures()
| void CDPL::Pharm::ScreeningProcessor::setMaxNumOmittedFeatures |
( |
std::size_t |
max_num | ) |
|
Sets the maximum number of query features that may remain unmatched in a valid hit.
- Parameters
-
| max_num | The new maximum number of omitted features. |
◆ getMaxNumOmittedFeatures()
| std::size_t CDPL::Pharm::ScreeningProcessor::getMaxNumOmittedFeatures |
( |
| ) |
const |
Returns the currently configured maximum number of omitted features.
- Returns
- The maximum number of omitted features.
◆ checkXVolumeClashes()
| void CDPL::Pharm::ScreeningProcessor::checkXVolumeClashes |
( |
bool |
check | ) |
|
Specifies whether the alignment shall check exclusion-volume clashes between the query and the hit molecule.
- Parameters
-
| check | true to enable the clash check, and false to disable it. |
◆ xVolumeClashesChecked()
| bool CDPL::Pharm::ScreeningProcessor::xVolumeClashesChecked |
( |
| ) |
const |
Tells whether exclusion-volume clashes are checked during alignment.
- Returns
true if the clash check is enabled, and false otherwise.
◆ seekBestAlignments()
| void CDPL::Pharm::ScreeningProcessor::seekBestAlignments |
( |
bool |
seek_best | ) |
|
Specifies whether the alignment shall search for the best-scoring rather than the first valid alignment per pose.
- Parameters
-
| seek_best | true to seek the best alignment, and false to accept the first valid alignment. |
◆ bestAlignmentsSeeked()
| bool CDPL::Pharm::ScreeningProcessor::bestAlignmentsSeeked |
( |
| ) |
const |
Tells whether the alignment seeks the best-scoring rather than the first valid alignment.
- Returns
true if best-alignment seeking is enabled, and false otherwise.
◆ setHitCallback()
Specifies the hit-callback function.
- Parameters
-
| func | The hit-callback function. |
◆ getHitCallback()
Returns the currently configured hit-callback function.
- Returns
- A
const reference to the hit-callback function.
◆ setProgressCallback()
Specifies the progress-reporting callback.
- Parameters
-
| func | The progress-callback function. |
◆ getProgressCallback()
Returns the currently configured progress-reporting callback.
- Returns
- A
const reference to the progress-callback function.
◆ setScoringFunction()
| void CDPL::Pharm::ScreeningProcessor::setScoringFunction |
( |
const ScoringFunction & |
func | ) |
|
Specifies the function used to score a search hit.
- Parameters
-
| func | The scoring function. |
◆ getScoringFunction()
| const ScoringFunction& CDPL::Pharm::ScreeningProcessor::getScoringFunction |
( |
| ) |
const |
Returns the currently configured scoring function.
- Returns
- A
const reference to the scoring function.
◆ searchDB()
| std::size_t CDPL::Pharm::ScreeningProcessor::searchDB |
( |
const FeatureContainer & |
query, |
|
|
std::size_t |
mol_start_idx = 0, |
|
|
std::size_t |
mol_end_idx = 0 |
|
) |
| |
Screens the database with the supplied query pharmacophore.
- Parameters
-
| query | The query feature container. |
| mol_start_idx | The zero-based index of the first molecule to screen. |
| mol_end_idx | The exclusive upper bound of the molecule range; if 0, the search runs through the end of the database. |
- Returns
- The number of accepted hits produced by the search.
The documentation for this class was generated from the following file: