#ifndef __ardour_tempo_lines_h__
#define __ardour_tempo_lines_h__
+#include "ardour/beats_frames_converter.h"
#include "ardour/tempo.h"
#include "canvas/line_set.h"
class TempoLines {
public:
- TempoLines (ArdourCanvas::Container* group, double screen_height);
+ TempoLines (ArdourCanvas::Container* group, double screen_height, ARDOUR::BeatsFramesConverter* bfc);
+ ~TempoLines ();
- void tempo_map_changed();
+ void tempo_map_changed(framepos_t new_origin);
- void draw (const ARDOUR::TempoMap::BBTPointList::const_iterator& begin,
- const ARDOUR::TempoMap::BBTPointList::const_iterator& end,
- unsigned divisions,
+ void draw (std::vector<ARDOUR::TempoMap::BBTPoint>& grid,
+ unsigned divisions,
ARDOUR::framecnt_t leftmost_frame,
ARDOUR::framecnt_t frame_rate);
void hide();
private:
- void draw_ticks (const ARDOUR::TempoMap::BBTPointList::const_iterator& b,
- unsigned divisions,
+ void draw_ticks (std::vector<ARDOUR::TempoMap::BBTPoint>& grid,
+ unsigned divisions,
ARDOUR::framecnt_t leftmost_frame,
ARDOUR::framecnt_t frame_rate);
ArdourCanvas::LineSet lines;
+ ARDOUR::BeatsFramesConverter* _bfc;
};
#endif /* __ardour_tempo_lines_h__ */