more MTC stuff, including toggleable use of torben's PI controller
[ardour.git] / libs / ardour / ardour / beats_frames_converter.h
index 7134ea2fe98fdaf5be728cd312c4260c0f344d26..9db4448ebb41184048b5f5e4fd37fd79c8b4fc87 100644 (file)
 
 namespace ARDOUR {
 
-class Session;
+class TempoMap;
 
 class BeatsFramesConverter : public Evoral::TimeConverter<double,sframes_t> {
 public:
-       BeatsFramesConverter(Session& session, sframes_t origin)
-               : _session(session)
+       BeatsFramesConverter(const TempoMap& tempo_map, sframes_t origin)
+               : _tempo_map(tempo_map)
                , _origin(origin)
        {}
 
        sframes_t to(double beats)       const;
        double    from(sframes_t frames) const;
 
-       sframes_t origin() const              { return _origin; }
-       void     set_origin(sframes_t origin) { _origin = origin; }
+       sframes_t origin() const               { return _origin; }
+       void      set_origin(sframes_t origin) { _origin = origin; }
 
 private:
-       Session&  _session;
-       sframes_t _origin;
+       const TempoMap& _tempo_map;
+       sframes_t       _origin;
 };
 
 } /* namespace ARDOUR */