8 #ifndef IMPKERNEL_OPTIMIZER_STATE_H 
    9 #define IMPKERNEL_OPTIMIZER_STATE_H 
   11 #include <IMP/kernel_config.h> 
   15 #include <cereal/access.hpp> 
   16 #include <cereal/types/base_class.hpp> 
   19 IMPKERNEL_BEGIN_NAMESPACE
 
   47   unsigned int period_, call_number_, update_number_;
 
   49   friend class cereal::access;
 
   51   template<
class Archive> 
void serialize(Archive &ar) {
 
   52     ar(cereal::base_class<ModelObject>(
this), period_, call_number_,
 
   53        update_number_, is_optimizing_);
 
   54     if (std::is_base_of<cereal::detail::InputArchiveBase, Archive>::value) {
 
   83   virtual void update();
 
   91   virtual void set_is_optimizing(
bool);
 
   95                        "Must call set_optimizer before get_optimizer on state");
 
   96     return optimizer_.get();
 
  107   void set_period(
unsigned int p);
 
  116   virtual void reset();
 
  119   void update_always();
 
  135   virtual void do_set_is_optimizing(
bool) {}
 
  149 IMPKERNEL_END_NAMESPACE
 
unsigned int get_period() const 
Get the periodicity of this state. 
 
virtual void do_update(unsigned int)
 
#define IMP_REF_COUNTED_DESTRUCTOR(Name)
Set up destructor for a ref counted object. 
 
A weak pointer to an Object or RefCountedObject. 
 
A more IMP-like version of the std::vector. 
 
#define IMP_INTERNAL_CHECK(expr, message)
An assertion to check for internal errors in IMP. An IMP::ErrorException will be thrown. 
 
IMP::Vector< IMP::WeakPointer< ModelObject > > ModelObjectsTemp
 
Class for storing model, its restraints, constraints, and particles. 
 
virtual ModelObjectsTemp do_get_outputs() const override
 
Base class for objects in a Model that depend on other objects. 
 
Base class for all optimizers. 
 
A weak pointer to an Object or RefCountedObject. 
 
Base class for objects in a Model that depend on other objects. 
 
virtual ModelObjectsTemp do_get_inputs() const override
 
void set_number_of_updates(unsigned int n)
Set the counter of number of times do_update() has been called. 
 
A shared base class to help in debugging and things. 
 
Shared optimizer state that is invoked upon commitment of new coordinates. 
 
#define IMP_SWIG_FINAL
Have the compiler report an error if anything overrides this method. 
 
unsigned int get_number_of_updates() const 
Return the number of times do_update() has been called.