29 #ifndef CDPL_PHARM_FEATURECONTAINERFUNCTIONS_HPP
30 #define CDPL_PHARM_FEATURECONTAINERFUNCTIONS_HPP
53 class FeatureContainer;
54 class FeatureTypeHistogram;
Type declaration of a generic wrapper class for storing user-defined Chem::Atom 3D-coordinates functi...
Definition of matrix data types.
Definition of the preprocessor macro CDPL_PHARM_API.
#define CDPL_PHARM_API
Tells the compiler/linker which classes, functions and variables are part of the library API.
Common interface for data structures that support a random access to stored Chem::Atom instances.
Definition: AtomContainer.hpp:55
Concrete Chem::MolecularGraph implementation that stores references to a selectable subset of atoms a...
Definition: Fragment.hpp:57
Abstract base class for containers holding a sequence of Pharm::Feature objects with associated prope...
Definition: FeatureContainer.hpp:55
Concrete Pharm::FeatureContainer implementation that stores references to existing Pharm::Feature ins...
Definition: FeatureSet.hpp:56
Data type for the storage of feature type histograms of pharmacophores.
Definition: FeatureTypeHistogram.hpp:50
std::function< const Math::Vector3D &(const Chem::Atom &)> Atom3DCoordinatesFunction
Generic wrapper class used to store a user-defined Chem::Atom 3D-coordinates function.
Definition: Atom3DCoordinatesFunction.hpp:43
CDPL_PHARM_API const std::string & getName(const FeatureContainer &cntnr)
Returns the name of the feature container cntnr (stored as Pharm::FeatureContainerProperty::NAME).
CDPL_PHARM_API void generateFeatureTypeHistogram(const FeatureContainer &cntnr, FeatureTypeHistogram &hist, bool append=false)
Computes a per Pharm::FeatureType frequency histogram of the features in cntnr.
CDPL_PHARM_API void generateFeatureTypeHistogramString(const FeatureContainer &cntnr, std::string &histo_str)
Generates a human-readable comma-separated string representation of the feature-type histogram of cnt...
CDPL_PHARM_API std::size_t getFeatureCount(const FeatureContainer &cntnr)
Returns the total number of features stored in the feature container cntnr.
CDPL_PHARM_API void clearOrientations(FeatureContainer &cntnr, bool fix_geom=true)
Clears the orientation property of every feature in cntnr and (optionally) resets each feature's geom...
CDPL_PHARM_API bool removePositionalDuplicates(const FeatureContainer &cntnr, FeatureSet &tgt_set, double pos_tol=0.0, bool append=false)
Copies the features in cntnr into tgt_set, suppressing features that share both type and 3D position ...
CDPL_PHARM_API bool checkForExclusionVolumeClashes(const FeatureContainer &ftr_cntnr, const Chem::AtomContainer &atom_cntnr, const Chem::Atom3DCoordinatesFunction &coords_func, const Math::Matrix4D &xform, double vdw_factor=1.0)
Tests whether the exclusion-volume features in ftr_cntnr remain clash-free with respect to the transf...
CDPL_PHARM_API void clearName(FeatureContainer &cntnr)
Removes the name property from the feature container cntnr.
CDPL_PHARM_API void setName(FeatureContainer &cntnr, const std::string &name)
Sets the name of the feature container cntnr.
CDPL_PHARM_API void getFeatureAtoms(const FeatureContainer &cntnr, Chem::Fragment &atoms, bool append=false)
Collects the atoms of the molecular substructures underlying the features of cntnr into atoms.
CDPL_PHARM_API void transform3DCoordinates(FeatureContainer &cntnr, const Math::Matrix4D &mtx)
Applies the affine transformation mtx to the 3D position (and, if set, the orientation vector) of eve...
CDPL_PHARM_API bool hasName(const FeatureContainer &cntnr)
Tells whether a name has been set for the feature container cntnr.
CDPL_PHARM_API bool removeFeaturesWithType(const FeatureContainer &cntnr, FeatureSet &tgt_set, unsigned int type, bool append=false)
Copies the features in cntnr into tgt_set, skipping every feature whose Pharm::FeatureType matches ty...
The namespace of the Chemical Data Processing Library.