29 #ifndef CDPL_SHAPE_SCREENINGSETTINGS_HPP
30 #define CDPL_SHAPE_SCREENINGSETTINGS_HPP
45 class AlignmentResult;
62 static constexpr
double NO_CUTOFF = std::numeric_limits<double>::quiet_NaN();
78 BEST_MATCH_PER_QUERY_CONF
92 PHARMACOPHORE_IMP_CHARGES
104 SHAPE_CENTROID = 0x1,
108 COLOR_FEATURE_CENTERS = 0x4,
267 std::size_t numRandomStarts;
269 bool singleConfSearch;
272 std::size_t numOptIter;
Definition of the preprocessor macro CDPL_SHAPE_API.
#define CDPL_SHAPE_API
Tells the compiler/linker which classes, functions and variables are part of the library API.
Result of a Gaussian-shape alignment between a reference and an aligned shape.
Definition: AlignmentResult.hpp:52
Bundle of configuration parameters for Shape::ScreeningProcessor.
Definition: ScreeningSettings.hpp:55
void setScreeningMode(ScreeningMode mode)
Sets the screening mode.
std::size_t getMaxNumOptimizationIterations() const
Returns the currently configured maximum number of overlap-optimization iterations.
static const ScreeningSettings DEFAULT
A static instance with default-initialized values.
Definition: ScreeningSettings.hpp:59
AlignmentMode getAlignmentMode() const
Returns the currently configured alignment-mode bitmask.
void setMaxNumOptimizationIterations(std::size_t max_iter)
Sets the maximum number of overlap-optimization iterations.
ScreeningSettings()
Constructs a ScreeningSettings instance with default values.
ScreeningMode getScreeningMode() const
Returns the currently configured screening mode.
void greedyOptimization(bool greedy)
Specifies whether the overlap optimization shall use a greedy strategy that stops at the first local ...
ScreeningMode
Specifies which alignment hits are reported by the screening processor.
Definition: ScreeningSettings.hpp:71
@ BEST_MATCH_PER_QUERY
Report the best-scoring alignment hit per query molecule.
Definition: ScreeningSettings.hpp:76
@ BEST_OVERALL_MATCH
Report only the single best-scoring alignment hit across all queries.
Definition: ScreeningSettings.hpp:74
bool greedyOptimization() const
Tells whether the overlap optimization uses a greedy strategy.
void setColorFeatureType(ColorFeatureType type)
Sets the color feature type to use during alignment.
std::size_t getNumRandomStarts() const
Returns the currently configured number of random starts.
void setScoreCutoff(double cutoff)
Sets the minimum score below which alignment hits are discarded (or NO_CUTOFF).
void optimizeOverlap(bool optimize)
Specifies whether the overlap shall be optimized iteratively after the initial alignment.
ColorFeatureType getColorFeatureType() const
Returns the currently configured color feature type.
void setNumRandomStarts(std::size_t num_starts)
Sets the number of random starting transformations when AlignmentMode::RANDOM is enabled.
void setAlignmentMode(AlignmentMode mode)
Sets the alignment-mode bitmask (see AlignmentMode).
void singleConformerSearch(bool single_conf)
Specifies whether only a single conformer of each molecule is considered.
bool singleConformerSearch() const
Tells whether only a single conformer of each molecule is considered.
void setScoringFunction(const ScoringFunction &func)
Sets the scoring function used to rank alignment results.
const ScoringFunction & getScoringFunction() const
Returns the currently configured scoring function.
bool allCarbonMode() const
Tells whether the all-carbon mode is enabled.
ColorFeatureType
Specifies which kind of color (pharmacophore) features are used during shape alignment.
Definition: ScreeningSettings.hpp:85
@ NO_FEATURES
Disable color features (shape-only alignment).
Definition: ScreeningSettings.hpp:88
@ PHARMACOPHORE_EXP_CHARGES
Use pharmacophore features derived from explicit charges.
Definition: ScreeningSettings.hpp:90
void setOptimizationStopGradient(double grad_norm)
Sets the gradient norm at which the overlap optimization is stopped.
std::function< double(const AlignmentResult &)> ScoringFunction
Type of the function used to score an alignment result.
Definition: ScreeningSettings.hpp:65
void allCarbonMode(bool all_c)
Enables or disables the all-carbon mode (treats every heavy atom as carbon for shape generation).
bool optimizeOverlap() const
Tells whether the overlap is optimized iteratively.
double getScoreCutoff() const
Returns the currently configured score cutoff (or NO_CUTOFF).
double getOptimizationStopGradient() const
Returns the currently configured overlap-optimization stop gradient.
AlignmentMode
Bitmask flags specifying the strategies used to seed alignment starting transformations.
Definition: ScreeningSettings.hpp:99
The namespace of the Chemical Data Processing Library.