IMP logo
IMP Reference Guide  2.14.0
The Integrative Modeling Platform
SlabWithToroidalPoreGeometry.h
Go to the documentation of this file.
1 /**
2  * \file SlabWithToroidalPoreGeometry.h
3  * \brief XXXXXXXXXXXXXX
4  *
5  * Copyright 2007-2020 IMP Inventors. All rights reserved.
6  */
7 
8 #ifndef IMPNPCTRANSPORT_SLAB_WITH_TOROIDAL_PORE_GEOMETRY_H
9 #define IMPNPCTRANSPORT_SLAB_WITH_TOROIDAL_PORE_GEOMETRY_H
10 
11 #include "npctransport_config.h"
12 #include <IMP/display/geometry.h>
14 
15 IMPNPCTRANSPORT_BEGIN_NAMESPACE
16 
17 //! XXXX
18 /** XXXXXX.
19  */
20 class IMPNPCTRANSPORTEXPORT SlabWithToroidalPoreWireGeometry : public display::Geometry {
21  double rv_; // minor radius in vertical direction (vertical semi-axis)
22  double rh_; // minor radius in horizontal direction (horizontal semi-axis)
23  double R_; // major radius
24  double slab_length_; // length of slab edge
25 
26  public:
27  //! Slab with specified height from top to bottom, slab_length x slab_length area,
28  //! and an elliptic toroidal pore of specified major radius,
29  //! slab_height/2.0 vertical semi-axis, specified horizontal semi-axis
30  SlabWithToroidalPoreWireGeometry(double slab_height,
31  double major_radius,
32  double horizontal_semiaxis,
33  double slab_length);
34 
35  //! Slab with specified height from top to bottom, slab_length x slab_length area,
36  //! and a ring toroidal pore of specified major radius and slab_height/2.0 minor radius
37  SlabWithToroidalPoreWireGeometry(double slab_height, double major_radius, double slab_length);
38 
39  //! returns the set of geometric components that comprise this geometry
40  //! (for e.g. storing in RMF format)
42 
44 };
45 
46 
47 IMPNPCTRANSPORT_END_NAMESPACE
48 
49 #endif /* IMPNPCTRANSPORT_SLAB_WITH_TOROIDAL_PORE_GEOMETRY_H */
The base class for geometry.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Definition: object_macros.h:25
macros for display classes
virtual Geometries get_components() const
Return a set of geometry composing this one.
Backwards compatibility header.
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.