IMP  2.3.0
The Integrative Modeling Platform
PairsOptimizerState.h
Go to the documentation of this file.
1 /**
2  * \file IMP/container/PairsOptimizerState.h
3  * \brief Use a PairModifier applied to a kernel::ParticlePairsTemp to
4  * maintain an invariant
5  *
6  * WARNING This file was generated from PairsOptimizerState.h
7  * in /tmp/nightly-build-54722/imp-2.3.0/tools/build/container_templates/container
8  * by tools/build/make_containers.py.
9  *
10  * Copyright 2007-2014 IMP Inventors. All rights reserved.
11  */
12 
13 #ifndef IMPCONTAINER_PAIRS_OPTIMIZER_STATE_H
14 #define IMPCONTAINER_PAIRS_OPTIMIZER_STATE_H
15 
16 #include <IMP/container/container_config.h>
17 #include <IMP/PairContainer.h>
18 #include <IMP/PairModifier.h>
19 #include <IMP/OptimizerState.h>
20 #include <IMP/base/Pointer.h>
21 
22 IMPKERNEL_BEGIN_NAMESPACE
23 // for swig
24 class PairContainer;
25 class PairModifier;
26 IMPKERNEL_END_NAMESPACE
27 
28 IMPCONTAINER_BEGIN_NAMESPACE
29 //! Apply a PairFunction to a PairContainer to maintain an invariant
30 /** \ingroup restraint
31  \see PairOptimizerState
32  */
33 class IMPCONTAINEREXPORT PairsOptimizerState : public OptimizerState {
36 
37  public:
38  /** \param[in] c The Container to hold the elements to process
39  \param[in] gf The PairModifier to apply to all elements.
40  \param[in] name The name to use for this Object
41  */
42  PairsOptimizerState(PairContainerAdaptor c, PairModifier *gf,
43  std::string name = "PairsOptimizerState %1%");
44 
45  virtual void update() IMP_OVERRIDE;
47 };
48 
50 
51 IMPCONTAINER_END_NAMESPACE
52 
53 #endif /* IMPCONTAINER_PAIRS_OPTIMIZER_STATE_H */
IMP::kernel::PairModifier PairModifier
A smart pointer to a ref-counted Object that is a class member.
Definition: Pointer.h:147
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
Shared optimizer state that is invoked upon commitment of new coordinates.
Import IMP/kernel/PairContainer.h in the namespace.
virtual void update()
Called when the Optimizer accepts a new conformation.
Import IMP/kernel/PairModifier.h in the namespace.
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing sets of objects.
Definition: object_macros.h:52
A nullptr-initialized pointer to an IMP Object.
IMP::kernel::PairContainer PairContainer
Import IMP/kernel/OptimizerState.h in the namespace.
Apply a PairFunction to a PairContainer to maintain an invariant.
A base class for modifiers of kernel::ParticlePairsTemp.
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.