9 #ifndef IMPNPCTRANSPORT_SLAB_WITH_TOROIDAL_PORE_H 
   10 #define IMPNPCTRANSPORT_SLAB_WITH_TOROIDAL_PORE_H 
   12 #include "npctransport_config.h" 
   17 IMPNPCTRANSPORT_BEGIN_NAMESPACE
 
   47                                 double minor_radius_h2v_aspect_ratio=1.0);
 
   70       double, major_radius);
 
   93                         double, minor_radius_h2v_aspect_ratio);
 
   97     return SlabWithPore::get_is_setup(m, pi) &&
 
  102   void set_minor_radius_h2v_aspect_ratio(
double aspect_ratio){
 
  104       (get_minor_radius_h2v_aspect_ratio_key(),
 
  108   double get_minor_radius_h2v_aspect_ratio()
 const{
 
  110       (get_minor_radius_h2v_aspect_ratio_key());
 
  113   double get_vertical_minor_radius()
 const{
 
  117   void set_vertical_minor_radius(
double rv) {
 
  121   double get_horizontal_minor_radius()
 const{
 
  122     return get_vertical_minor_radius()*get_minor_radius_h2v_aspect_ratio();
 
  125   void set_horizontal_minor_radius(
double rh) {
 
  126     set_minor_radius_h2v_aspect_ratio
 
  127       ( rh/ get_vertical_minor_radius() );
 
  131   static FloatKey get_minor_radius_h2v_aspect_ratio_key();
 
  134   static IntKey get_toroidal_pore_key();
 
  140 IMP_DECORATORS(SlabWithToroidalPore, SlabsWithToroidalPores, IMP::SlabsWithPores);
 
  142 IMPNPCTRANSPORT_END_NAMESPACE
 
The base class for decorators. 
 
Key< 0 > FloatKey
The type used to identify float attributes in the Particles. 
 
static bool get_is_setup(Model *m, ParticleIndex pi)
Return true if the particle is an instance of SlabWithToroidalPore. 
 
Class for storing model, its restraints, constraints, and particles. 
 
A decorator for a particle that's a slab with a cylindrical pore. 
 
void set_thickness(double thickness)
sets slab thickness 
 
Helper macros for implementing Decorators. 
 
Key< 1 > IntKey
The type used to identify int attributes in the Particles. 
 
#define IMP_DECORATOR_SETUP_2(Name, FirstArgumentType, first_argument_name,SecondArgumentType, second_argument_name)
 
Particle * get_particle() const 
Returns the particle decorated by this decorator. 
 
Float get_thickness() const 
returns whether the particle last entered the transport moiety from its 
 
#define IMP_DECORATOR_METHODS(Name, Parent)
 
#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 
 
#define IMP_DECORATOR_SETUP_3(Name, FirstArgumentType, first_argument_name,SecondArgumentType, second_argument_name,ThirdArgumentType, third_argument_name)