IMP logo
IMP Reference Guide  2.5.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] m Model.
28  \param[in] score_func Scoring function for the restraint.
29  \param[in] p1 First particle in angle restraint.
30  \param[in] p2 Second particle in angle restraint.
31  \param[in] p3 Third particle in angle restraint.
32  */
35 
36 #ifndef IMP_DOXYGEN
37  IMPCORE_DEPRECATED_METHOD_DECL(2.5)
38  AngleRestraint(UnaryFunction* score_func, Particle* p1,
39  Particle* p2, Particle* p3);
40 
41  IMPCORE_DEPRECATED_METHOD_DECL(2.5)
42  AngleRestraint(UnaryFunction* score_func, XYZ p0, XYZ p1, XYZ p2);
43 #endif
44 
46 };
47 
48 IMPCORE_END_NAMESPACE
49 
50 #endif /* IMPCORE_ANGLE_RESTRAINT_H */
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
Single variable function.
Simple XYZ decorator.
Class for storing model, its restraints, constraints, and particles.
Definition: Model.h:72
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.
Definition: Particle.h:37
Abstract single variable functor class for score functions.
Definition: UnaryFunction.h:25
A Score on the angle between three particles.