#pragma once #include #include #include #include "node.h" namespace rk3588 { class EventFusionNode final : public INode { public: EventFusionNode(); ~EventFusionNode() override; std::string Id() const override; std::string Type() const override; bool Init(const SimpleJson& config, const NodeContext& ctx) override; bool Start() override; void Stop() override; NodeStatus Process(FramePtr frame) override; private: void EnsureBehaviorEvents(Frame& frame); void PushToDownstream(const FramePtr& frame); struct Impl; std::unique_ptr impl_; std::string id_; std::vector>> output_queues_; }; } // namespace rk3588