IMP logo
IMP Reference Guide  develop.f6c15b4169,2024/11/06
The Integrative Modeling Platform
IMP::container::SingletonsConstraint Class Reference

Apply a SingletonFunction to a SingletonContainer to maintain an invariant. More...

#include <IMP/container/SingletonsConstraint.h>

+ Inheritance diagram for IMP::container::SingletonsConstraint:

Detailed Description

Apply a SingletonFunction to a SingletonContainer to maintain an invariant.

The score state is passed up to two SingletonModifiers, one to apply before evaluation and the other after. The one after should take a DerivativeAccumulator as its last argument for SingletonModifier::apply() and will only be called if the score was computed with derivatives.

See Also
core::SingletonConstraint

Definition at line 41 of file SingletonsConstraint.h.

Public Member Functions

 SingletonsConstraint (SingletonModifier *before, SingletonModifier *after, SingletonContainerAdaptor c, std::string name="SingletonsConstraint %1%")
 
virtual std::string get_type_name () const override
 
virtual ::IMP::VersionInfo get_version_info () const override
 Get information about the module and version of the object. More...
 
- Public Member Functions inherited from IMP::Constraint
 Constraint (Model *m, std::string name="Constraint %1%")
 
virtual void do_after_evaluate (DerivativeAccumulator *da) override
 Do any necessary updates after the model score is calculated. More...
 
virtual void do_before_evaluate () override
 Update the state given the current state of the model. More...
 
- Public Member Functions inherited from IMP::ScoreState
 ScoreState (Model *m, std::string name)
 
void after_evaluate (DerivativeAccumulator *accpt)
 Do post evaluation work if needed. More...
 
void before_evaluate ()
 Force update of the structure. More...
 
bool get_can_skip () const
 Get whether this state can be skipped if its inputs/outputs didn't move. More...
 
- Public Member Functions inherited from IMP::ModelObject
 ModelObject (Model *m, std::string name)
 
bool get_has_dependencies () const
 Return whether this object has dependencies computed. More...
 
bool get_has_required_score_states () const
 Return whether score states are computed. More...
 
ModelObjectsTemp get_inputs () const
 
ModelObjectsTemps get_interactions () const
 Get the interacting sets induced by this ModelObject. More...
 
Modelget_model () const
 
ModelObjectsTemp get_outputs () const
 
const ScoreStatesTempget_required_score_states () const
 Get the score states that are ancestors of this in the dependency graph. More...
 
void set_has_dependencies (bool tf)
 Either invalidate the dependencies or ensure they are correct. More...
 
void set_has_required_score_states (bool tf)
 Compute the required score states. More...
 
- Public Member Functions inherited from IMP::Object
virtual void clear_caches ()
 
CheckLevel get_check_level () const
 
LogLevel get_log_level () const
 
void set_check_level (CheckLevel l)
 
void set_log_level (LogLevel l)
 Set the logging level used in this object. More...
 
void set_was_used (bool tf) const
 
void show (std::ostream &out=std::cout) const
 
const std::string & get_name () const
 
void set_name (std::string name)
 

Protected Member Functions

virtual ModelObjectsTemp do_get_inputs () const
 
virtual ModelObjectsTemp do_get_outputs () const
 
void do_update_attributes ()
 
void do_update_derivatives (DerivativeAccumulator *da)
 
- Protected Member Functions inherited from IMP::ScoreState
void set_can_skip (bool can_skip)
 Set whether we can skip during model evaluation if appropriate. More...
 
- Protected Member Functions inherited from IMP::ModelObject
virtual ModelObjectsTemps do_get_interactions () const
 
virtual void handle_set_has_required_score_states (bool)
 
- Protected Member Functions inherited from IMP::Object
 Object (std::string name)
 Construct an object with the given name. More...
 
virtual void do_destroy ()
 

Constructor & Destructor Documentation

IMP::container::SingletonsConstraint::SingletonsConstraint ( SingletonModifier before,
SingletonModifier after,
SingletonContainerAdaptor  c,
std::string  name = "SingletonsConstraint %1%" 
)
Parameters
[in]cThe Container to hold the elements to process
[in]beforeThe SingletonModifier to apply to all elements before evaluate.
[in]afterThe SingletonModifier to apply to all elements after evaluate.
[in]nameThe object name

Definition at line 67 of file SingletonsConstraint.h.

Member Function Documentation

virtual ModelObjectsTemp IMP::container::SingletonsConstraint::do_get_inputs ( ) const
protectedvirtual

Get any Particle, Container or other ModelObjects read by this during evaluation. If you read everything in a container, you can just return that container.

Implements IMP::ModelObject.

virtual ModelObjectsTemp IMP::container::SingletonsConstraint::do_get_outputs ( ) const
protectedvirtual

Get any Particle, Container or other ModelObjects changed by this during evaluation. This is only useful for ScoreStates, at the moment.

Implements IMP::ModelObject.

virtual ::IMP::VersionInfo IMP::container::SingletonsConstraint::get_version_info ( ) const
overridevirtual

Get information about the module and version of the object.

Reimplemented from IMP::Object.

Definition at line 80 of file SingletonsConstraint.h.


The documentation for this class was generated from the following file: