fix: fabric-bridge build - use NodeRunner::run, get writer config from node base class

This commit is contained in:
Johanness
2026-06-14 15:27:47 +03:00
parent 1ab41b6740
commit 919f61fc72
4 changed files with 21 additions and 15 deletions
+10 -2
View File
@@ -9,6 +9,7 @@
#include <nlohmann/json.hpp>
#include <memory>
#include <unordered_map>
#include <vector>
namespace dmf_node {
@@ -21,8 +22,8 @@ public:
virtual std::vector<PortDef> input_ports() const = 0;
virtual std::vector<PortDef> output_ports() const = 0;
virtual void configure(const nlohmann::json& params) = 0;
virtual void on_add_writer(const std::string& port_id, mxlFlowWriter writer) = 0;
virtual void on_add_reader(const std::string& port_id, mxlFlowReader reader) = 0;
virtual void on_add_writer(const std::string& port_id, mxlFlowWriter writer) {}
virtual void on_add_reader(const std::string& port_id, mxlFlowReader reader) {}
virtual void on_remove_writer(const std::string& port_id) = 0;
virtual void on_remove_reader(const std::string& port_id) = 0;
virtual void process() = 0;
@@ -31,8 +32,15 @@ public:
void set_mxl_instance(mxlInstance instance) { mxl_instance_ = instance; }
mxlInstance get_mxl_instance() const { return mxl_instance_; }
void set_writer_config(const std::string& port_id, const mxlFlowConfigInfo& config) { writer_configs_[port_id] = config; }
void set_reader_config(const std::string& port_id, const mxlFlowConfigInfo& config) { reader_configs_[port_id] = config; }
const mxlFlowConfigInfo* get_writer_config(const std::string& port_id) const { auto it = writer_configs_.find(port_id); return it != writer_configs_.end() ? &it->second : nullptr; }
const mxlFlowConfigInfo* get_reader_config(const std::string& port_id) const { auto it = reader_configs_.find(port_id); return it != reader_configs_.end() ? &it->second : nullptr; }
private:
mxlInstance mxl_instance_ = nullptr;
std::unordered_map<std::string, mxlFlowConfigInfo> writer_configs_;
std::unordered_map<std::string, mxlFlowConfigInfo> reader_configs_;
};
} // namespace dmf_node