Ardour  8.12
MidiStreamView Class Reference

#include <midi_streamview.h>

Inheritance diagram for MidiStreamView:
[legend]

Public Types

enum  VisibleNoteRange { FullRange , ContentsRange }
 
- Public Types inherited from StreamView
enum  ColorTarget { RegionColor , StreamBaseColor }
 

Public Member Functions

 MidiStreamView (MidiTimeAxisView &)
 
 ~MidiStreamView ()
 
void get_inverted_selectables (Selection &, std::list< Selectable * > &results)
 
void get_regions_with_selected_data (RegionSelection &)
 
void set_note_range (VisibleNoteRange r)
 
uint8_t lowest_note () const
 
uint8_t highest_note () const
 
void update_note_range (uint8_t note_num)
 
void set_layer_display (LayerDisplay)
 
void redisplay_track ()
 
double contents_height () const
 
double note_to_y (uint8_t note) const
 
uint8_t y_to_note (double y) const
 
double note_height () const
 
uint8_t contents_note_range () const
 
RegionViewcreate_region_view (std::shared_ptr< ARDOUR::Region >, bool, bool)
 
bool paste (Temporal::timepos_t const &pos, const Selection &selection, PasteContext &ctx)
 
void apply_note_range (uint8_t lowest, uint8_t highest, bool to_region_views)
 
void suspend_updates ()
 
void resume_updates ()
 
ArdourCanvas::Containerregion_canvas () const
 
void parameter_changed (std::string const &)
 
- Public Member Functions inherited from StreamView
virtual ~StreamView ()
 
RouteTimeAxisViewtrackview ()
 
const RouteTimeAxisViewtrackview () const
 
void attach ()
 
void set_zoom_all ()
 
int set_position (gdouble x, gdouble y)
 
virtual int set_height (double)
 
virtual int set_samples_per_pixel (double)
 
gdouble get_samples_per_pixel () const
 
virtual bool can_change_layer_display () const
 
LayerDisplay layer_display () const
 
uint32_t get_region_color () const
 
void apply_color (uint32_t, ColorTarget t)
 
void apply_color (Gdk::Color const &, ColorTarget t)
 
uint32_t num_selected_regionviews () const
 
RegionViewfind_view (std::shared_ptr< const ARDOUR::Region >)
 
void foreach_regionview (sigc::slot< void, RegionView * > slot)
 
void foreach_selected_regionview (sigc::slot< void, RegionView * > slot)
 
void set_selected_regionviews (RegionSelection &)
 
void get_selectables (Temporal::timepos_t const &, Temporal::timepos_t const &, double, double, std::list< Selectable * > &, bool within=false)
 
void get_inverted_selectables (Selection &, std::list< Selectable * > &results)
 
void get_regionviews_at_or_after (Temporal::timepos_t const &, RegionSelection &)
 
void add_region_view (std::weak_ptr< ARDOUR::Region >)
 
void region_layered (RegionView *)
 
double child_height () const
 
ARDOUR::layer_t layers () const
 
void check_record_layers (std::shared_ptr< ARDOUR::Region >, ARDOUR::samplepos_t)
 
virtual void playlist_layered (std::weak_ptr< ARDOUR::Track >)
 
void update_coverage_frame ()
 
- Public Member Functions inherited from PBD::ScopedConnectionList
 ScopedConnectionList ()
 
virtual ~ScopedConnectionList ()
 
void add_connection (const UnscopedConnection &c)
 
void drop_connections ()
 

Public Attributes

Gtk::Adjustment note_range_adjustment
 
sigc::signal< void > NoteRangeChanged
 
- Public Attributes inherited from StreamView
sigc::signal< void, RegionView * > RegionViewAdded
 
sigc::signal< void > RegionViewRemoved
 
sigc::signal< void > ContentsHeightChanged
 

Protected Member Functions

void setup_rec_box ()
 
void update_rec_box ()
 
- Protected Member Functions inherited from StreamView
 StreamView (RouteTimeAxisView &, ArdourCanvas::Container *canvas_group=0)
 
void transport_changed ()
 
void transport_looped ()
 
void rec_enable_changed ()
 
void sess_rec_enable_changed ()
 
void create_rec_box (samplepos_t sample_pos, double width)
 
void cleanup_rec_box ()
 
virtual void remove_region_view (std::weak_ptr< ARDOUR::Region >)
 
