IMP
2.0.0
The Integrative Modeling Platform
|
#include <IMP/kernel/ModelObject.h>
Public Member Functions | |
ModelObject (Model *m, std::string name) | |
ModelObjectsTemp | get_inputs () const |
ModelObjectsTemps | get_interactions () const |
Model * | get_model () const |
ModelObjectsTemp | get_outputs () const |
Public Member Functions inherited from IMP::base::Object | |
virtual void | clear_caches () |
virtual IMP::base::VersionInfo | get_version_info () const =0 |
Get information about the module and version of the object. | |
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 =0 |
virtual ModelObjectsTemps | do_get_interactions () const |
virtual ModelObjectsTemp | do_get_outputs () const =0 |
virtual void | do_update_dependencies () |
virtual void | update_dependencies () |
Protected Member Functions inherited from IMP::base::Object | |
Object (std::string name) | |
Construct an object with the given name. More... | |
Related Functions | |
(Note that these are not member functions.) | |
typedef IMP::base::Vector < IMP::base::WeakPointer < ModelObject > > | ModelObjectsTemp |
Related Functions inherited from IMP::base::Object | |
typedef IMP::base::Vector < IMP::base::WeakPointer < Object > > | ObjectsTemp |
These objects are associated with a particular Model and have a callback that is called whenever the dependencies in the model change. This allows them to update internal state when that occurs.
Definition at line 24 of file kernel/ModelObject.h.
|
protectedpure virtual |
Override if this reads other objects during evaluate.
Implemented in IMP::kernel::Particle, IMP::container::PredicatePairsRestraint, IMP::container::PredicateQuadsRestraint, IMP::container::PredicateSingletonsRestraint, IMP::container::PredicateTripletsRestraint, IMP::core::MSConnectivityRestraint, IMP::isd::GaussianProcessInterpolationRestraint, IMP::core::ExcludedVolumeRestraint, IMP::kernel::ScoringFunction, IMP::core::ConnectivityRestraint, IMP::container::PairsConstraint, IMP::container::QuadsConstraint, IMP::container::SingletonsConstraint, IMP::container::TripletsConstraint, IMP::core::BallMover, IMP::core::RigidBodyMover, IMP::container::DistributePairsScoreState, IMP::container::DistributeQuadsScoreState, IMP::container::DistributeSingletonsScoreState, IMP::container::DistributeTripletsScoreState, IMP::container::PairsRestraint, IMP::container::QuadsRestraint, IMP::container::SingletonsRestraint, IMP::container::TripletsRestraint, IMP::em::EnvelopeFitRestraint, IMP::core::NormalMover, IMP::core::PairConstraint, IMP::core::QuadConstraint, IMP::core::SingletonConstraint, IMP::core::TripletConstraint, IMP::domino::DependencyScoreState, IMP::core::SerialMover, IMP::core::PairRestraint, IMP::core::QuadRestraint, IMP::core::SingletonRestraint, IMP::core::TripletRestraint, IMP::atom::BondPairContainer, IMP::multifit::WeightedExcludedVolumeRestraint, IMP::container::MinimumPairRestraint, IMP::container::MinimumQuadRestraint, IMP::container::MinimumSingletonRestraint, IMP::container::MinimumTripletRestraint, IMP::core::MinimumRestraint, IMP::core::Mover, and IMP::example::ExampleRestraint.
|
protectedvirtual |
Override if this if not all inputs interact with all outputs. This is rarely something you want to do.
|
protectedpure virtual |
Override if this writes other objects during evaluate.
Implemented in IMP::kernel::Restraint, IMP::kernel::Particle, IMP::core::MonteCarloMover, IMP::kernel::ScoringFunction, IMP::kernel::Container, IMP::container::PairsConstraint, IMP::container::QuadsConstraint, IMP::container::SingletonsConstraint, IMP::container::TripletsConstraint, IMP::container::DistributePairsScoreState, IMP::container::DistributeQuadsScoreState, IMP::container::DistributeSingletonsScoreState, IMP::container::DistributeTripletsScoreState, IMP::core::PairConstraint, IMP::core::QuadConstraint, IMP::core::SingletonConstraint, IMP::core::TripletConstraint, and IMP::domino::DependencyScoreState.
|
protectedvirtual |
This method is called when the dependencies in the model have changed and model evaluate is called (or Model::ensure_dependencies()). The object can use this to update anything that is needed for efficient computation.
Reimplemented in IMP::kernel::Restraint, IMP::kernel::Particle, IMP::kernel::ScoreState, IMP::core::MonteCarloMover, and IMP::kernel::ScoringFunction.
Definition at line 67 of file kernel/ModelObject.h.
ModelObjectsTemp IMP::kernel::ModelObject::get_inputs | ( | ) | const |
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.
ModelObjectsTemps IMP::kernel::ModelObject::get_interactions | ( | ) | const |
Get the interacting sets induce by this ModelObject. That is, the particles in each ModelObjectsTemp in the list have some sort of computed relation with one another and none with disjoint other sets in the list.
ModelObjectsTemp IMP::kernel::ModelObject::get_outputs | ( | ) | const |
|
protectedvirtual |
The model calls this method when dependencies have changed. It in turn calls do_update_dependencies().
|
related |
Pass a set of objects.
Definition at line 66 of file kernel/base_types.h.