#include <common/memory/safe_ptr.h>\r
\r
#include <boost/noncopyable.hpp>\r
-#include <boost/thread/future.hpp>\r
\r
namespace caspar { namespace core {\r
\r
struct video_format_desc;\r
-class video_channel_context;;\r
+class video_channel_context;\r
+struct layer_status;\r
\r
class stage : boost::noncopyable\r
{\r
\r
std::map<int, safe_ptr<basic_frame>> execute();\r
\r
- void load(int index, const safe_ptr<frame_producer>& producer, bool preview = false);\r
+ void load(int index, const safe_ptr<frame_producer>& producer, bool preview = false, int auto_play_delta = -1);\r
void pause(int index);\r
void play(int index);\r
void stop(int index);\r
void clear(); \r
void swap_layer(int index, size_t other_index);\r
void swap_layer(int index, size_t other_index, stage& other);\r
- boost::unique_future<safe_ptr<frame_producer>> foreground(size_t index);\r
- boost::unique_future<safe_ptr<frame_producer>> background(size_t index);\r
+\r
+ layer_status get_status(int index);\r
+ safe_ptr<frame_producer> foreground(size_t index);\r
+ safe_ptr<frame_producer> background(size_t index);\r
\r
private:\r
struct implementation;\r