X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=core%2Fvideo_channel_context.h;h=4c06e3a9f3801dd9fafee0c48bd8232bec31d2c3;hb=69e82acba97a416547fabd5751195df5e8b6bda7;hp=9b8bf24dc22f9f47df6df88df3aa11cb969c6a6a;hpb=78d792990549440910cc9c9bfb2af288fd9ced53;p=casparcg diff --git a/core/video_channel_context.h b/core/video_channel_context.h index 9b8bf24dc..4c06e3a9f 100644 --- a/core/video_channel_context.h +++ b/core/video_channel_context.h @@ -2,39 +2,39 @@ #include -#include #include +#include + #include #include #include -namespace caspar { namespace core { +namespace caspar { + +class executor; + +namespace core { -struct video_channel_context +class ogl_device; + +class video_channel_context { - video_channel_context(int index, ogl_device& ogl, const video_format_desc& format_desc) - : index(index) - , format_desc(format_desc) - , execution(print() + L"/execution") - , destruction(print() + L"/destruction") - , ogl(ogl) - { - execution.set_priority_class(above_normal_priority_class); - destruction.set_priority_class(below_normal_priority_class); - } - - const int index; - video_format_desc format_desc; - executor execution; - executor destruction; - ogl_device& ogl; - - std::wstring print() const - { - return L"video_channel[" + boost::lexical_cast(index+1) + L"-" + format_desc.name + L"]"; - } + +public: + video_channel_context(int index, ogl_device& ogl, const video_format_desc& format_desc); + + const int index() const; + video_format_desc get_format_desc(); + void set_format_desc(const video_format_desc& format_desc); + executor& execution(); + executor& destruction(); + ogl_device& ogl(); + std::wstring print() const; +private: + struct implementation; + std::shared_ptr impl_; }; }} \ No newline at end of file