IMP
2.2.0
The Integrative Modeling Platform
IMP Mainpage
All IMP Modules
Related Pages
Modules
Namespaces
Classes
Files
Examples
Indexes
File List
File Members
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-2014 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/base/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
base::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_NO_WARNING
(
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_NO_WARNING
#define IMP_OBJECT_NO_WARNING(Name)
Only to work around a gcc bug.
Definition:
base/object_macros.h:38
IMP::base::Pointer< domino::ParticleStatesTable >
subset_filters.h
A beyesian infererence-based sampler.
IMP::domino::Subset
Represent a subset of the particles being optimized.
Definition:
Subset.h:33
domino_particle_states.h
kernel::Particles states for a rigid body that is going to be projected
IMP::base::Vector
Definition:
base/Vector.h:37
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 beyesian infererence-based sampler.
IMP_OBJECTS
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing sets of objects.
Definition:
base/object_macros.h:52
IMP::atom::show
void show(Hierarchy h, std::ostream &out=std::cout)
Print out a molecular hierarchy.
Definition:
atom/Hierarchy.h:443
log.h
Logging and error reporting support.
IMP::domino::SubsetFilter
Definition:
subset_filters.h:44