#pragma once #include "IModule.h" #include "Parameter.h" #include namespace mdd { class IProcessor: public IModule{ public: virtual std::string addModule(std::shared_ptr module) = 0; virtual void removeModule(std::shared_ptr module) = 0; virtual std::vector>& getInputParams() = 0; virtual std::vector>& getOutputParams() = 0; virtual std::vector>& getModules() = 0; virtual size_t getNumModuls() = 0; virtual std::shared_ptr getModule(size_t index) = 0; virtual std::shared_ptr getModule(const std::string& id) = 0; virtual bool connect(const std::string& output_id, const std::vector& input_ids) = 0; }; }