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