X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;ds=inline;f=src%2Flib%2Fdecoder.h;h=562073c1ebcbc2bbd75985e3bf7a30d5e769f8ac;hb=e8c1880a2b9a40eb11ee259feee3edd799139a43;hp=654cacad4bc63d71131483422fcb231fe9a0729a;hpb=a5b59faff75265d3256ad0dbd9f0c69e51e31ce4;p=dcpomatic.git diff --git a/src/lib/decoder.h b/src/lib/decoder.h index 654cacad4..562073c1e 100644 --- a/src/lib/decoder.h +++ b/src/lib/decoder.h @@ -41,7 +41,7 @@ public: Decoder (boost::shared_ptr); virtual ~Decoder () {} - /** Seek so that the next get_*() will yield the next thing + /** Seek so that the next peek() will yield the next thing * (video/sound frame, subtitle etc.) at or after the requested * time. Pass accurate = true to try harder to get close to * the request. @@ -49,13 +49,17 @@ public: virtual void seek (ContentTime time, bool accurate); boost::shared_ptr peek (); - boost::shared_ptr get (); + + /* Consume the last peek()ed thing so that it won't be returned + * from the next peek(). + */ + void consume (); protected: /** Perform one decode pass of the content, which may or may not * result in a complete quantum (Decoded object) of decoded stuff - * being made ready. + * being added to _pending. * @return true if the decoder is done (i.e. no more data will be * produced by any future calls to pass() without a seek() first). */ @@ -66,6 +70,7 @@ protected: boost::weak_ptr _film; std::list > _pending; + bool _done; }; #endif