51 using InputChannelMap = std::unordered_map<core::UID, io::input::DataGenerator, core::uid_hash>;
59 ModelLoader(std::shared_ptr<core::Backend> backend, InputChannelMap i_map)
60 : backend_(backend), i_map_(std::move(i_map))
71 ModelLoader
operator=(
const ModelLoader &) =
delete;
78 void load(knp::framework::Model &model);
132 template <
typename GenType>
134 knp::framework::Model &model,
const std::unordered_multimap<core::UID, core::UID, core::uid_hash> &channels,
135 GenType channel_gen);
137 void gen_input_channel(knp::framework::Model &model,
const core::UID &,
const std::vector<core::UID> &);
138 void gen_output_channel(knp::framework::Model &model,
const core::UID &,
const std::vector<core::UID> &);
141 knp::core::BaseData base_;
142 std::shared_ptr<core::Backend> backend_;
144 InputChannelMap i_map_;
146 std::vector<knp::framework::io::input::InputChannel> in_channels_;
148 std::vector<knp::framework::io::output::OutputChannel> out_channels_;