Chemical Data Processing Library C++ API - Version 1.3.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 
47  CDPL_PHARM_API unsigned int getType(const Feature& feature);
48 
49  CDPL_PHARM_API void setType(Feature& feature, unsigned int type);
50 
52 
53  CDPL_PHARM_API bool hasType(const Feature& feature);
54 
55 
56  CDPL_PHARM_API unsigned int getGeometry(const Feature& feature);
57 
58  CDPL_PHARM_API void setGeometry(Feature& feature, unsigned int geom);
59 
61 
62  CDPL_PHARM_API bool hasGeometry(const Feature& feature);
63 
64 
66 
67  CDPL_PHARM_API void setOrientation(Feature& feature, const Math::Vector3D& orient);
68 
70 
71  CDPL_PHARM_API bool hasOrientation(const Feature& feature);
72 
73 
74  CDPL_PHARM_API double getLength(const Feature& feature);
75 
76  CDPL_PHARM_API void setLength(Feature& feature, double length);
77 
79 
80  CDPL_PHARM_API bool hasLength(const Feature& feature);
81 
82 
83  CDPL_PHARM_API double getTolerance(const Feature& feature);
84 
85  CDPL_PHARM_API void setTolerance(Feature& feature, double tol);
86 
88 
89  CDPL_PHARM_API bool hasTolerance(const Feature& feature);
90 
91 
92  CDPL_PHARM_API double getWeight(const Feature& feature);
93 
94  CDPL_PHARM_API void setWeight(Feature& feature, double weight);
95 
97 
98  CDPL_PHARM_API bool hasWeight(const Feature& feature);
99 
100 
102 
104 
106 
107  CDPL_PHARM_API bool hasSubstructure(const Feature& feature);
108 
112  CDPL_PHARM_API const std::string& getEnvironmentResidueInfo(const Feature& feature);
113 
114  CDPL_PHARM_API void setEnvironmentResidueInfo(Feature& feature, const std::string& res_info);
115 
117 
119 
120 
121  CDPL_PHARM_API bool getDisabledFlag(const Feature& feature);
122 
123  CDPL_PHARM_API void setDisabledFlag(Feature& feature, bool flag);
124 
126 
127  CDPL_PHARM_API bool hasDisabledFlag(const Feature& feature);
128 
129 
130  CDPL_PHARM_API bool getOptionalFlag(const Feature& feature);
131 
132  CDPL_PHARM_API void setOptionalFlag(Feature& feature, bool flag);
133 
135 
136  CDPL_PHARM_API bool hasOptionalFlag(const Feature& feature);
137 
138 
139  CDPL_PHARM_API double getHydrophobicity(const Feature& feature);
140 
141  CDPL_PHARM_API void setHydrophobicity(Feature& feature, double hyd);
142 
144 
146 
147  } // namespace Pharm
148 } // namespace CDPL
149 
150 #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:61
Feature.
Definition: Feature.hpp:48
VectorNorm2< E >::ResultType length(const VectorExpression< E > &e)
Definition: VectorExpression.hpp:553
CVector< double, 3 > Vector3D
A bounded 3 element vector holding floating point values of type double.
Definition: Vector.hpp:1637
CDPL_PHARM_API bool hasGeometry(const Feature &feature)
CDPL_PHARM_API void clearWeight(Feature &feature)
CDPL_PHARM_API void setOrientation(Feature &feature, const Math::Vector3D &orient)
CDPL_PHARM_API bool hasLength(const Feature &feature)
CDPL_PHARM_API bool hasWeight(const Feature &feature)
CDPL_PHARM_API void clearOrientation(Feature &feature)
CDPL_PHARM_API void setHydrophobicity(Feature &feature, double hyd)
CDPL_PHARM_API void clearLength(Feature &feature)
CDPL_PHARM_API void clearType(Feature &feature)
CDPL_PHARM_API void setSubstructure(Feature &feature, const Chem::Fragment::SharedPointer &substruct)
CDPL_PHARM_API void setWeight(Feature &feature, double weight)
CDPL_PHARM_API bool getOptionalFlag(const Feature &feature)
CDPL_PHARM_API void setEnvironmentResidueInfo(Feature &feature, const std::string &res_info)
CDPL_PHARM_API void setOptionalFlag(Feature &feature, bool flag)
CDPL_PHARM_API const Chem::Fragment::SharedPointer & getSubstructure(const Feature &feature)
CDPL_PHARM_API void clearGeometry(Feature &feature)
CDPL_PHARM_API void setType(Feature &feature, unsigned int type)
CDPL_PHARM_API void setDisabledFlag(Feature &feature, bool flag)
CDPL_PHARM_API void setTolerance(Feature &feature, double tol)
CDPL_PHARM_API void setGeometry(Feature &feature, unsigned int geom)
CDPL_PHARM_API double getHydrophobicity(const Feature &feature)
CDPL_PHARM_API bool hasOptionalFlag(const Feature &feature)
CDPL_PHARM_API const Math::Vector3D & getOrientation(const Feature &feature)
CDPL_PHARM_API void clearEnvironmentResidueInfo(Feature &feature)
CDPL_PHARM_API void clearSubstructure(Feature &feature)
CDPL_PHARM_API void clearOptionalFlag(Feature &feature)
CDPL_PHARM_API bool hasTolerance(const Feature &feature)
CDPL_PHARM_API bool hasHydrophobicity(const Feature &feature)
CDPL_PHARM_API unsigned int getType(const Feature &feature)
CDPL_PHARM_API bool hasSubstructure(const Feature &feature)
CDPL_PHARM_API bool hasEnvironmentResidueInfo(const Feature &feature)
CDPL_PHARM_API bool hasOrientation(const Feature &feature)
CDPL_PHARM_API void clearTolerance(Feature &feature)
CDPL_PHARM_API void clearDisabledFlag(Feature &feature)
CDPL_PHARM_API double getWeight(const Feature &feature)
CDPL_PHARM_API void setLength(Feature &feature, double length)
CDPL_PHARM_API bool hasDisabledFlag(const Feature &feature)
CDPL_PHARM_API double getTolerance(const Feature &feature)
CDPL_PHARM_API bool hasType(const Feature &feature)
CDPL_PHARM_API unsigned int getGeometry(const Feature &feature)
CDPL_PHARM_API double getLength(const Feature &feature)
CDPL_PHARM_API bool getDisabledFlag(const Feature &feature)
CDPL_PHARM_API const std::string & getEnvironmentResidueInfo(const Feature &feature)
CDPL_PHARM_API void clearHydrophobicity(Feature &feature)
The namespace of the Chemical Data Processing Library.