BEM++  2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
context.hpp
1 #ifndef bempp_context_hpp
2 #define bempp_context_hpp
3 
4 #include "../common/common.hpp"
5 #include "../common/shared_ptr.hpp"
6 #include "../fiber/quadrature_strategy.hpp"
7 #include "assembly_options.hpp"
8 #include "discrete_boundary_operator_cache.hpp"
9 
10 namespace Bempp
11 {
12 
14 class GeometryFactory;
15 template <typename ValueType> class DiscreteBoundaryOperator;
16 template <typename BasisFunctionType, typename ResultType> class AbstractBoundaryOperator;
29 template <typename BasisFunctionType, typename ResultType>
30 class Context
31 {
32 public:
36 
46  Context(const shared_ptr<const QuadratureStrategy>& quadStrategy,
48 
62  shared_ptr<const DiscreteBoundaryOperator<ResultType> >
64  BasisFunctionType, ResultType>& op) const;
65 
69  return m_assemblyOptions;
70  }
71 
74  shared_ptr<const QuadratureStrategy> quadStrategy() const {
75  return m_quadStrategy;
76  }
77 
78 private:
79  shared_ptr<const QuadratureStrategy> m_quadStrategy;
80  AssemblyOptions m_assemblyOptions;
81 };
82 
83 } // namespace Bempp
84 
85 #endif
const AssemblyOptions & assemblyOptions() const
Return a reference to a copy of the AssemblyOptions object passed when constructing the Context...
Definition: context.hpp:68
Base class for quadrature strategies.
Definition: quadrature_strategy.hpp:242
#define BEMPP_DEPRECATED
Macro used to mark deprecated functions or classes.
Definition: deprecated.hpp:41
Assembly context.
Definition: context.hpp:30
Fiber::QuadratureStrategy< BasisFunctionType, ResultType, GeometryFactory > QuadratureStrategy
Type of the appropriate instantiation of Fiber::QuadratureStrategy.
Definition: context.hpp:35
Context(const shared_ptr< const QuadratureStrategy > &quadStrategy, const AssemblyOptions &assemblyOptions)
Constructor.
Definition: context.cpp:33
Abstract (non-discretized) boundary operator.
Definition: abstract_boundary_operator.hpp:90
BEMPP_DEPRECATED shared_ptr< const DiscreteBoundaryOperator< ResultType > > getWeakForm(const AbstractBoundaryOperator< BasisFunctionType, ResultType > &op) const
Return the discrete weak form of the specified abstract operator.
Definition: context.cpp:46
Options determining how weak-form assembly is done.
Definition: assembly_options.hpp:43
shared_ptr< const QuadratureStrategy > quadStrategy() const
Return a reference to the QuadratureStrategy object passed when constructing the Context.
Definition: context.hpp:74