IMP logo
IMP Reference Guide  2.20.2
The Integrative Modeling Platform
interactive.h
Go to the documentation of this file.
1 /**
2  * \file IMP/domino/interactive.h
3  * \brief Functions to get report statistics about the used attributes.
4  *
5  * Copyright 2007-2022 IMP Inventors. All rights reserved.
6  */
7 
8 #ifndef IMPDOMINO_INTERACTIVE_H
9 #define IMPDOMINO_INTERACTIVE_H
10 
11 #include <IMP/domino/domino_config.h>
12 #include "Assignment.h"
13 #include "Subset.h"
14 #include "subset_filters.h"
15 #include "assignment_containers.h"
16 #include <IMP/Particle.h>
17 #include <IMP/SingletonContainer.h>
18 #include <IMP/RestraintSet.h>
19 #include <IMP/Model.h>
20 #include <IMP/container/internal/ClosePairContainer.h>
21 #include <IMP/display/Writer.h>
22 #include <IMP/dependency_graph.h>
24 
25 #ifdef IMP_DOMINO_USE_IMP_RMF
26 #include <RMF/HDF5/Group.h>
27 #endif
28 
29 IMPDOMINO_BEGIN_NAMESPACE
30 
31 //! Fill in assignments for a leaf
32 IMPDOMINOEXPORT void load_leaf_assignments(const Subset &subset,
33  AssignmentsTable *at,
34  AssignmentContainer *ac);
35 
36 //! Fill in assignments for an internal node
37 /** The passed assignments, the ordering for the children is that of
38  the node indexes for the children.
39 */
40 IMPDOMINOEXPORT void load_merged_assignments(
41  const Subset &first_subset, AssignmentContainer *first,
42  const Subset &second_subset, AssignmentContainer *second,
43  const SubsetFilterTablesTemp &filters, AssignmentContainer *ret);
44 
45 //! Sample from the merged assignments.
46 /** The passed assignments, the ordering for the children is that of
47  the node indexes for the children.
48 
49  It will try maximum_tries times to merge an assignment from the first
50  set with a randomly chosen assignment from the second. Note that
51  duplicate
52  solutions may be present in the output and the output will never be
53  guaranteed to be complete.
54 
55  \unstable{load_sampled_merged_assignments}
56  */
57 IMPDOMINOEXPORT void load_merged_assignments_random_order(
58  const Subset &first_subset, AssignmentContainer *first,
59  const Subset &second_subset, AssignmentContainer *second,
60  const SubsetFilterTablesTemp &filters, unsigned int maximum_tries,
61  AssignmentContainer *ret);
62 
63 IMPDOMINO_END_NAMESPACE
64 
65 #endif /* IMPDOMINO_INTERACTIVE_H */
A container for Singletons.
Used to hold a set of related restraints.
A Bayesian inference-based sampler.
Storage of a model, its restraints, constraints and particles.
A Bayesian inference-based sampler.
Cluster sets of points.
void load_leaf_assignments(const Subset &subset, AssignmentsTable *at, AssignmentContainer *ac)
Fill in assignments for a leaf.
void load_merged_assignments(const Subset &first_subset, AssignmentContainer *first, const Subset &second_subset, AssignmentContainer *second, const SubsetFilterTablesTemp &filters, AssignmentContainer *ret)
Fill in assignments for an internal node.
Base class for writing geometry to a file.
A Bayesian inference-based sampler.
Classes to handle individual model particles. (Note that implementation of inline functions is in int...
void load_merged_assignments_random_order(const Subset &first_subset, AssignmentContainer *first, const Subset &second_subset, AssignmentContainer *second, const SubsetFilterTablesTemp &filters, unsigned int maximum_tries, AssignmentContainer *ret)
Sample from the merged assignments.
IMP::Vector< IMP::WeakPointer< SubsetFilterTable > > SubsetFilterTablesTemp
Container classes to store assignments.
Build dependency graphs on models.