Another shortcut.
[dcpomatic.git] / src / lib / player_video_frame.h
index ea7e544819be8c1b822ac9fb8c11b65bf1989845..b085cb609e659f59b55f6a709c88b046c2a6a078 100644 (file)
 #include "colour_conversion.h"
 
 class Image;
+class ImageProxy;
 class Scaler;
 class Socket;
+class Log;
 
 /** Everything needed to describe a video frame coming out of the player, but with the
  *  bits still their raw form.  We may want to combine the bits on a remote machine,
@@ -33,14 +35,14 @@ class Socket;
 class PlayerVideoFrame
 {
 public:
-       PlayerVideoFrame (boost::shared_ptr<const Image>, Crop, libdcp::Size, libdcp::Size, Scaler const *, Eyes, ColourConversion);
-       PlayerVideoFrame (boost::shared_ptr<cxml::Node>, boost::shared_ptr<Socket>);
+       PlayerVideoFrame (boost::shared_ptr<const ImageProxy>, Crop, libdcp::Size, libdcp::Size, Scaler const *, Eyes, Part, ColourConversion);
+       PlayerVideoFrame (boost::shared_ptr<cxml::Node>, boost::shared_ptr<Socket>, boost::shared_ptr<Log>);
 
        void set_subtitle (boost::shared_ptr<const Image>, Position<int>);
        
        boost::shared_ptr<Image> image () const;
 
-       void add_metadata (xmlpp::Element* node) const;
+       void add_metadata (xmlpp::Node* node) const;
        void send_binary (boost::shared_ptr<Socket> socket) const;
 
        Eyes eyes () const {
@@ -52,12 +54,13 @@ public:
        }
 
 private:
-       boost::shared_ptr<const Image> _in;
+       boost::shared_ptr<const ImageProxy> _in;
        Crop _crop;
        libdcp::Size _inter_size;
        libdcp::Size _out_size;
        Scaler const * _scaler;
        Eyes _eyes;
+       Part _part;
        ColourConversion _colour_conversion;
        boost::shared_ptr<const Image> _subtitle_image;
        Position<int> _subtitle_position;