- virtual void seek (ContentTime time, bool accurate);
-
- boost::shared_ptr<Decoded> 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.
- * @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).
+ virtual void seek (ContentTime time, bool accurate) = 0;
+
+ /** @return true if this decoder has already returned all its data and will give no more */
+ virtual bool pass (PassReason, bool accurate) = 0;
+
+ /** Ensure that any future get() calls return data that reflect
+ * changes in our content's settings.