void display_track (std::shared_ptr< ARDOUR::Track >)
 
virtual void undisplay_track ()
 
void layer_regions ()
 
void playlist_switched (std::weak_ptr< ARDOUR::Track >)
 
void setup_new_rec_layer_time (std::shared_ptr< ARDOUR::Region >)
 

Protected Attributes

ArdourCanvas::Container_region_group
 
- Protected Attributes inherited from StreamView
RouteTimeAxisView_trackview
 
ArdourCanvas::Container_canvas_group
 
ArdourCanvas::Rectanglecanvas_rect
 
RegionViewList region_views
 
double _samples_per_pixel
 
sigc::connection screen_update_connection
 
std::vector< RecBoxInforec_rects
 
std::list< std::pair< std::shared_ptr< ARDOUR::Region >, RegionView * > > rec_regions
 
bool rec_updating
 
bool rec_active
 
uint32_t region_color
 Contained region color. More...
 
uint32_t stream_base_color
 Background color. More...
 
PBD::ScopedConnectionList playlist_connections
 
PBD::ScopedConnection playlist_switched_connection
 
ARDOUR::layer_t _layers
 
LayerDisplay _layer_display
 
double height
 
PBD::ScopedConnectionList rec_data_ready_connections
 
samplepos_t last_rec_data_sample
 
samplepos_t _new_rec_layer_time
 

Private Member Functions

RegionViewadd_region_view_internal (std::shared_ptr< ARDOUR::Region >, bool wait_for_waves, bool recording=false)
 
void display_region (MidiRegionView *region_view, bool load_model)
 
void display_track (std::shared_ptr< ARDOUR::Track > tr)
 
void update_contents_height ()
 
void draw_note_lines ()
 
bool update_data_note_range (uint8_t min, uint8_t max)
 
void update_contents_metrics (std::shared_ptr< ARDOUR::Region > r)
 
void color_handler ()
 
void note_range_adjustment_changed ()
 
void apply_note_range_to_regions ()
 

Private Attributes

bool _range_dirty
 
double _range_sum_cache
 
uint8_t _lowest_note
 currently visible More...
 
uint8_t _highest_note
 currently visible More...
 
uint8_t _data_note_min
 in data More...
 
uint8_t _data_note_max
 in data More...
 
ArdourCanvas::LineSet_note_lines
 
bool _updates_suspended
 

Additional Inherited Members

- Protected Types inherited from StreamView
typedef std::list< RegionView * > RegionViewList
 

Detailed Description

Definition at line 60 of file midi_streamview.h.

Member Enumeration Documentation

◆ VisibleNoteRange

Enumerator
FullRange 
ContentsRange 

Definition at line 69 of file midi_streamview.h.

Constructor & Destructor Documentation

◆ MidiStreamView()

MidiStreamView::MidiStreamView ( MidiTimeAxisView )

◆ ~MidiStreamView()

MidiStreamView::~MidiStreamView ( )

Member Function Documentation

◆ add_region_view_internal()

RegionView* MidiStreamView::add_region_view_internal ( std::shared_ptr< ARDOUR::Region ,
bool  wait_for_waves,
bool  recording = false 
)
privatevirtual

Implements StreamView.

◆ apply_note_range()

void MidiStreamView::apply_note_range ( uint8_t  lowest,
uint8_t  highest,
bool  to_region_views 
)

◆ apply_note_range_to_regions()

void MidiStreamView::apply_note_range_to_regions ( )
private

◆ color_handler()

void MidiStreamView::color_handler ( )
privatevirtual

Implements StreamView.

◆ contents_height()

double MidiStreamView::contents_height ( ) const
inline

Definition at line 87 of file midi_streamview.h.

◆ contents_note_range()

uint8_t MidiStreamView::contents_note_range ( ) const
inline

Definition at line 101 of file midi_streamview.h.

◆ create_region_view()

RegionView* MidiStreamView::create_region_view ( std::shared_ptr< ARDOUR::Region ,
bool  ,
bool   
)
virtual

Reimplemented from StreamView.

◆ display_region()

void MidiStreamView::display_region ( MidiRegionView region_view,
bool  load_model 
)
private

◆ display_track()

void MidiStreamView::display_track ( std::shared_ptr< ARDOUR::Track tr)
private

◆ draw_note_lines()

void MidiStreamView::draw_note_lines ( )
private

◆ get_inverted_selectables()

