IMP
2.3.1
The Integrative Modeling Platform
IMP Mainpage
Modules
Applications
Related Pages
Groups
Classes
Files
Examples
Indexes
File List
File Members
IMP
Modules
Applications
All IMP Applications
Argument Index
Class Examples
Factory Index
Function Examples
Design example
Developer Guide
Installation
Introduction
Publications
ChangeLog
Tools
Dependencies
PMI changelog
Deprecated List
Groups
Classes
Files
File List
File Members
Examples
Indexes
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-2014 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