IMP  2.0.0
The Integrative Modeling Platform
kernel/dependency_graph.h File Reference

Build dependency graphs on models. More...

#include <IMP/kernel/kernel_config.h>
#include "base_types.h"
#include <IMP/base/base_macros.h>
#include <boost/graph/adjacency_list.hpp>
+ Include dependency graph for kernel/dependency_graph.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  IMP
 All IMP::kernel code is brought into the IMP namespace.
 
namespace  IMP::kernel
 See IMP.kernel Overview for more information.
 

Typedefs

typedef boost::graph IMP::kernel::DependencyGraph
 A directed graph on the interactions between the various objects in the model. More...
 
typedef
DependencyGraph::EdgeNameMap 
IMP::kernel::DependencyGraphConstEdgeName
 
typedef
DependencyGraph::VertexNameMap 
IMP::kernel::DependencyGraphConstVertexName
 
typedef
DependencyGraph::edge_descriptor 
IMP::kernel::DependencyGraphEdge
 
typedef boost::graph_traits
< DependencyGraph > 
IMP::kernel::DependencyGraphTraits
 
typedef
DependencyGraph::vertex_descriptor 
IMP::kernel::DependencyGraphVertex
 

Functions

DependencyGraph IMP::kernel::get_dependency_graph (Model *m)
 
DependencyGraph IMP::kernel::get_pruned_dependency_graph (Model *m)
 
ScoreStatesTemp IMP::kernel::get_required_score_states (const ModelObjectsTemp &irs, const DependencyGraph &dg, const DependencyGraphVertexIndex &index)
 
DependencyGraphVertexIndex IMP::kernel::get_vertex_index (const DependencyGraph &g)
 
void IMP::kernel::set_score_state_update_order (const DependencyGraph &dg, const DependencyGraphVertexIndex &index)
 

Getting required values

These functions use the dependency graph to determine all the objects of a given type that are needed by a particular object. An object is said to be needed by another if there is a path from the object to the dependent object through the dependency graph (see get_dependency_graph()) not passing through a node in all.

ParticlesTemp IMP::kernel::get_required_particles (ModelObject *p, const ModelObjectsTemp &all, const DependencyGraph &dg, const DependencyGraphVertexIndex &index)
 
ScoreStatesTemp IMP::kernel::get_required_score_states (ModelObject *p, const ModelObjectsTemp &all, const DependencyGraph &dg, const DependencyGraphVertexIndex &index)
 

Getting dependent values

These functions use the dependency graph to determine all the objects of a given type that depend on a particular object. An object is said to depend on another if there is a path from the object to the dependent object through the reversed dependency graph (see get_dependency_graph()).

ParticlesTemp IMP::kernel::get_dependent_particles (ModelObject *p, const ModelObjectsTemp &all, const DependencyGraph &dg, const DependencyGraphVertexIndex &index)
 
RestraintsTemp IMP::kernel::get_dependent_restraints (ModelObject *p, const ModelObjectsTemp &all, const DependencyGraph &dg, const DependencyGraphVertexIndex &index)
 
ScoreStatesTemp IMP::kernel::get_dependent_score_states (ModelObject *p, const ModelObjectsTemp &all, const DependencyGraph &dg, const DependencyGraphVertexIndex &index)
 

Detailed Description

Copyright 2007-2013 IMP Inventors. All rights reserved.

Definition in file kernel/dependency_graph.h.