+ /** Number of video frames enqueued so far */
+ int _video_frames_enqueued;
+ bool _left_done;
+ bool _right_done;
+
+ /* XXX: probably should be atomic */
+ bool _terminate_enqueue;
+ bool _terminate_encoding;
+ /** Mutex for _threads */
+ mutable boost::mutex _threads_mutex;
+ std::list<boost::thread *> _threads;
+ mutable boost::mutex _queue_mutex;
+ std::list<boost::shared_ptr<DCPVideo> > _queue;
+ /** condition to manage thread wakeups when we have nothing to do */
+ boost::condition _empty_condition;
+ /** condition to manage thread wakeups when we have too much to do */
+ boost::condition _full_condition;