]> git.sesse.net Git - casparcg/blobdiff - core/video_channel_context.h
2.0 image_mixer: Refactored, core: Fixed destruction proxy usage.
[casparcg] / core / video_channel_context.h
index f30799147c047ad7595dd07c0c51f54cb28fa376..4c06e3a9f3801dd9fafee0c48bd8232bec31d2c3 100644 (file)
@@ -2,7 +2,6 @@
 \r
 #include <common/concurrency/executor.h>\r
 \r
-#include <core/mixer/gpu/ogl_device.h>\r
 #include <core/video_format.h>\r
 \r
 #include <tbb/spin_rw_mutex.h>\r
 \r
 #include <string>\r
 \r
-namespace caspar { namespace core {\r
+namespace caspar { \r
+\r
+class executor;\r
+\r
+namespace core {\r
+\r
+class ogl_device;\r
 \r
 class video_channel_context\r
 {\r
-       mutable tbb::spin_rw_mutex      mutex_;\r
-       const int                                       index_;\r
-       video_format_desc                       format_desc_;\r
-       executor                                        execution_;\r
-       executor                                        destruction_;\r
-       ogl_device&                                     ogl_;\r
 \r
 public:\r
        video_channel_context(int index, ogl_device& ogl, const video_format_desc& format_desc);\r
@@ -33,6 +32,9 @@ public:
        executor&                       destruction();\r
        ogl_device&                     ogl();\r
        std::wstring            print() const;\r
+private:\r
+       struct implementation;\r
+       std::shared_ptr<implementation> impl_;\r
 };\r
        \r
 }}
\ No newline at end of file