IMP logo
IMP Reference Guide  develop.d97d4ead1f,2024/11/21
The Integrative Modeling Platform
QuadsOptimizerState.h
Go to the documentation of this file.
1 // Autogenerated by ../../../../tmp/nightly-build-472/imp-20241121.develop.d97d4ead1f/tools/build/make_containers.py
2 // from ../../../../tmp/nightly-build-472/imp-20241121.develop.d97d4ead1f/tools/build/container_templates/container/ClassnamesOptimizerState.h
3 // Do not edit - any changes will be lost!
4 
5 /**
6  * \file IMP/container/QuadsOptimizerState.h
7  * \brief Use a QuadModifier applied to a ParticleQuadsTemp to
8  * maintain an invariant
9  *
10  * Copyright 2007-2022 IMP Inventors. All rights reserved.
11  */
12 
13 #ifndef IMPCONTAINER_QUADS_OPTIMIZER_STATE_H
14 #define IMPCONTAINER_QUADS_OPTIMIZER_STATE_H
15 
16 #include <IMP/container/container_config.h>
17 #include <IMP/QuadContainer.h>
18 #include <IMP/QuadModifier.h>
19 #include <IMP/OptimizerState.h>
20 #include <IMP/Pointer.h>
21 
22 IMPKERNEL_BEGIN_NAMESPACE
23 // for swig
24 class QuadContainer;
25 class QuadModifier;
26 IMPKERNEL_END_NAMESPACE
27 
28 IMPCONTAINER_BEGIN_NAMESPACE
29 //! Apply a QuadFunction to a QuadContainer to maintain an invariant
30 /** \ingroup restraint
31  \see QuadOptimizerState
32  */
33 class IMPCONTAINEREXPORT QuadsOptimizerState : public OptimizerState {
36 
37  public:
38  /** \param[in] c The Container to hold the elements to process
39  \param[in] gf The QuadModifier to apply to all elements.
40  \param[in] name The name to use for this Object
41  */
43  std::string name = "QuadsOptimizerState %1%");
44 
45  virtual void do_update(unsigned int call) override;
47 };
48 
50 
51 IMPCONTAINER_END_NAMESPACE
52 
53 #endif /* IMPCONTAINER_QUADS_OPTIMIZER_STATE_H */
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
A container for Quads.
virtual void do_update(unsigned int)
Apply a QuadFunction to a QuadContainer to maintain an invariant.
A more IMP-like version of the std::vector.
Definition: Vector.h:50
A Modifier on ParticleQuadsTemp.
A smart pointer to a ref-counted Object that is a class member.
Definition: Pointer.h:143
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing lists of object pointers.
Definition: object_macros.h:44
A nullptr-initialized pointer to an IMP Object.
Shared optimizer state that is invoked upon commitment of new coordinates.
Shared optimizer state.
A base class for modifiers of ParticleQuadsTemp.
Definition: QuadModifier.h:32