9 #ifndef IMPNPC_SLAB_WITH_SPHERICAL_INDENT_H
10 #define IMPNPC_SLAB_WITH_SPHERICAL_INDENT_H
12 #include <IMP/npc/npc_config.h>
19 IMPNPC_BEGIN_NAMESPACE
38 static void do_setup_particle(
Model *m,
50 void set_sphere_radius(
double R) {
55 void set_sphere_depth(
double h) {
61 return get_particle()->get_value(get_sphere_radius_key());
66 return get_particle()->get_value(get_sphere_depth_key());
74 static FloatKey get_sphere_radius_key();
77 static FloatKey get_sphere_depth_key();
The base class for decorators.
std::string get_decorator_name() const
Get the name added to the particle (Ensures decorator_name to be the same as the name_key) ...
Storage of a model, its restraints, constraints and particles.
Exception definitions and assertions.
A more IMP-like version of the std::vector.
Class for storing model, its restraints, constraints, and particles.
A decorator for a particle that represents a slab containing a spherical cap indent.
Helper macros for implementing Decorators.
#define IMP_DECORATOR_SETUP_2(Name, FirstArgumentType, first_argument_name,SecondArgumentType, second_argument_name)
static bool get_is_setup(Model *m, ParticleIndex pi)
return true if the particle has a R and h defined
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...
void set_decorator_name(std::string nm)
Set the name added to the particle.
Float get_sphere_radius() const
return the sphere radius
#define IMP_DECORATOR_METHODS(Name, Parent)
double Float
Basic floating-point value (could be float, double...)
#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
Float get_sphere_depth() const
return the sphere depth