void MidiStreamView::get_inverted_selectables ( Selection ,
std::list< Selectable * > &  results 
)

◆ get_regions_with_selected_data()

void MidiStreamView::get_regions_with_selected_data ( RegionSelection )

◆ highest_note()

uint8_t MidiStreamView::highest_note ( ) const
inline

Definition at line 79 of file midi_streamview.h.

◆ lowest_note()

uint8_t MidiStreamView::lowest_note ( ) const
inline

Definition at line 78 of file midi_streamview.h.

◆ note_height()

double MidiStreamView::note_height ( ) const
inline

Definition at line 97 of file midi_streamview.h.

◆ note_range_adjustment_changed()

void MidiStreamView::note_range_adjustment_changed ( )
private

◆ note_to_y()

double MidiStreamView::note_to_y ( uint8_t  note) const
inline

Definition at line 91 of file midi_streamview.h.

◆ parameter_changed()

void MidiStreamView::parameter_changed ( std::string const &  )
virtual

Reimplemented from StreamView.

◆ paste()

bool MidiStreamView::paste ( Temporal::timepos_t const &  pos,
const Selection selection,
PasteContext ctx 
)

◆ redisplay_track()

void MidiStreamView::redisplay_track ( )
virtual

Implements StreamView.

◆ region_canvas()

ArdourCanvas::Container* MidiStreamView::region_canvas ( ) const
inlinevirtual

Reimplemented from StreamView.

Definition at line 116 of file midi_streamview.h.

◆ resume_updates()

void MidiStreamView::resume_updates ( )

◆ set_layer_display()

void MidiStreamView::set_layer_display ( LayerDisplay  )
virtual

Reimplemented from StreamView.

◆ set_note_range()

void MidiStreamView::set_note_range ( VisibleNoteRange  r)

◆ setup_rec_box()

void MidiStreamView::setup_rec_box ( )
protectedvirtual

Implements StreamView.

◆ suspend_updates()

void MidiStreamView::suspend_updates ( )

◆ update_contents_height()

void MidiStreamView::update_contents_height ( )
privatevirtual

Reimplemented from StreamView.

◆ update_contents_metrics()

void MidiStreamView::update_contents_metrics ( std::shared_ptr< ARDOUR::Region r)
privatevirtual

Reimplemented from StreamView.

◆ update_data_note_range()

bool MidiStreamView::update_data_note_range ( uint8_t  min,
uint8_t  max 
)
private

◆ update_note_range()

void MidiStreamView::update_note_range ( uint8_t  note_num)

◆ update_rec_box()

void MidiStreamView::update_rec_box ( )
protectedvirtual

Reimplemented from StreamView.

◆ y_to_note()

uint8_t MidiStreamView::y_to_note ( double  y) const

Member Data Documentation

◆ _data_note_max

uint8_t MidiStreamView::_data_note_max
private

in data

Definition at line 152 of file midi_streamview.h.

◆ _data_note_min

uint8_t MidiStreamView::_data_note_min
private

in data

Definition at line 151 of file midi_streamview.h.

◆ _highest_note

uint8_t MidiStreamView::_highest_note
private

currently visible

Definition at line 150 of file midi_streamview.h.

◆ _lowest_note

uint8_t MidiStreamView::_lowest_note
private

currently visible

Definition at line 149 of file midi_streamview.h.

◆ _note_lines

ArdourCanvas::LineSet* MidiStreamView::_note_lines
private

Definition at line 153 of file midi_streamview.h.

◆ _range_dirty

bool MidiStreamView::_range_dirty
private

Definition at line 147 of file midi_streamview.h.

◆ _range_sum_cache

double MidiStreamView::_range_sum_cache
private

Definition at line 148 of file midi_streamview.h.

◆ _region_group

ArdourCanvas::Container* MidiStreamView::_region_group
protected

Definition at line 124 of file midi_streamview.h.

◆ _updates_suspended

bool MidiStreamView::_updates_suspended
private

true if updates to the note lines and regions are currently suspended

Definition at line 155 of file midi_streamview.h.

◆ note_range_adjustment

Gtk::Adjustment MidiStreamView::note_range_adjustment

Definition at line 74 of file midi_streamview.h.

◆ NoteRangeChanged

sigc::signal<void> MidiStreamView::NoteRangeChanged

Definition at line 105 of file midi_streamview.h.


The documentation for this class was generated from the following file: