#include "StdAfx.h"\r
\r
#include "server.h"\r
+#include "channel.h"\r
\r
#include "consumer/oal/oal_consumer.h"\r
#ifndef DISABLE_BLUEFISH\r
#include <boost/property_tree/ptree.hpp>\r
#include <boost/property_tree/xml_parser.hpp>\r
\r
+#include "producer/frame_producer_device.h"\r
+#include "consumer/frame_consumer_device.h"\r
+#include "processor/frame_processor_device.h"\r
+\r
namespace caspar { namespace core {\r
\r
struct server::implementation : boost::noncopyable\r
}\r
}\r
\r
- channels_.push_back(std::make_shared<renderer::render_device>(format_desc, consumers));\r
+ auto processor_device = std::make_shared<frame_processor_device>(format_desc);\r
+ auto producer_device = std::make_shared<frame_producer_device>(processor_device);\r
+ auto consumer_device = std::make_shared<frame_consumer_device>(processor_device, format_desc, consumers);\r
+ channels_.push_back(std::make_shared<channel>(producer_device, processor_device, consumer_device));\r
}\r
}\r
\r
catch(...)\r
{\r
CASPAR_LOG_CURRENT_EXCEPTION();\r
- throw;\r
}\r
}\r
}\r
}\r
\r
std::vector<IO::AsyncEventServerPtr> async_servers_;\r
-\r
- std::vector<renderer::render_device_ptr> channels_;\r
+ \r
+ std::vector<channel_ptr> channels_;\r
\r
int logLevel_;\r
\r
return server::implementation::data_folder_;\r
}\r
\r
-const std::vector<renderer::render_device_ptr>& server::get_channels() const{ return impl_->channels_; }\r
-\r
+const std::vector<channel_ptr> server::get_channels() const\r
+{\r
+ return impl_->channels_;\r
+}\r
}}
\ No newline at end of file