source: src/interface/interface.hpp@ 66f24d

Last change on this file since 66f24d was 48b662, checked in by Olaf Lenz <olenz@…>, 14 years ago

Moved files in scafacos_fcs one level up.

git-svn-id: https://svn.version.fz-juelich.de/scafacos/trunk@847 5161e1c8-67bf-11de-9fd5-51895aff932f

  • Property mode set to 100644
File size: 1.1 KB
Line 
1/**
2 * @file interface.hpp
3 * @author Julian Iseringhausen <isering@ins.uni-bonn.de>
4 * @date Mon Apr 18 12:56:05 2011
5 *
6 * @brief VMG::Interface
7 *
8 */
9
10#ifndef INTERFACE_HPP_
11#define INTERFACE_HPP_
12
13#include <vector>
14
15#include "base/object.hpp"
16#include "grid/grid_indexing.hpp"
17
18namespace VMG
19{
20
21class Grid;
22class Multigrid;
23
24class Interface : public Object
25{
26public:
27 Interface(BC boundary, int levelMin, int levelMax, vmg_float box_begin, vmg_float box_end,
28 int coarseningSteps=0, vmg_float alpha=1.6);
29
30 virtual ~Interface() {}
31
32 virtual void ImportRightHandSide(Multigrid& grid) = 0;
33 virtual void ExportSolution(Grid& grid) = 0;
34
35 const std::vector<GlobalIndices>& Global() const {return global;}
36 const std::vector<SpatialExtent>& Extent() const {return extent;}
37 const BC& BoundaryConditions() const {return bc;}
38
39 const int& MinLevel() const {return levelMin;}
40 const int& MaxLevel() const {return levelMax;}
41
42private:
43 std::vector<GlobalIndices> global;
44 std::vector<SpatialExtent> extent;
45
46 BC bc;
47
48 int levelMin, levelMax;
49};
50
51}
52
53#endif /* INTERFACE_HPP_ */
Note: See TracBrowser for help on using the repository browser.