class frame_producer_device : boost::noncopyable\r
{\r
public:\r
+ static const int MAX_LAYER = 101;\r
+\r
typedef std::function<void(const std::vector<safe_ptr<draw_frame>>&)> output_func;\r
\r
- explicit frame_producer_device(const video_format_desc& format_desc, const safe_ptr<frame_factory>& factory, const output_func& output);\r
+ explicit frame_producer_device(const safe_ptr<frame_factory>& factory, const output_func& output);\r
frame_producer_device(frame_producer_device&& other);\r
\r
- void load(int index, const safe_ptr<frame_producer>& producer, bool play_on_load = false);\r
- void preview(int index, const safe_ptr<frame_producer>& producer);\r
- void pause(int index);\r
- void play(int index);\r
- void stop(int index);\r
- void clear(int index);\r
+ void load(size_t index, const safe_ptr<frame_producer>& producer, bool play_on_load = false);\r
+ void preview(size_t index, const safe_ptr<frame_producer>& producer);\r
+ void pause(size_t index);\r
+ void play(size_t index);\r
+ void stop(size_t index);\r
+ void clear(size_t index);\r
void clear(); \r
- boost::unique_future<safe_ptr<frame_producer>> foreground(int index) const;\r
- boost::unique_future<safe_ptr<frame_producer>> background(int index) const;\r
- const video_format_desc& get_video_format_desc() const;\r
+ void swap(size_t index, size_t other_index);\r
+ void swap(size_t index, size_t other_index, frame_producer_device& other);\r
+ boost::unique_future<safe_ptr<frame_producer>> foreground(size_t index) const;\r
\r
private:\r
struct implementation;\r