add an plugin API to query generic-gui grid-layout
[ardour.git] / libs / ardour / ardour / midi_region.h
index 250a58aa7046f8cd53466953b85650a67f4b67f8..b4557ed1dd828fcc0d3911b188c97dff701f79b8 100644 (file)
@@ -23,7 +23,7 @@
 
 #include <vector>
 
-#include "evoral/types.hpp"
+#include "evoral/Beats.hpp"
 
 #include "ardour/ardour.h"
 #include "ardour/region.h"
@@ -101,7 +101,7 @@ class LIBARDOUR_API MidiRegion : public Region
        boost::shared_ptr<const MidiModel> model() const;
 
        void fix_negative_start ();
-
+       Evoral::Beats start_beats () {return _start_beats.val(); }
   protected:
 
        virtual bool can_trim_start_before_source_start () const {
@@ -134,13 +134,14 @@ class LIBARDOUR_API MidiRegion : public Region
        void set_position_internal (framepos_t pos, bool allow_bbt_recompute);
        void set_length_internal (framecnt_t len);
        void set_start_internal (framecnt_t);
+       void trim_to_internal (framepos_t position, framecnt_t length);
        void update_length_beats ();
 
        void model_changed ();
        void model_automation_state_changed (Evoral::Parameter const &);
 
        void set_start_beats_from_start_frames ();
-       void update_after_tempo_map_change ();
+       void update_after_tempo_map_change (bool send_change = true);
 
        std::set<Evoral::Parameter> _filtered_parameters; ///< parameters that we ask our source not to return when reading
        PBD::ScopedConnection _model_connection;