home
about
news
download
doc
source
systems
tests
bugs
contact
IMP Reference Guide
2.5.0
The Integrative Modeling Platform
IMP Manual
Reference Guide
Modules
Classes
Examples
include
IMP
em2d
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-2015 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
Definition:
Vector.h:37
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_OBJECTS
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing sets of objects.
Definition:
object_macros.h:42
IMP::atom::show
void show(Hierarchy h, std::ostream &out=std::cout)
Print out a molecular hierarchy.
Definition:
atom/Hierarchy.h:437
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:80