X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Ftempo_lines.h;h=5d1d7d71faacd59d404bde770b8baae9900802b6;hb=cdc5b88c91541f70de57c196570e12ee05a14af9;hp=7d276595e45bcc3b7dff9e02cb6277a5b9f43987;hpb=95d82d7a16b241632bd3d35a5c11c27e7e257984;p=ardour.git diff --git a/gtk2_ardour/tempo_lines.h b/gtk2_ardour/tempo_lines.h index 7d276595e4..5d1d7d71fa 100644 --- a/gtk2_ardour/tempo_lines.h +++ b/gtk2_ardour/tempo_lines.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2000-2007 Paul Davis + Copyright (C) 2000-2007 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -19,39 +19,34 @@ #ifndef __ardour_tempo_lines_h__ #define __ardour_tempo_lines_h__ -#include -#include -#include -#include -#include "canvas.h" -#include "simpleline.h" +#include "ardour/beats_samples_converter.h" +#include "ardour/tempo.h" -typedef boost::fast_pool_allocator< - std::pair, - boost::default_user_allocator_new_delete, - boost::details::pool::null_mutex, - 8192> - MapAllocator; +#include "canvas/line_set.h" class TempoLines { public: - TempoLines(ArdourCanvas::Canvas& canvas, ArdourCanvas::Group* group); + TempoLines (ArdourCanvas::Container* group, double screen_height, ARDOUR::BeatsSamplesConverter* bfc); + ~TempoLines (); - void tempo_map_changed(); + void tempo_map_changed(samplepos_t new_origin); - void draw(ARDOUR::TempoMap::BBTPointList& points, double frames_per_unit); + void draw (std::vector& grid, + unsigned divisions, + ARDOUR::samplecnt_t leftmost_sample, + ARDOUR::samplecnt_t sample_rate); void show(); void hide(); private: - typedef std::map, MapAllocator> Lines; - Lines _lines; + void draw_ticks (std::vector& grid, + unsigned divisions, + ARDOUR::samplecnt_t leftmost_sample, + ARDOUR::samplecnt_t sample_rate); - ArdourCanvas::Canvas& _canvas; - ArdourCanvas::Group* _group; - double _clean_left; - double _clean_right; + ArdourCanvas::LineSet lines; + ARDOUR::BeatsSamplesConverter* _bfc; }; #endif /* __ardour_tempo_lines_h__ */