8 #ifndef IMPEXAMPLE_EXAMPLE_DECORATOR_H
9 #define IMPEXAMPLE_EXAMPLE_DECORATOR_H
11 #include <IMP/example/example_config.h>
19 IMPEXAMPLE_BEGIN_NAMESPACE
77 IMPEXAMPLE_END_NAMESPACE
The base class for decorators.
#define IMP_DECORATOR_SETUP_1(Name, FirstArgumentType, first_argument_name)
Storage of a model, its restraints, constraints and particles.
std::string get_decorator_name() const
Get the name added to the particle.
Exception definitions and assertions.
A more IMP-like version of the std::vector.
Class for storing model, its restraints, constraints, and particles.
A simple decorator which adds a name to a particle.
void add_attribute(TypeKey attribute_key, ParticleIndex particle, Type value)
add particle attribute with the specified key and initial value
Helper macros for implementing Decorators.
Particle * get_particle() const
Returns the particle decorated by this decorator.
Interface to specialized Particle types (e.g. atoms)
Classes to handle individual model particles. (Note that implementation of inline functions is in int...
#define IMP_DECORATOR_METHODS(Name, Parent)
#define IMP_USAGE_CHECK(expr, message)
A runtime test for incorrect usage of a class or method.
#define IMP_DECORATORS(Name, PluralName, Parent)
Define the types for storing sets of decorators.
bool get_has_attribute(TypeKey attribute_key, ParticleIndex particle) const
return true if particle has attribute with the specified key
static bool get_is_setup(Model *m, ParticleIndex pi)
return true if the particle has a name
void set_decorator_name(std::string nm)
Set the name added to the particle.