10 #define IMPATOM_COPY_H
12 #include <IMP/atom/atom_config.h>
13 #include "../macros.h"
20 IMPATOM_BEGIN_NAMESPACE
32 if (!Molecule::get_is_setup(m, pi)) {
38 static IntKey get_copy_index_key();
45 return m->get_has_attribute(get_copy_index_key(), pi);
The base class for decorators.
#define IMP_DECORATOR_SETUP_1(Name, FirstArgumentType, first_argument_name)
A decorator for Molecules.
static Molecule setup_particle(Model *m, ParticleIndex pi)
Class for storing model, its restraints, constraints, and particles.
A decorator for keeping track of copies of a molecule.
void add_attribute(TypeKey attribute_key, ParticleIndex particle, Type value)
Particle * get_particle() const
Returns the particle decorated by this decorator.
#define IMP_DECORATOR_METHODS(Name, Parent)
#define IMP_DECORATORS(Name, PluralName, Parent)
Define the types for storing sets of decorators.
int Int
Basic integer value.
int get_copy_index(Hierarchy h)
Walk up the hierarchy to find the current copy index.
A decorator for a molecule.