#pragma once
-#include "../util/protocolstrategy.h"
+#include "../util/ProtocolStrategy.h"
#include <core/video_channel.h>
#include <core/thumbnail_generator.h>
+#include <core/producer/media_info/media_info_repository.h>
+#include <core/producer/cg_proxy.h>
+#include <core/system_info_provider.h>
#include <common/memory.h>
#include <boost/noncopyable.hpp>
#include <string>
+#include <future>
namespace caspar { namespace protocol { namespace amcp {
class AMCPProtocolStrategy : public IO::IProtocolStrategy, boost::noncopyable
{
public:
- AMCPProtocolStrategy(const std::vector<spl::shared_ptr<core::video_channel>>& channels, const std::shared_ptr<core::thumbnail_generator>& thumb_gen);
+ AMCPProtocolStrategy(const std::wstring& name, const spl::shared_ptr<class amcp_command_repository>& repo);
+
virtual ~AMCPProtocolStrategy();
virtual void Parse(const std::wstring& msg, IO::ClientInfoPtr pClientInfo);
- virtual std::string GetCodepage() { return "UTF-8"; }
+ virtual std::string GetCodepage() const { return "UTF-8"; }
private:
struct impl;