SPH
GridPage.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "post/Analysis.h"
4 #include "quantities/Storage.h"
5 #include <thread>
6 #include <wx/grid.h>
7 #include <wx/panel.h>
8 
10 
11 enum class CheckFlag;
12 
13 class GridPage : public wxPanel {
14 private:
15  wxGrid* grid = nullptr;
16  std::thread thread;
17  const Storage& storage;
18 
19  wxSpinCtrl* countSpinner;
20 
21 public:
22  GridPage(wxWindow* parent, const wxSize size, const Storage& storage);
23 
24  ~GridPage();
25 
26 private:
27  struct Config {
28  Float moonLimit = 0.1f;
29  Float radiiLimit = 2.f;
30  };
31 
32  void update(const Storage& storage, const Config& config);
33 
34  void updateAsync(const Storage& storage,
35  const Size fragmentCnt,
36  const Flags<CheckFlag> checks,
37  const Config& config);
38 
39  template <typename T>
40  void updateCell(const Size rowIdx, const Size colIdx, const T& value);
41 
42  wxCheckBox* getCheck(const CheckFlag check) const;
43 
44  Size getCheckedCount() const;
45 };
46 
Various function for interpretation of the results of a simulation.
NAMESPACE_SPH_BEGIN
Definition: BarnesHut.cpp:13
uint32_t Size
Integral type used to index arrays (by default).
Definition: Globals.h:16
double Float
Precision used withing the code. Use Float instead of float or double where precision is important.
Definition: Globals.h:13
CheckFlag
Definition: GridPage.cpp:28
#define NAMESPACE_SPH_END
Definition: Object.h:12
Container for storing particle quantities and materials.
Wrapper of an integral value providing functions for reading and modifying individual bits.
Definition: Flags.h:20
GridPage(wxWindow *parent, const wxSize size, const Storage &storage)
Definition: GridPage.cpp:41
Container storing all quantities used within the simulations.
Definition: Storage.h:230