diff options
| author | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-03-09 08:26:01 +0100 |
|---|---|---|
| committer | Claudius "keldu" Holeksa <mail@keldu.de> | 2026-03-09 08:26:01 +0100 |
| commit | 25b8f0503c56114f097f60db215880416bd187d8 (patch) | |
| tree | 1310dca3d2a9e372ead13d166a57db8cfcbbfe84 /lib/core/c++/grid.hpp | |
| parent | adc69d0f0065228393b055604bb595510bf9cd60 (diff) | |
| parent | 25c85bf962e0646f8e03f67fd4982450f41ee6a6 (diff) | |
| download | libs-lbm-25b8f0503c56114f097f60db215880416bd187d8.tar.gz | |
Diffstat (limited to 'lib/core/c++/grid.hpp')
| -rw-r--r-- | lib/core/c++/grid.hpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/lib/core/c++/grid.hpp b/lib/core/c++/grid.hpp new file mode 100644 index 0000000..be86e18 --- /dev/null +++ b/lib/core/c++/grid.hpp @@ -0,0 +1,34 @@ +#pragma once + +#include "common.hpp" + +namespace kel { +namespace lbm { + +/** + * I'm mixing up the geometry values regarding inflow etc. And a bit of logic + */ +template<typename InfoSchema> +class domain_registry final { +private: + saw::data<sch::Array<InfoSchema>> infos_; +public: + template<typename T> + saw::data<InfoSchema> get_template_id() { + static saw::data<InfoSchema> id{std::numeric_limits<typename saw::native_data_type<InfoSchema>::type>::max()}; + + if( id == std::numeric_limits<typename saw::native_data_type<InfoSchema>::type>::max() ){ + auto err_or_id = search_or_register_id(T::name); + if(err_or_id.is_error()){ + // Unsure about recovery from this + exit(-1); + } + } + } +}; + +void clean_grid(saw::data<Schema>& info_field){ + +} +} +} |
