IMP logo
IMP Reference Guide  2.19.0
The Integrative Modeling Platform
CoverBond.h
Go to the documentation of this file.
1 /**
2  * \file IMP/atom/CoverBond.h
3  * \brief Cover a bond with a sphere
4  *
5  * Copyright 2007-2022 IMP Inventors. All rights reserved.
6  */
7 
8 #ifndef IMPATOM_COVER_BOND_H
9 #define IMPATOM_COVER_BOND_H
10 
11 #include <IMP/atom/atom_config.h>
12 
13 #include <IMP/PairContainer.h>
14 #include <IMP/SingletonContainer.h>
15 #include <IMP/SingletonModifier.h>
16 #include <IMP/singleton_macros.h>
17 
18 IMPATOM_BEGIN_NAMESPACE
19 
20 //! Cover a bond with a sphere
21 /** This is a version of core::CoverRefined optimized for bonds. It is
22  about 4x faster than the general purpose one.
23  */
24 class IMPATOMEXPORT CoverBond : public SingletonModifier {
25  public:
26  CoverBond();
27 
28  virtual void apply_index(Model *m, ParticleIndex p) const
29  override;
31  Model *m, const ParticleIndexes &pis) const override;
33  Model *m, const ParticleIndexes &pis) const override;
36  ;
37 };
38 
40 
41 IMPATOM_END_NAMESPACE
42 
43 #endif /* IMPATOM_COVER_BOND_H */
A base class for modifiers of ParticlesTemp.
A Modifier on ParticlesTemp.
A container for Singletons.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
Macros for various classes.
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:42
Class for storing model, its restraints, constraints, and particles.
Definition: Model.h:86
A container for Pairs.
#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.
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing lists of object pointers.
Definition: object_macros.h:44
virtual void apply_index(Model *m, ParticleIndex v) const =0
Cover a bond with a sphere.
Definition: CoverBond.h:24