#include "mix_cc/fp.h" #include "mix_cc/json.h" #include #include using mix_cc::maybe; mix_cc::maybe makeBaseAlg(); const std::function(maybe&&)> loadIhdData = [](maybe&& algMaybe) { return algMaybe; }; const std::function(maybe&&)> loadMemData = [](maybe&& algMaybe) { return algMaybe; }; const auto loadDataMaybe = [](maybe&& algMaybe) { // auto i = mix_cc::fp::lift_maybe([](BaseAlg& alg){ // return 0; // },algMaybe); }; maybe filterData(maybe&& ptr) { ptr->dataFrame.filter(); } maybe transformData(maybe&&) {} maybe readData(maybe&&) {} AlarmInfo readAlarm(maybe&&) {} maybe transformData(maybe&&); void saveAlarm(mix_cc::maybe&&); void saveData(mix_cc::maybe&&); void exec() { using namespace mix_cc; const auto task_type = 0; std::function)> final_execute; if (task_type == 0) { final_execute = [](mix_cc::maybe ptr) { return saveAlarm(ptr); }; } // fwd::apply(makeBaseAlg(), fwd::lift_maybe([](BaseAlg& alg) { // fwd::apply( // &alg, [](auto ptr) { return readData(ptr); }, // [](auto ptr) { // filterData(ptr); // return transformData(ptr); // }); // }), // final_execute()); }