#pragma once #include #include #include #include "common/scorer.h" #include "common/loader.h" #include "common/logging.h" #include "common/base_best_hyps.h" namespace amunmt { namespace CPU { namespace dl4mt { class Weights; } namespace Nematus { class Weights; } class EncoderDecoderLoader : public Loader { public: EncoderDecoderLoader(const std::string name, const YAML::Node& config); virtual void Load(const God& god); virtual ScorerPtr NewScorer(const God &god, const DeviceInfo &deviceInfo) const; BaseBestHypsPtr GetBestHyps(const God &god, const DeviceInfo &deviceInfo) const; private: std::vector> dl4mtModels_; std::vector> nematusModels_; }; } // namespace CPU }