Phoxonics  1.0
Object Oriented FDTD Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Circle2D.hpp
Go to the documentation of this file.
1 /*
2  * GeometryCircle2D.hpp
3  *
4  * Created on: Jun 25, 2014
5  * Author: nano
6  */
7 
8 #ifndef CIRCLE2D_HPP_
9 #define CIRCLE2D_HPP_
10 
11 #include "GeometryBase.hpp"
12 #include "GeometryFactoryReg.hpp"
13 #include "../material/MaterialFactory.hpp"
14 #include "../grid/GridBase.hpp"
15 #include <string>
16 #include <memory>
17 
18 namespace phoxonics {
19 namespace core {
20 
21 class Circle2D : public GeometryBase {
22 public:
23  explicit Circle2D();
24  virtual ~Circle2D();
25 
26  std::string radius { "" };
27 
28  // configures object and initializes data from config
29  void configure(std::shared_ptr<ConfigBase> config_base) override final;
30 
31  // prints object data
32  void print_me() override final;
33 
34  // generate geometry
35  void generate_geometry(std::shared_ptr<GridBase> grid_base) override final;
36 };
37 
38 } /* namespace core */
39 } /* namespace phoxonics */
40 
41 #endif /* CIRCLE2D_HPP_ */
std::string radius
Definition: Circle2D.hpp:26
Definition: Circle2D.hpp:21
Definition: CommonBase.hpp:14
Definition: GeometryBase.hpp:23
STL namespace.
void generate_geometry(std::shared_ptr< GridBase > grid_base) overridefinal
Definition: Circle2D.cpp:46
Circle2D()
Definition: Circle2D.cpp:15
Definition: GridBase.hpp:26
virtual void configure()
Definition: SimulationItemBase.cpp:21
virtual ~Circle2D()
Definition: Circle2D.cpp:19
void print_me() overridefinal
Definition: Circle2D.cpp:40