IMP logo
IMP Reference Guide  develop.63b38c487d,2024/12/21
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/config.h>
27 # if RMF_HAS_DEPRECATED_BACKENDS
28 # include <RMF/HDF5/Group.h>
29 # endif
30 #endif
31 
32 IMPDOMINO_BEGIN_NAMESPACE
33 
34 //! Fill in assignments for a leaf
35 IMPDOMINOEXPORT void load_leaf_assignments(const Subset &subset,
36  AssignmentsTable *at,
37  AssignmentContainer *ac);
38 
39 //! Fill in assignments for an internal node
40 /** The passed assignments, the ordering for the children is that of
41  the node indexes for the children.
42 */
43 IMPDOMINOEXPORT void load_merged_assignments(
44  const Subset &first_subset, AssignmentContainer *first,
45  const Subset &second_subset, AssignmentContainer *second,
46  const SubsetFilterTablesTemp &filters, AssignmentContainer *ret);
47 
48 //! Sample from the merged assignments.
49 /** The passed assignments, the ordering for the children is that of
50  the node indexes for the children.
51 
52  It will try maximum_tries times to merge an assignment from the first
53  set with a randomly chosen assignment from the second. Note that
54  duplicate
55  solutions may be present in the output and the output will never be
56  guaranteed to be complete.
57 
58  \unstable{load_sampled_merged_assignments}
59  */
60 IMPDOMINOEXPORT void load_merged_assignments_random_order(
61  const Subset &first_subset, AssignmentContainer *first,
62  const Subset &second_subset, AssignmentContainer *second,
63  const SubsetFilterTablesTemp &filters, unsigned int maximum_tries,
64  AssignmentContainer *ret);
65 
66 IMPDOMINO_END_NAMESPACE
67 
68 #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.