IMP  2.2.1
The Integrative Modeling Platform
DerivativesFromRefined.h
Go to the documentation of this file.
1 /**
2  * \file IMP/core/DerivativesFromRefined.h
3  * \brief Accumulate the derivatives of the refined particles
4  *
5  * Copyright 2007-2014 IMP Inventors. All rights reserved.
6  */
7 
8 #ifndef IMPCORE_DERIVATIVES_FROM_REFINED_H
9 #define IMPCORE_DERIVATIVES_FROM_REFINED_H
10 
11 #include <IMP/core/core_config.h>
12 
13 #include "XYZ.h"
14 #include <IMP/Refiner.h>
15 #include <IMP/singleton_macros.h>
16 #include <IMP/base/Pointer.h>
18 
19 IMPCORE_BEGIN_NAMESPACE
20 
21 //! Accumulate the derivatives of the refined particles.
22 /** \see DerivativesToRefined
23  \see CoverRefined
24  \see CentroidOfRefinedSingletonModifer
25  An example showing a how to use such a score state to maintain a cover
26  of the atoms of a protein by a sphere per residue.
27  \include cover_particles.py
28  */
29 class IMPCOREEXPORT DerivativesFromRefined
30  : public SingletonDerivativeModifier {
32  FloatKeys ks_;
33 
34  public:
35  //! Copy ks from the particles returned by r.
36  DerivativesFromRefined(Refiner *r, FloatKeys ks = XYZ::get_xyz_keys());
37 
38  virtual void apply_index(kernel::Model *m, kernel::ParticleIndex a) const
39  IMP_OVERRIDE;
40  virtual kernel::ModelObjectsTemp do_get_inputs(
41  kernel::Model *m, const kernel::ParticleIndexes &pis) const IMP_OVERRIDE;
42  virtual kernel::ModelObjectsTemp do_get_outputs(
43  kernel::Model *m, const kernel::ParticleIndexes &pis) const IMP_OVERRIDE;
46 };
47 
48 IMPCORE_END_NAMESPACE
49 
50 #endif /* IMPCORE_DERIVATIVES_FROM_REFINED_H */
A nullptr-initialized pointer to an IMP Object.
A smart pointer to a ref-counted Object that is a class memeber.
Definition: base/Pointer.h:147
Import IMP/kernel/singleton_macros.h in the namespace.
Accumulate the derivatives of the refined particles.
Simple xyz decorator.
Import IMP/kernel/Refiner.h in the namespace.
Import IMP/kernel/SingletonDerivativeModifier.h in the namespace.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
#define IMP_SINGLETON_MODIFIER_METHODS(Name)
Abstract class to implement hierarchical methods.
Class for storing model, its restraints, constraints, and particles.
Definition: kernel/Model.h:72