Chemical Data Processing Library C++ API - Version 1.4.0
AlignmentResult.hpp
Go to the documentation of this file.
1 /*
2  * AlignmentResult.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_SHAPE_ALIGNMENTRESULT_HPP
30 #define CDPL_SHAPE_ALIGNMENTRESULT_HPP
31 
32 #include <cstddef>
33 
34 #include "CDPL/Shape/APIPrefix.hpp"
35 #include "CDPL/Math/Matrix.hpp"
36 
37 
38 namespace CDPL
39 {
40 
41  namespace Shape
42  {
43 
52  {
53 
54  public:
59 
64  const Math::Matrix4D& getTransform() const;
65 
70  void setTransform(const Math::Matrix4D& xform);
71 
76  double getScore() const;
77 
82  void setScore(double score);
83 
88  std::size_t getReferenceShapeSetIndex() const;
89 
94  void setReferenceShapeSetIndex(std::size_t idx);
95 
100  std::size_t getReferenceShapeIndex() const;
101 
106  void setReferenceShapeIndex(std::size_t idx);
107 
112  std::size_t getAlignedShapeIndex() const;
113 
118  void setAlignedShapeIndex(std::size_t idx);
119 
124  double getReferenceSelfOverlap() const;
125 
130  void setReferenceSelfOverlap(double overlap);
131 
137 
142  void setReferenceColorSelfOverlap(double overlap);
143 
148  double getAlignedSelfOverlap() const;
149 
154  void setAlignedSelfOverlap(double overlap);
155 
161 
166  void setAlignedColorSelfOverlap(double overlap);
167 
172  double getOverlap() const;
173 
178  void setOverlap(double overlap);
179 
184  double getColorOverlap() const;
185 
190  void setColorOverlap(double overlap);
191 
192  private:
194  double score;
195  std::size_t refShapeSetIdx;
196  std::size_t refShapeIdx;
197  std::size_t algdShapeIdx;
198  double refSelfOverlap;
199  double refColSelfOverlap;
200  double algdSelfOverlap;
201  double algdColSelfOverlap;
202  double overlap;
203  double colOverlap;
204  };
205  } // namespace Shape
206 } // namespace CDPL
207 
208 #endif // CDPL_SHAPE_ALIGNMENTRESULT_HPP
Definition of matrix data types.
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
void setOverlap(double overlap)
Sets the overlap between the reference and the aligned shape (shape-only contribution).
std::size_t getAlignedShapeIndex() const
Returns the index of the aligned shape.
void setReferenceSelfOverlap(double overlap)
Sets the self-overlap of the reference shape (shape-only contribution).
void setScore(double score)
Sets the score of the alignment.
void setAlignedSelfOverlap(double overlap)
Sets the self-overlap of the aligned shape (shape-only contribution).
void setAlignedColorSelfOverlap(double overlap)
Sets the self-overlap of the aligned shape (color/pharmacophore contribution).
void setReferenceShapeSetIndex(std::size_t idx)
Sets the index of the reference shape set.
double getAlignedColorSelfOverlap() const
Returns the self-overlap of the aligned shape (color/pharmacophore contribution).
double getAlignedSelfOverlap() const
Returns the self-overlap of the aligned shape (shape-only contribution).
void setColorOverlap(double overlap)
Sets the overlap between the reference and the aligned shape (color/pharmacophore contribution).
double getOverlap() const
Returns the calculated overlap between the reference and the aligned shape (shape-only contribution).
void setAlignedShapeIndex(std::size_t idx)
Sets the index of the aligned shape.
void setTransform(const Math::Matrix4D &xform)
Sets the rigid-body transformation matrix.
double getReferenceSelfOverlap() const
Returns the self-overlap of the reference shape (shape-only contribution).
double getReferenceColorSelfOverlap() const
Returns the self-overlap of the reference shape (color/pharmacophore contribution).
double getColorOverlap() const
Returns the calculated overlap between the reference and the aligned shape (color/pharmacophore contr...
const Math::Matrix4D & getTransform() const
Returns the rigid-body transformation matrix that maps the aligned shape onto the reference shape.
void setReferenceColorSelfOverlap(double overlap)
Sets the self-overlap of the reference shape (color/pharmacophore contribution).
std::size_t getReferenceShapeIndex() const
Returns the index of the reference shape within its shape set.
double getScore() const
Returns the score of the alignment.
void setReferenceShapeIndex(std::size_t idx)
Sets the index of the reference shape within its shape set.
AlignmentResult()
Constructs the AlignmentResult instance.
std::size_t getReferenceShapeSetIndex() const
Returns the index of the reference shape set the aligned shape was matched against.
CDPL_SHAPE_API void transform(GaussianShape &shape, const Math::Matrix4D &xform)
Applies an affine transformation to the element positions of shape.
The namespace of the Chemical Data Processing Library.