]> git.sesse.net Git - casparcg/blobdiff - core/producer/stage.h
Merge branch 'master' of https://github.com/ronag/Server into master
[casparcg] / core / producer / stage.h
index e7178caa0add511115b56203d36eef485860c7e7..403498d9011fe461979382bf5533fd5a3f405c3a 100644 (file)
@@ -23,6 +23,8 @@
 \r
 #include "frame_producer.h"\r
 \r
+#include "../monitor/monitor.h"\r
+\r
 #include <common/memory/safe_ptr.h>\r
 #include <common/concurrency/target.h>\r
 #include <common/diagnostics/graph.h>\r
@@ -41,13 +43,18 @@ struct frame_transform;
 class stage : boost::noncopyable\r
 {\r
 public:\r
+\r
+       // Static Members\r
+\r
        typedef std::function<struct frame_transform(struct frame_transform)>                                                   transform_func_t;\r
        typedef std::tuple<int, transform_func_t, unsigned int, std::wstring>                                                   transform_tuple_t;\r
        typedef target<std::pair<std::map<int, safe_ptr<basic_frame>>, std::shared_ptr<void>>> target_t;\r
 \r
+       // Constructors\r
+\r
        explicit stage(const safe_ptr<diagnostics::graph>& graph, const safe_ptr<target_t>& target, const video_format_desc& format_desc);\r
        \r
-       // stage\r
+       // Methods\r
        \r
        void apply_transforms(const std::vector<transform_tuple_t>& transforms);\r
        void apply_transform(int index, const transform_func_t& transform, unsigned int mix_duration = 0, const std::wstring& tween = L"linear");\r
@@ -67,6 +74,9 @@ public:
        void swap_layer(int index, size_t other_index, const safe_ptr<stage>& other);\r
        \r
        boost::unique_future<std::wstring>                              call(int index, bool foreground, const std::wstring& param);\r
+\r
+       // Properties\r
+\r
        boost::unique_future<safe_ptr<frame_producer>>  foreground(int index);\r
        boost::unique_future<safe_ptr<frame_producer>>  background(int index);\r
 \r
@@ -74,6 +84,8 @@ public:
        boost::unique_future<boost::property_tree::wptree> info(int layer) const;\r
        \r
        void set_video_format_desc(const video_format_desc& format_desc);\r
+               \r
+       monitor::source& monitor_output();\r
 \r
 private:\r
        struct implementation;\r