home
about
news
download
doc
source
systems
tests
bugs
contact
IMP Reference Guide
2.14.0
The Integrative Modeling Platform
IMP Manual
Reference Guide
Tutorial Index
Modules
Classes
Examples
include
IMP
em2d
version 2.14.0
domino_filter_tables.h
Go to the documentation of this file.
1
/**
2
* \file IMP/em2d/domino_filter_tables.h
3
* \brief Managing of projection overlap filter
4
*
5
* Copyright 2007-2020 IMP Inventors. All rights reserved.
6
*
7
*/
8
9
#ifndef IMPEM2D_DOMINO_FILTER_TABLES_H
10
#define IMPEM2D_DOMINO_FILTER_TABLES_H
11
12
#include "
IMP/em2d/domino_particle_states.h
"
13
#include "
IMP/domino/Subset.h
"
14
#include "
IMP/domino/subset_filters.h
"
15
#include "
IMP/log.h
"
16
17
IMPEM2D_BEGIN_NAMESPACE
18
19
/*! Table to create DistanceFilters on demand
20
21
*/
22
class
IMPEM2DEXPORT
DistanceFilterTable
:
public
domino::SubsetFilterTable
{
23
protected
:
24
domino::Subset
my_subset_;
25
Pointer<domino::ParticleStatesTable>
ps_table_;
26
double
max_distance_;
// max distance tolerated between the particles
27
28
public
:
29
DistanceFilterTable
(
const
domino::Subset
&subset_to_act_on,
30
domino::ParticleStatesTable
*ps_table,
31
double
max_distance)
32
: my_subset_(subset_to_act_on),
33
ps_table_(ps_table),
34
max_distance_(max_distance) {};
35
36
void
show
(std::ostream &out = std::cout)
const
{
37
out <<
"DistanceFilterTable"
<< std::endl;
38
};
39
40
virtual
IMP::domino::SubsetFilter
*
41
get_subset_filter
(
const
IMP::domino::Subset
&s,
42
const
IMP::domino::Subsets
&excluded)
const
43
IMP_OVERRIDE
;
44
45
virtual
double
get_strength
(
const
IMP::domino::Subset
&s,
46
const
IMP::domino::Subsets
&excluded)
const
47
IMP_OVERRIDE
;
48
49
IMP_OBJECT_METHODS
(
DistanceFilterTable
);
50
};
51
IMP_OBJECTS
(
DistanceFilterTable
,
DistanceFilterTables
);
52
53
IMPEM2D_END_NAMESPACE
54
55
#endif
/* IMPEM2D_DOMINO_FILTER_TABLES_H */
IMP::domino::SubsetFilterTable::get_subset_filter
virtual SubsetFilter * get_subset_filter(const Subset &s, const Subsets &prior_subsets) const =0
IMP_OBJECT_METHODS
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition:
object_macros.h:25
subset_filters.h
A Bayesian inference-based sampler.
IMP::domino::Subset
Represent a subset of the particles being optimized.
Definition:
Subset.h:33
domino_particle_states.h
Particles states for a rigid body that is going to be projected.
IMP::Vector
A more IMP-like version of the std::vector.
Definition:
Vector.h:39
IMP::Pointer< domino::ParticleStatesTable >
IMP::em2d::DistanceFilterTable
Definition:
domino_filter_tables.h:22
IMP::domino::SubsetFilterTable
Definition:
subset_filters.h:78
IMP::domino::ParticleStatesTable
Definition:
particle_states.h:73
IMP::domino::SubsetFilterTable::get_strength
virtual double get_strength(const Subset &s, const Subsets &prior_subsets) const =0
The strength is a rough metric of how this filter restricts the subset.
Subset.h
A Bayesian inference-based sampler.
IMP::core::show
std::ostream & show(Hierarchy h, std::ostream &out=std::cout)
Print the hierarchy using a given decorator to display each node.
Definition:
core/Hierarchy.h:396
IMP_OBJECTS
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing lists of object pointers.
Definition:
object_macros.h:44
IMP::domino::SubsetFilter
Definition:
subset_filters.h:44
log.h
Logging and error reporting support.
IMP_OVERRIDE
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.
Definition:
compiler_macros.h:78