IMP
2.4.0
The Integrative Modeling Platform
IMP Mainpage
Modules
Classes
Examples
include
IMP
core
LeavesRefiner.h
Go to the documentation of this file.
1
/**
2
* \file IMP/core/LeavesRefiner.h
3
* \brief Return the hierarchy leaves under a particle.
4
*
5
* Copyright 2007-2015 IMP Inventors. All rights reserved.
6
*/
7
8
#ifndef IMPCORE_LEAVES_REFINER_H
9
#define IMPCORE_LEAVES_REFINER_H
10
11
#include <IMP/core/core_config.h>
12
#include "
Hierarchy.h
"
13
14
#include <
IMP/Refiner.h
>
15
16
IMPCORE_BEGIN_NAMESPACE
17
18
class
HierarchyTraits;
19
20
//! Return the hierarchy leaves under a particle.
21
/** \ingroup hierarchy
22
\see Hierarchy
23
\see Hierarchy
24
*/
25
class
IMPCOREEXPORT
LeavesRefiner
:
public
Refiner
{
26
HierarchyTraits
traits_;
27
28
public
:
29
//! Create a refiner for a particular type of hierarchy
30
LeavesRefiner
(
HierarchyTraits
tr);
31
32
virtual
bool
get_can_refine
(
kernel::Particle
*)
const
IMP_OVERRIDE
;
33
virtual
const
kernel::ParticlesTemp
get_refined
(
kernel::Particle
*)
const
34
IMP_OVERRIDE
;
35
virtual
kernel::ModelObjectsTemp
do_get_inputs
(
36
kernel::Model
*m,
const
kernel::ParticleIndexes
&pis)
const
IMP_OVERRIDE
;
37
#ifndef SWIG
38
using
Refiner::get_refined
;
39
#endif
40
IMP_OBJECT_METHODS
(
LeavesRefiner
);
41
};
42
43
IMPCORE_END_NAMESPACE
44
45
#endif
/* IMPCORE_LEAVES_REFINER_H */
Hierarchy.h
Decorator for helping deal with a hierarchy.
IMP::kernel::Refiner::get_refined
virtual const ParticlesTemp get_refined(Particle *a) const =0
Refine the passed particle into a set of particles.
IMP::core::LeavesRefiner
Return the hierarchy leaves under a particle.
Definition:
LeavesRefiner.h:25
IMP_OBJECT_METHODS
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition:
object_macros.h:25
IMP::base::Vector< base::WeakPointer< Particle > >
IMP::kernel::Refiner::get_can_refine
virtual bool get_can_refine(Particle *) const
Return true if this refiner can refine that particle.
Definition:
kernel/Refiner.h:51
Refiner.h
Import IMP/kernel/Refiner.h in the namespace.
IMP::kernel::ParticleInputs::do_get_inputs
virtual ModelObjectsTemp do_get_inputs(kernel::Model *m, const ParticleIndexes &pis) const
IMP::core::HierarchyTraits
Define the type for a type of hierarchy.
Definition:
core/Hierarchy.h:47
IMP::kernel::Particle
Class to handle individual model particles.
Definition:
kernel/Particle.h:37
IMP::kernel::Refiner
Abstract class to implement hierarchical methods.
Definition:
kernel/Refiner.h:34
IMP_OVERRIDE
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.
Definition:
compiler_macros.h:75
IMP::kernel::Model
Class for storing model, its restraints, constraints, and particles.
Definition:
kernel/Model.h:73