IMP  2.4.0
The Integrative Modeling Platform
AngleRestraint.h
Go to the documentation of this file.
1 /**
2  * \file IMP/core/AngleRestraint.h
3  * \brief Angle restraint between three particles.
4  *
5  * Copyright 2007-2015 IMP Inventors. All rights reserved.
6  *
7  */
8 
9 #ifndef IMPCORE_ANGLE_RESTRAINT_H
10 #define IMPCORE_ANGLE_RESTRAINT_H
11 
12 #include <IMP/core/core_config.h>
13 #include "AngleTripletScore.h"
14 #include "XYZ.h"
15 
16 #include "TripletRestraint.h"
17 #include <IMP/UnaryFunction.h>
18 
19 IMPCORE_BEGIN_NAMESPACE
20 
21 //! Angle restraint between three particles
22 /** \see AngleTripletScore
23  */
24 class IMPCOREEXPORT AngleRestraint : public TripletRestraint {
25  public:
26  //! Create the angle restraint.
27  /** \param[in] score_func Scoring function for the restraint.
28  \param[in] p1 Pointer to first particle in angle restraint.
29  \param[in] p2 Pointer to second particle in angle restraint.
30  \param[in] p3 Pointer to third particle in angle restraint.
31  */
34 
35  AngleRestraint(UnaryFunction* score_func, XYZ p0, XYZ p1, XYZ p2);
36 
38 };
39 
40 IMPCORE_END_NAMESPACE
41 
42 #endif /* IMPCORE_ANGLE_RESTRAINT_H */
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
Import IMP/kernel/UnaryFunction.h in the namespace.
Abstract single variable functor class for score functions.
Simple XYZ decorator.
Angle restraint between three particles.
Applies a TripletScore to a Triplet.
A decorator for a particle with x,y,z coordinates.
Definition: XYZ.h:30
Apply a TripletScore to a Triplet.
Class to handle individual model particles.
A Score on the angle between three particles.