#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;
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