IMP
2.1.0
The Integrative Modeling Platform
IMP Mainpage
All IMP Modules
Related Pages
Modules
Namespaces
Classes
Files
Examples
Indexes
File List
File Members
kernel/model_object_helpers.h
Go to the documentation of this file.
1
/**
2
* \file IMP/kernel/model_object_helpers.h \brief Single variable function.
3
*
4
* Copyright 2007-2013 IMP Inventors. All rights reserved.
5
*/
6
7
#ifndef IMPKERNEL_MODEL_OBJECT_HELPERS_H
8
#define IMPKERNEL_MODEL_OBJECT_HELPERS_H
9
10
#include <IMP/kernel/kernel_config.h>
11
#include "
ModelObject.h
"
12
#include "
particle_index.h
"
13
14
IMPKERNEL_BEGIN_NAMESPACE
15
16
/** Inherit from this for objects that take particle arguments and read from
17
them. */
18
class
IMPKERNELEXPORT
ParticleInputs
{
19
public
:
20
/** Get the list of ModelObjects read when passed the given list of particles
21
is used.*/
22
ModelObjectsTemp
get_inputs(
kernel::Model
*m,
23
const
ParticleIndexes
&pis)
const
;
24
25
/** \deprecated_at{2.1} Use get_inputs instead. */
26
IMPKERNEL_DEPRECATED_METHOD_DECL(2.1)
27
virtual
ContainersTemp
get_input_containers
(
Particle
*p)
const
;
28
/** \deprecated_at{2.1} Use get_inputs instead. */
29
IMPKERNEL_DEPRECATED_METHOD_DECL(2.1)
30
virtual
ParticlesTemp
get_input_particles
(
Particle
*p)
const
;
31
32
protected
:
33
/** Overload this method to specify the inputs.*/
34
virtual
ModelObjectsTemp
do_get_inputs(
kernel::Model
*m,
35
const
ParticleIndexes
&pis)
const
;
36
virtual
~
ParticleInputs
() {}
37
};
38
39
/** Inherit from this for objects that take particle arguments and modify
40
them. */
41
class
IMPKERNELEXPORT
ParticleOutputs
{
42
public
:
43
/** Get the list of ModelObjects changed when passed the given list of
44
particles is used.*/
45
ModelObjectsTemp
get_outputs(
kernel::Model
*m,
46
const
ParticleIndexes
&pis)
const
;
47
48
/** \deprecated_at{2.1} Use get_inputs instead. */
49
IMPKERNEL_DEPRECATED_METHOD_DECL(2.1)
50
virtual
ContainersTemp
get_output_containers
(
Particle
*p)
const
;
51
/** \deprecated_at{2.1} Use get_inputs instead. */
52
IMPKERNEL_DEPRECATED_METHOD_DECL(2.1)
53
virtual
ParticlesTemp
get_output_particles
(
Particle
*p)
const
;
54
55
protected
:
56
/** Overload this method to specify the outputs.*/
57
virtual
ModelObjectsTemp
do_get_outputs(
kernel::Model
*m,
58
const
ParticleIndexes
&pis)
const
;
59
virtual
~
ParticleOutputs
() {}
60
};
61
62
/** Compute the set of score states required by the passed list of
63
ModelObjects. This will compute dependencies if needed.*/
64
IMPKERNELEXPORT
ScoreStatesTemp
65
get_required_score_states
(
const
ModelObjectsTemp
&mos,
66
ScoreStatesTemp
exclude =
ScoreStatesTemp
());
67
68
IMPKERNEL_END_NAMESPACE
69
70
#endif
/* IMPKERNEL_MODEL_OBJECT_HELPERS_H */
particle_index.h
Various general useful functions for IMP.
IMP::kernel::get_output_particles
ParticlesTemp get_output_particles(const ModelObjectsTemp &mos)
IMP::kernel::get_output_containers
ContainersTemp get_output_containers(const ModelObjectsTemp &mos)
IMP::kernel::get_input_particles
ParticlesTemp get_input_particles(const ModelObjectsTemp &mos)
IMP::base::Vector
Definition:
base/Vector.h:37
ModelObject.h
Single variable function.
IMP::kernel::get_input_containers
ContainersTemp get_input_containers(const ModelObjectsTemp &mos)
IMP::kernel::ScoreStatesTemp
IMP::base::Vector< IMP::base::WeakPointer< ScoreState > > ScoreStatesTemp
Definition:
kernel/base_types.h:90
IMP::kernel::ParticleOutputs
Definition:
kernel/model_object_helpers.h:41
IMP::kernel::ParticleInputs
Definition:
kernel/model_object_helpers.h:18
IMP::kernel::Particle
Class to handle individual model particles.
Definition:
kernel/declare_Particle.h:34
IMP::kernel::get_required_score_states
ScoreStatesTemp get_required_score_states(ModelObject *p, const ModelObjectsTemp &all, const DependencyGraph &dg, const DependencyGraphVertexIndex &index)
IMP::kernel::Model
Class for storing model, its restraints, constraints, and particles.
Definition:
kernel/declare_Model.h:72