chombo-discharge
CD_WedgeIF.H
Go to the documentation of this file.
1 /* chombo-discharge
2  * Copyright © 2021 SINTEF Energy Research.
3  * Please refer to Copyright.txt and LICENSE in the chombo-discharge root directory.
4  */
5 
12 #ifndef CD_WedgeIF_H
13 #define CD_WedgeIF_H
14 
15 // Chombo includes
16 #include <BaseIF.H>
17 
18 // Our includes
19 #include <CD_NamespaceHeader.H>
20 
24 class WedgeIF : public BaseIF
25 {
26 public:
35  WedgeIF(const int a_dir, const Real a_angle, const Real a_curv, const RealVect a_point, const bool a_inside);
36 
41  WedgeIF(const WedgeIF& a_inputIF);
42 
46  virtual ~WedgeIF();
47 
52  virtual Real
53  value(const RealVect& a_pos) const;
54 
58  virtual BaseIF*
59  newImplicitFunction() const;
60 
61 protected:
65  RefCountedPtr<BaseIF> m_baseIF;
66 };
67 
68 #include <CD_NamespaceFooter.H>
69 
70 #endif
Implicit function for a wedge.
Definition: CD_WedgeIF.H:25
WedgeIF(const int a_dir, const Real a_angle, const Real a_curv, const RealVect a_point, const bool a_inside)
Base constructor.
Definition: CD_WedgeIF.cpp:25
virtual ~WedgeIF()
Destructor.
Definition: CD_WedgeIF.cpp:81
virtual BaseIF * newImplicitFunction() const
Factory method.
Definition: CD_WedgeIF.cpp:91
RefCountedPtr< BaseIF > m_baseIF
Base function.
Definition: CD_WedgeIF.H:65
virtual Real value(const RealVect &a_pos) const
Get distance to object.
Definition: CD_WedgeIF.cpp:85