Various work on the audio code.
[dcpomatic.git] / src / lib / decoder_part.h
index 4b309a6682bd39c767882da148032570acba6d15..39f77e6e6cbabedffc1e6bd538135a1db7c73019 100644 (file)
 #include <boost/optional.hpp>
 
 class Decoder;
+class Log;
 
 class DecoderPart
 {
 public:
-       DecoderPart (Decoder* parent);
+       DecoderPart (Decoder* parent, boost::shared_ptr<Log> log);
+       virtual ~DecoderPart () {}
+
+       virtual boost::optional<ContentTime> position () const = 0;
 
        void set_ignore () {
                _ignore = true;
@@ -39,22 +43,12 @@ public:
                return _ignore;
        }
 
-       void set_position (ContentTime position) {
-               _position = position;
-       }
-
-       boost::optional<ContentTime> position () const {
-               return _position;
-       }
-
-       void maybe_seek (ContentTime time, bool accurate);
-
 protected:
        Decoder* _parent;
+       boost::shared_ptr<Log> _log;
 
 private:
        bool _ignore;
-       boost::optional<ContentTime> _position;
 };
 
 #endif