1 #ifndef PSIM_COMPOSITESURFACE_H
2 #define PSIM_COMPOSITESURFACE_H
28 return main_surface_.
contains(point);
31 return emit_sub_surfaces_;
46 friend std::ostream& operator<<(std::ostream& os, const
CompositeSurface& surface);
62 [[nodiscard]]
bool verifySurfaceLine(const
Line& surface_line) const;
68 [[nodiscard]]
const char*
what() const noexcept
override {
69 return message_.c_str();
Geometry::Point Point
Definition: cell.cpp:18
Geometry::Line Line
Definition: cell.cpp:17
Definition: compositeSurface.h:65
const char * what() const noexcept override
Definition: compositeSurface.h:68
void setMessage(std::string_view message)
Definition: compositeSurface.h:73
Definition: compositeSurface.h:17
void updateEmitSurfaceTables() noexcept
Definition: compositeSurface.cpp:22
bool addTransitionSurface(const Line &surface_line, Cell &cell, int norm_sign)
Definition: compositeSurface.cpp:43
const auto & getEmitSurfaces() const noexcept
Definition: compositeSurface.h:30
const Line & getSurfaceLine() const noexcept
Definition: compositeSurface.h:24
void handlePhonon(Phonon &p, const Point &poi, double step_time) const noexcept
Definition: compositeSurface.cpp:53
CompositeSurface(Surface &&main_surface)
Definition: compositeSurface.cpp:18
bool contains(const Point &point) const noexcept
Definition: compositeSurface.h:27
bool addEmitSurface(const Line &, Cell &, const Material &, double temp, int norm_sign, double duration, double start_time)
Definition: compositeSurface.cpp:26
Definition: material.h:15
bool contains(const Point &point) const noexcept
Definition: surface.h:33
const Line & getSurfaceLine() const noexcept
Definition: surface.h:30
Definition: surface.h:104
int main(int argc, char *argv[])
Definition: main.cpp:14
Definition: geometry.h:39
Definition: geometry.h:23