IMP logo
IMP Reference Guide  develop.d97d4ead1f,2024/11/21
The Integrative Modeling Platform
NuisanceRangeModifier.h
Go to the documentation of this file.
1 /**
2  * \file IMP/spb/NuisanceRangeModifier.h
3  * \brief Ensure that a Nuisance stays within its set range.
4  *
5  * Copyright 2007-2022 IMP Inventors. All rights reserved.
6  */
7 
8 #ifndef IMPSPB_NUISANCE_RANGE_MODIFIER_H
9 #define IMPSPB_NUISANCE_RANGE_MODIFIER_H
10 
11 #include <IMP/SingletonModifier.h>
12 #include <IMP/isd/Nuisance.h>
13 #include <IMP/singleton_macros.h>
14 #include <IMP/spb/spb_config.h>
15 
16 IMPSPB_BEGIN_NAMESPACE
17 
18 //! Ensure that a Nuisance stays within its set range.
19 class IMPSPBEXPORT NuisanceRangeModifier : public SingletonModifier {
20  public:
22 
23  // note, Doxygen wants a semicolon at the end of macro lines
24  virtual void apply_index(IMP::Model *m,
25  IMP::ParticleIndex p) const override;
27  IMP::Model *m, const IMP::ParticleIndexes &pis) const override;
29  IMP::Model *m, const IMP::ParticleIndexes &pis) const override;
30 
33 
35 };
36 
37 IMPSPB_END_NAMESPACE
38 
39 #endif /* IMPSPB_NUISANCE_RANGE_MODIFIER_H */
A base class for modifiers of ParticlesTemp.
A Modifier on ParticlesTemp.
Ensure that a Nuisance stays within its set range.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
Macros for various classes.
#define IMP_SHOWABLE(Name)
A decorator for nuisance parameters particles.
virtual ModelObjectsTemp do_get_outputs(Model *m, const ParticleIndexes &pis) const =0
Overload this method to specify the outputs.
A more IMP-like version of the std::vector.
Definition: Vector.h:50
Class for storing model, its restraints, constraints, and particles.
Definition: Model.h:86
#define IMP_SINGLETON_MODIFIER_METHODS(Name)
virtual ModelObjectsTemp do_get_inputs(Model *m, const ParticleIndexes &pis) const =0
Overload this method to specify the inputs.
virtual void apply_index(Model *m, ParticleIndex v) const =0