From 530bd236a0aee9c22b87de236164c59afe6adae7 Mon Sep 17 00:00:00 2001 From: "Claudius \"keldu\" Holeksa" Date: Sat, 25 Jul 2026 23:17:18 +0200 Subject: dangling --- examples/poiseulle_particles_2d_gpu/sim.cpp | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) (limited to 'examples') diff --git a/examples/poiseulle_particles_2d_gpu/sim.cpp b/examples/poiseulle_particles_2d_gpu/sim.cpp index 865babf..bb5787f 100644 --- a/examples/poiseulle_particles_2d_gpu/sim.cpp +++ b/examples/poiseulle_particles_2d_gpu/sim.cpp @@ -22,18 +22,11 @@ using LbmArgs = Args< } template -saw::error_or lbm_main(int argc, char** argv){ +saw::error_or lbm_main(const saw::data& args){ using namespace kel::lbm; using dfi = df_info; - auto eo_args = saw::parse_args(argc,argv); - if(eo_args.is_error()){ - return std::move(eo_args.get_error()); - } - auto& args = eo_args.get_value(); - (void)args; - auto eo_lbm_dir = output_directory(); if(eo_lbm_dir.is_error()){ return std::move(eo_lbm_dir.get_error()); @@ -198,14 +191,28 @@ saw::error_or lbm_main(int argc, char** argv){ using FloatT = kel::lbm::sch::Float32; -saw::error_or kmain(int argc, char** argv){ +saw::error_or k_main(int argc, char** argv){ using namespace kel::lbm; + + saw::data args; + { + auto eov = saw::parse_args(args,argc,argv); + return eov; + } + auto& an = args.template get<"args">(); + auto& coupling = an.template get<"coupling">(); + + if(coupling.view() == "hlbm"){ + return lbm_main(args); + //}else if(coupling.view() == "psm"){ + // return kmain(args); + } - // auto eo_args = saw::parse_args< + return saw::make_error("Invalid coupling"); } int main(int argc, char** argv){ - auto eov = lbm_main(argc, argv); + auto eov = k_main(argc, argv); if(eov.is_error()){ auto& err = eov.get_error(); std::cerr<<"[Error] "<