X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fpiece.h;h=b5ab2d233918ecbe542c83564bfc747d3cd7c963;hb=0cb31de2be2b51a8bc19e55ceb1b86dc26ea1c42;hp=76df909ff361ba8c43e48ee42097071e50f1424e;hpb=d19ba00f1995495977bdee206305c42a96eb0f57;p=dcpomatic.git diff --git a/src/lib/piece.h b/src/lib/piece.h index 76df909ff..b5ab2d233 100644 --- a/src/lib/piece.h +++ b/src/lib/piece.h @@ -1,19 +1,20 @@ /* Copyright (C) 2013-2014 Carl Hetherington - This program is free software; you can redistribute it and/or modify + This file is part of DCP-o-matic. + + DCP-o-matic is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, + DCP-o-matic is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + along with DCP-o-matic. If not, see . */ @@ -21,45 +22,22 @@ #define DCPOMATIC_PIECE_H #include "types.h" -#include "video_content.h" class Content; class Decoder; -class Piece; -class Image; -class Player; - -struct IncomingVideo -{ -public: - boost::weak_ptr weak_piece; - boost::shared_ptr image; - Eyes eyes; - bool same; - VideoContent::Frame frame; - Time extra; -}; class Piece { public: - Piece (boost::shared_ptr c); - Piece (boost::shared_ptr c, boost::shared_ptr d); - void set_repeat (IncomingVideo video, int num); - void reset_repeat (); - bool repeating () const; - void repeat (Player* player); + Piece (boost::shared_ptr c, boost::shared_ptr d, FrameRateChange f) + : content (c) + , decoder (d) + , frc (f) + {} boost::shared_ptr content; boost::shared_ptr decoder; - /** Time of the last video we emitted relative to the start of the DCP */ - Time video_position; - /** Time of the last audio we emitted relative to the start of the DCP */ - Time audio_position; - - IncomingVideo repeat_video; - int repeat_to_do; - int repeat_done; + FrameRateChange frc; }; #endif