Chemical Data Processing Library C++ API - Version 1.4.0
Pharm/FeatureFunctions.hpp
Go to the documentation of this file.
1 /*
2  * FeatureFunctions.hpp
3  *
4  * This file is part of the Chemical Data Processing Toolkit
5  *
6  * Copyright (C) 2003 Thomas Seidel <thomas.seidel@univie.ac.at>
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public License
19  * along with this library; see the file COPYING. If not, write to
20  * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21  * Boston, MA 02111-1307, USA.
22  */
23 
29 #ifndef CDPL_PHARM_FEATUREFUNCTIONS_HPP
30 #define CDPL_PHARM_FEATUREFUNCTIONS_HPP
31 
32 #include <string>
33 
34 #include "CDPL/Pharm/APIPrefix.hpp"
35 #include "CDPL/Chem/Fragment.hpp"
36 #include "CDPL/Math/Vector.hpp"
37 
38 
39 namespace CDPL
40 {
41 
42  namespace Pharm
43  {
44 
45  class Feature;
46 
52  CDPL_PHARM_API unsigned int getType(const Feature& feature);
53 
59  CDPL_PHARM_API void setType(Feature& feature, unsigned int type);
60 
66 
72  CDPL_PHARM_API bool hasType(const Feature& feature);
73 
74 
80  CDPL_PHARM_API unsigned int getGeometry(const Feature& feature);
81 
87  CDPL_PHARM_API void setGeometry(Feature& feature, unsigned int geom);
88 
94 
100  CDPL_PHARM_API bool hasGeometry(const Feature& feature);
101 
102 
109 
115  CDPL_PHARM_API void setOrientation(Feature& feature, const Math::Vector3D& orient);
116 
122 
128  CDPL_PHARM_API bool hasOrientation(const Feature& feature);
129 
130 
136  CDPL_PHARM_API double getLength(const Feature& feature);
137 
143  CDPL_PHARM_API void setLength(Feature& feature, double length);
144 
150 
156  CDPL_PHARM_API bool hasLength(const Feature& feature);
157 
158 
164  CDPL_PHARM_API double getTolerance(const Feature& feature);
165 
171  CDPL_PHARM_API void setTolerance(Feature& feature, double tol);
172 
178 
184  CDPL_PHARM_API bool hasTolerance(const Feature& feature);
185 
186 
192  CDPL_PHARM_API double getWeight(const Feature& feature);
193 
199  CDPL_PHARM_API void setWeight(Feature& feature, double weight);
200 
206 
212  CDPL_PHARM_API bool hasWeight(const Feature& feature);
213 
214 
221 
228 
234 
240  CDPL_PHARM_API bool hasSubstructure(const Feature& feature);
241 
248  CDPL_PHARM_API std::string getEnvironmentResidueInfo(const Feature& feature);
249 
257  CDPL_PHARM_API std::string& getEnvironmentResidueInfo(const Feature& feature, std::string& info);
258 
266 
274  CDPL_PHARM_API std::string& getEnvironmentResidueAtomInfo(const Feature& feature, std::string& info);
275 
283 
290 
296 
303 
304 
310  CDPL_PHARM_API bool getDisabledFlag(const Feature& feature);
311 
317  CDPL_PHARM_API void setDisabledFlag(Feature& feature, bool flag);
318 
324 
330  CDPL_PHARM_API bool hasDisabledFlag(const Feature& feature);
331 
332 
338  CDPL_PHARM_API bool getOptionalFlag(const Feature& feature);
339 
345  CDPL_PHARM_API void setOptionalFlag(Feature& feature, bool flag);
346 
352 
358  CDPL_PHARM_API bool hasOptionalFlag(const Feature& feature);
359 
360 
366  CDPL_PHARM_API double getHydrophobicity(const Feature& feature);
367 
373  CDPL_PHARM_API void setHydrophobicity(Feature& feature, double hyd);
374 
380 
387 
388  } // namespace Pharm
389 } // namespace CDPL
390 
391 #endif // CDPL_PHARM_FEATUREFUNCTIONS_HPP
Definition of class CDPL::Chem::Fragment.
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.
Definition of vector data types.
std::shared_ptr< Fragment > SharedPointer
A reference-counted smart pointer [SHPTR] for dynamically allocated Fragment instances.
Definition: Fragment.hpp:66
Abstract base class representing a single pharmacophore feature within a parent Pharm::Pharmacophore.
Definition: Feature.hpp:48
VectorNorm2< E >::ResultType length(const VectorExpression< E > &e)
Returns the length (L2 norm) of the vector expression e (alias of norm2()).
Definition: VectorExpression.hpp:979
CVector< double, 3 > Vector3D
Bounded 3 element vector holding floating point values of type double.
Definition: Vector.hpp:2937
CDPL_PHARM_API void clearEnvironmentSubstructure(Feature &feature)
Removes the Pharm::FeatureProperty::ENVIRONMENT_SUBSTRUCTURE property from feature.
CDPL_PHARM_API bool hasGeometry(const Feature &feature)
Tells whether the Pharm::FeatureProperty::GEOMETRY property of feature has been set.
CDPL_PHARM_API void clearWeight(Feature &feature)
Removes the Pharm::FeatureProperty::WEIGHT property from feature.
CDPL_PHARM_API std::string getEnvironmentResidueAtomInfo(const Feature &feature)
Generates a string describing the per-atom residue environment of feature (residue names and atom nam...
CDPL_PHARM_API void setOrientation(Feature &feature, const Math::Vector3D &orient)
Sets the Pharm::FeatureProperty::ORIENTATION property of feature.
CDPL_PHARM_API bool hasLength(const Feature &feature)
Tells whether the Pharm::FeatureProperty::LENGTH property of feature has been set.
CDPL_PHARM_API bool hasWeight(const Feature &feature)
Tells whether the Pharm::FeatureProperty::WEIGHT property of feature has been set.
CDPL_PHARM_API void clearOrientation(Feature &feature)
Removes the Pharm::FeatureProperty::ORIENTATION property from feature.
CDPL_PHARM_API void setHydrophobicity(Feature &feature, double hyd)
Sets the Pharm::FeatureProperty::HYDROPHOBICITY property of feature.
CDPL_PHARM_API void clearLength(Feature &feature)
Removes the Pharm::FeatureProperty::LENGTH property from feature.
CDPL_PHARM_API void clearType(Feature &feature)
Removes the Pharm::FeatureProperty::TYPE property from feature.
CDPL_PHARM_API void setSubstructure(Feature &feature, const Chem::Fragment::SharedPointer &substruct)
Sets the Pharm::FeatureProperty::SUBSTRUCTURE property of feature.
CDPL_PHARM_API void setWeight(Feature &feature, double weight)
Sets the Pharm::FeatureProperty::WEIGHT property of feature.
CDPL_PHARM_API bool getOptionalFlag(const Feature &feature)
Returns the Pharm::FeatureProperty::OPTIONAL_FLAG property of feature.
CDPL_PHARM_API const Chem::Fragment::SharedPointer & getEnvironmentSubstructure(const Feature &feature)
Returns the Pharm::FeatureProperty::ENVIRONMENT_SUBSTRUCTURE property of feature (interacting pocket ...
CDPL_PHARM_API void setOptionalFlag(Feature &feature, bool flag)
Sets the Pharm::FeatureProperty::OPTIONAL_FLAG property of feature.
CDPL_PHARM_API const Chem::Fragment::SharedPointer & getSubstructure(const Feature &feature)
Returns the Pharm::FeatureProperty::SUBSTRUCTURE property of feature (the underlying atoms/bonds).
CDPL_PHARM_API void clearGeometry(Feature &feature)
Removes the Pharm::FeatureProperty::GEOMETRY property from feature.
CDPL_PHARM_API void setType(Feature &feature, unsigned int type)
Sets the Pharm::FeatureProperty::TYPE property of feature.
CDPL_PHARM_API void setDisabledFlag(Feature &feature, bool flag)
Sets the Pharm::FeatureProperty::DISABLED_FLAG property of feature.
CDPL_PHARM_API void setTolerance(Feature &feature, double tol)
Sets the Pharm::FeatureProperty::TOLERANCE property of feature.
CDPL_PHARM_API void setGeometry(Feature &feature, unsigned int geom)
Sets the Pharm::FeatureProperty::GEOMETRY property of feature.
CDPL_PHARM_API double getHydrophobicity(const Feature &feature)
Returns the Pharm::FeatureProperty::HYDROPHOBICITY property of feature.
CDPL_PHARM_API bool hasOptionalFlag(const Feature &feature)
Tells whether the Pharm::FeatureProperty::OPTIONAL_FLAG property of feature has been set.
CDPL_PHARM_API std::string getEnvironmentResidueInfo(const Feature &feature)
Generates a string describing the residue environment of feature (residue names of interacting pocket...
CDPL_PHARM_API const Math::Vector3D & getOrientation(const Feature &feature)
Returns the Pharm::FeatureProperty::ORIENTATION property of feature.
CDPL_PHARM_API void clearSubstructure(Feature &feature)
Removes the Pharm::FeatureProperty::SUBSTRUCTURE property from feature.
CDPL_PHARM_API void clearOptionalFlag(Feature &feature)
Removes the Pharm::FeatureProperty::OPTIONAL_FLAG property from feature.
CDPL_PHARM_API bool hasTolerance(const Feature &feature)
Tells whether the Pharm::FeatureProperty::TOLERANCE property of feature has been set.
CDPL_PHARM_API bool hasEnvironmentSubstructure(const Feature &feature)
Tells whether the Pharm::FeatureProperty::ENVIRONMENT_SUBSTRUCTURE property of feature has been set.
CDPL_PHARM_API bool hasHydrophobicity(const Feature &feature)
Tells whether the Pharm::FeatureProperty::HYDROPHOBICITY property of feature has been set.
CDPL_PHARM_API unsigned int getType(const Feature &feature)
Returns the Pharm::FeatureProperty::TYPE property of feature.
CDPL_PHARM_API void setEnvironmentSubstructure(Feature &feature, const Chem::Fragment::SharedPointer &substruct)
Sets the Pharm::FeatureProperty::ENVIRONMENT_SUBSTRUCTURE property of feature.
CDPL_PHARM_API bool hasSubstructure(const Feature &feature)
Tells whether the Pharm::FeatureProperty::SUBSTRUCTURE property of feature has been set.
CDPL_PHARM_API bool hasOrientation(const Feature &feature)
Tells whether the Pharm::FeatureProperty::ORIENTATION property of feature has been set.
CDPL_PHARM_API void clearTolerance(Feature &feature)
Removes the Pharm::FeatureProperty::TOLERANCE property from feature.
CDPL_PHARM_API void clearDisabledFlag(Feature &feature)
Removes the Pharm::FeatureProperty::DISABLED_FLAG property from feature.
CDPL_PHARM_API double getWeight(const Feature &feature)
Returns the Pharm::FeatureProperty::WEIGHT property of feature.
CDPL_PHARM_API void setLength(Feature &feature, double length)
Sets the Pharm::FeatureProperty::LENGTH property of feature.
CDPL_PHARM_API bool hasDisabledFlag(const Feature &feature)
Tells whether the Pharm::FeatureProperty::DISABLED_FLAG property of feature has been set.
CDPL_PHARM_API double getTolerance(const Feature &feature)
Returns the Pharm::FeatureProperty::TOLERANCE property of feature.
CDPL_PHARM_API bool hasType(const Feature &feature)
Tells whether the Pharm::FeatureProperty::TYPE property of feature has been set.
CDPL_PHARM_API unsigned int getGeometry(const Feature &feature)
Returns the Pharm::FeatureProperty::GEOMETRY property of feature.
CDPL_PHARM_API double getLength(const Feature &feature)
Returns the Pharm::FeatureProperty::LENGTH property of feature.
CDPL_PHARM_API bool getDisabledFlag(const Feature &feature)
Returns the Pharm::FeatureProperty::DISABLED_FLAG property of feature.
CDPL_PHARM_API void clearHydrophobicity(Feature &feature)
Removes the Pharm::FeatureProperty::HYDROPHOBICITY property from feature.
The namespace of the Chemical Data Processing Library.