IMP Reference Guide
2.22.0
The Integrative Modeling Platform
|
Base class for objects in a Model that depend on other objects. More...
#include <IMP/ModelObject.h>
Base class for objects in a Model that depend on other objects.
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 28 of file ModelObject.h.
Public Member Functions | |
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... | |
Model * | get_model () const |
ModelObjectsTemp | get_outputs () const |
const ScoreStatesTemp & | get_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 |
virtual VersionInfo | get_version_info () const |
Get information about the module and version of the object. More... | |
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) |
virtual std::string | get_type_name () const |
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 | 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 () |
|
protectedpure virtual |
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.
Implemented in IMP::npc::OverallPositionRestraint, IMP::npc::XAxialPositionUpperRestraint, IMP::npc::XAxialPositionLowerRestraint, IMP::npc::XAxialPositionRestraint, IMP::npc::ProteinProximityRestraint, IMP::npc::AssemblySymmetryByDihedralRestraint, IMP::npc::AssemblySymmetryByDistanceRestraint, IMP::atom::WritePDBOptimizerState, IMP::npc::PerinuclearVolumeLocationRestraint, IMP::npc::PoreSideVolumeLocationRestraint, IMP::npc::MembraneExclusionRestraint, IMP::npc::MembraneSurfaceLocationConditionalRestraint, IMP::npc::MembraneSurfaceLocationRestraint, IMP::npc::ProteinChainRestraint, IMP::npc::ProteinContactRestraint, IMP::npc::XYRadialPositionUpperRestraint, IMP::npc::XYRadialPositionLowerRestraint, IMP::npc::XYRadialPositionRestraint, IMP::core::LateralSurfaceConstraint, IMP::npc::YAxialPositionUpperRestraint, IMP::npc::YAxialPositionLowerRestraint, IMP::core::SurfaceGeometryConstraint, IMP::npc::YAxialPositionRestraint, IMP::bff::AVNetworkRestraint, IMP::container::ExclusiveConsecutivePairContainer, IMP::Particle, IMP::isd::CrossLinkMSRestraint, IMP::core::TransformationSymmetryMover, IMP::isd::GaussianAnchorEMRestraint, IMP::npc::ZAxialPositionUpperRestraint, IMP::bayesianem::GaussianEMRestraint, IMP::em2d::Em2DRestraint, IMP::OptimizerState, IMP::pmi::TransformMover, IMP::container::ClosePairContainer, IMP::container::PredicatePairsRestraint, IMP::container::PredicateQuadsRestraint, IMP::container::PredicateSingletonsRestraint, IMP::container::PredicateTripletsRestraint, IMP::em2d::ProjectionParametersScoreState, IMP::isd::CysteineCrossLinkRestraint, IMP::isd::FretRestraint, IMP::isd::GaussianEMRestraint, IMP::core::RigidBodyTunneler, IMP::npc::ZAxialPositionLowerRestraint, IMP::core::MSConnectivityRestraint, IMP::core::ExcludedVolumeRestraint, IMP::em2d::PCAFitRestraint, IMP::core::RigidBodyUmbrella, IMP::pmi::CompositeRestraint, IMP::isd::TALOSRestraint, IMP::em2d::ParticlesDummyRestraint, IMP::core::SurfaceMover, IMP::container::CloseBipartitePairContainer, IMP::core::BallMover, IMP::multifit::ComplementarityRestraint, IMP::isd::StudentTRestraint, IMP::container::PairsConstraint, IMP::container::QuadsConstraint, IMP::container::SingletonsConstraint, IMP::container::TripletsConstraint, IMP::isd::LognormalAmbiguousRestraint, IMP::isd::GaussianProcessInterpolationRestraint, IMP::npc::CompositeRestraint, IMP::spb::EM2DRestraint, IMP::core::DirectionMover, IMP::atom::CHARMMStereochemistryRestraint, IMP::em::FitRestraint, IMP::core::LogNormalMover, IMP::core::RigidBodyMover, IMP::Optimizer, IMP::container::PairsRestraint, IMP::container::QuadsRestraint, IMP::container::SingletonsRestraint, IMP::container::TripletsRestraint, IMP::core::PairConstraint, IMP::core::QuadConstraint, IMP::core::SingletonConstraint, IMP::core::TripletConstraint, IMP::isd::AtomicCrossLinkMSRestraint, IMP::core::NormalMover, IMP::isd::ResidueProteinProximityRestraint, IMP::container::ConsecutivePairContainer, IMP::container::ConnectingPairContainer, IMP::isd::NormalSigmaPCRestraint, IMP::saxs::Restraint, IMP::isd::MarginalNOERestraint, IMP::core::ConnectivityRestraint, IMP::isd::GaussianRestraint, IMP::isd::LognormalRestraint, IMP::kinematics::KinematicForestScoreState, IMP::container::DistributePairsScoreState, IMP::container::DistributeQuadsScoreState, IMP::container::DistributeSingletonsScoreState, IMP::container::DistributeTripletsScoreState, IMP::em::EnvelopeFitRestraint, IMP::container::AllBipartitePairContainer, IMP::core::PairRestraint, IMP::core::QuadRestraint, IMP::core::SingletonRestraint, IMP::core::TripletRestraint, IMP::em2d::DummyRestraint, IMP::isd::MarginalHBondRestraint, IMP::npc::ZAxialPositionRestraint, IMP::core::SurfaceSymmetryConstraint, IMP::atom::CADihedralRestraint, IMP::core::SubsetMover, IMP::isd::AmbiguousNOERestraint, IMP::domino::DependencyScoreState, IMP::isd::AmbiguousRestraint, IMP::atom::BondPairContainer, IMP::em::PCAFitRestraint, IMP::core::MultipleBinormalRestraint, IMP::em::FitRestraintBayesEM3D, IMP::example::ExampleComplexRestraint, IMP::multifit::DummyRestraint, IMP::pmi::MembraneRestraint, IMP::core::DiameterRestraint, IMP::core::SerialMover, IMP::atom::CAAngleRestraint, IMP::container::AllPairContainer, IMP::em::EnvelopePenetrationRestraint, IMP::isd::NOERestraint, IMP::multifit::WeightedExcludedVolumeRestraint, IMP::em::DensityFillingRestraint, IMP::isd::UniformPrior, IMP::spb::UniformBoundedRestraint, IMP::container::PairContainerStatistics, IMP::container::QuadContainerStatistics, IMP::container::SingletonContainerStatistics, IMP::container::TripletContainerStatistics, IMP::core::ConstantRestraint, IMP::container::MinimumPairRestraint, IMP::container::MinimumQuadRestraint, IMP::container::MinimumSingletonRestraint, IMP::container::MinimumTripletRestraint, IMP::example::ExampleRestraint, IMP::spb::DistanceTerminiRestraint, IMP::spb::RigidBodyNewMover, IMP::saxs::RadiusOfGyrationRestraint, IMP::core::DihedralRestraint, IMP::isd::JeffreysRestraint, IMP::kinematics::RevoluteJointMover, IMP::multifit::RadiusOfGyrationRestraint, IMP::atom::HelixRestraint, IMP::core::ChecksScoreState, IMP::core::MoveStatisticsScoreState, IMP::spb::TwoStateGoModelRestraint, IMP::core::MinimumRestraint, IMP::isd::vonMisesKappaJeffreysRestraint, IMP::spb::PbcBoxedRigidBodyMover, IMP::symmetry::RigidBodyMover, IMP::isd::MolecularDynamicsMover, IMP::isd::vonMisesKappaConjugateRestraint, IMP::spb::DiameterRgyrRestraint, IMP::spb::PbcBoxedMover, IMP::atom::EzRestraint, IMP::isd::GammaPrior, IMP::spb::BoxedMover, IMP::core::NeighborsTable, IMP::example::ExampleConstraint, IMP::kinematics::DihedralMover, IMP::spb::CellMover, IMP::symmetry::BallMover, IMP::isd::ISDRestraint, IMP::core::VolumeRestraint, IMP::isd::WeightMover, IMP::isd::WeightRestraint, and IMP::misc::StateAdaptor.
|
protectedvirtual |
Override if this if not all inputs interact with all outputs. This is rarely something you want to do.
|
protectedpure virtual |
Get any Particle, Container or other ModelObjects changed by this during evaluation. This is only useful for ScoreStates, at the moment.
Implemented in IMP::Restraint, IMP::core::LateralSurfaceConstraint, IMP::core::SurfaceGeometryConstraint, IMP::Particle, IMP::OptimizerState, IMP::em2d::ProjectionParametersScoreState, IMP::core::MonteCarloMover, IMP::ScoringFunction, IMP::Container, IMP::container::PairsConstraint, IMP::container::QuadsConstraint, IMP::container::SingletonsConstraint, IMP::container::TripletsConstraint, IMP::Optimizer, IMP::core::PairConstraint, IMP::core::QuadConstraint, IMP::core::SingletonConstraint, IMP::core::TripletConstraint, IMP::kinematics::KinematicForestScoreState, IMP::container::DistributePairsScoreState, IMP::container::DistributeQuadsScoreState, IMP::container::DistributeSingletonsScoreState, IMP::container::DistributeTripletsScoreState, IMP::core::SurfaceSymmetryConstraint, IMP::domino::DependencyScoreState, IMP::container::PairContainerStatistics, IMP::container::QuadContainerStatistics, IMP::container::SingletonContainerStatistics, IMP::container::TripletContainerStatistics, IMP::core::MoveStatisticsScoreState, IMP::core::ChecksScoreState, IMP::core::NeighborsTable, IMP::example::ExampleConstraint, and IMP::misc::StateAdaptor.
bool IMP::ModelObject::get_has_dependencies | ( | ) | const |
Return whether this object has dependencies computed.
bool IMP::ModelObject::get_has_required_score_states | ( | ) | const |
Return whether score states are computed.
ModelObjectsTemp IMP::ModelObject::get_inputs | ( | ) | const |
get_has_dependencies() must be true.
ModelObjectsTemps IMP::ModelObject::get_interactions | ( | ) | const |
Get the interacting sets induced 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::ModelObject::get_outputs | ( | ) | const |
get_has_dependencies() must be true.
const ScoreStatesTemp& IMP::ModelObject::get_required_score_states | ( | ) | const |
Get the score states that are ancestors of this in the dependency graph.
|
protectedvirtual |
Called when set_has_required_score_states() is called.
Definition at line 93 of file ModelObject.h.
void IMP::ModelObject::set_has_dependencies | ( | bool | tf | ) |
Either invalidate the dependencies or ensure they are correct.
void IMP::ModelObject::set_has_required_score_states | ( | bool | tf | ) |
Compute the required score states.