Ardour  9.0-pre0-582-g084a23a80d
MidiCutBuffer Class Reference

#include <midi_cut_buffer.h>

Inheritance diagram for MidiCutBuffer:
[legend]

Public Types

typedef Temporal::Beats TimeType
 
- Public Types inherited from Evoral::ControlSet
typedef std::map< Parameter, std::shared_ptr< Control > > Controls
 
- Public Types inherited from Evoral::Sequence< Temporal::Beats >
enum  StuckNoteOption
 
enum  NoteOperator
 
enum  OverlapPitchResolution
 
typedef std::shared_ptr< Evoral::Note< Temporal::Beats > > NotePtr
 
typedef std::weak_ptr< Evoral::Note< Temporal::Beats > > WeakNotePtr
 
typedef std::shared_ptr< const Evoral::Note< Temporal::Beats > > constNotePtr
 
typedef std::set< WeakNotePtr, std::owner_less< WeakNotePtr > > WeakActiveNotes
 
typedef std::shared_ptr< Glib::Threads::RWLock::ReaderLock > ReadLock
 
typedef std::shared_ptr< WriteLockImpl > WriteLock
 
typedef std::multiset< NotePtr, EarlierNoteComparator > Notes
 
typedef std::shared_ptr< Event< Temporal::Beats > > SysExPtr
 
typedef std::shared_ptr< const Event< Temporal::Beats > > constSysExPtr
 
typedef std::multiset< SysExPtr, EarlierSysExComparator > SysExes
 
typedef std::shared_ptr< PatchChange< Temporal::Beats > > PatchChangePtr
 
typedef std::shared_ptr< const PatchChange< Temporal::Beats > > constPatchChangePtr
 
typedef std::multiset< PatchChangePtr, EarlierPatchChangeComparator > PatchChanges
 

Public Member Functions

 MidiCutBuffer (ARDOUR::Session *)
 
 ~MidiCutBuffer ()
 
TimeType origin () const
 
void set_origin (TimeType)
 
void set (const Evoral::Sequence< TimeType >::Notes &)
 
- Public Member Functions inherited from ARDOUR::AutomatableSequence< Temporal::Beats >
 AutomatableSequence (Session &s, Temporal::TimeDomainProvider const &tdp)
 
 AutomatableSequence (const AutomatableSequence< Temporal::Beats > &other)
 
- Public Member Functions inherited from ARDOUR::Automatable
 Automatable (Session &, Temporal::TimeDomainProvider const &)
 
 Automatable (const Automatable &other)
 
virtual ~Automatable ()
 
virtual void automatables (PBD::ControllableSet &) const
 
std::shared_ptr< Evoral::Controlcontrol_factory (const Evoral::Parameter &id)
 
std::shared_ptr< AutomationControlautomation_control (PBD::ID const &id) const
 
virtual std::shared_ptr< AutomationControlautomation_control_recurse (PBD::ID const &id) const
 
std::shared_ptr< AutomationControlautomation_control (const Evoral::Parameter &id)
 
std::shared_ptr< AutomationControlautomation_control (const Evoral::Parameter &id, bool create_if_missing)
 
std::shared_ptr< const AutomationControlautomation_control (const Evoral::Parameter &id) const
 
virtual void add_control (std::shared_ptr< Evoral::Control >)
 
virtual bool find_next_event (Temporal::timepos_t const &start, Temporal::timepos_t const &end, Evoral::ControlEvent &ev, bool only_active=true) const
 
void clear_controls ()
 
virtual void non_realtime_locate (samplepos_t now)
 
virtual void non_realtime_transport_stop (samplepos_t now, bool flush)
 
virtual void automation_run (samplepos_t, pframes_t, bool only_active=false)
 
virtual std::string describe_parameter (Evoral::Parameter param)
 
AutoState get_parameter_automation_state (Evoral::Parameter param)
 
virtual void set_parameter_automation_state (Evoral::Parameter param, AutoState)
 
void protect_automation ()
 
const std::set< Evoral::Parameter > & what_can_be_automated () const
 
std::vector< Evoral::Parameterall_automatable_params () const
 
void what_has_existing_automation (std::set< Evoral::Parameter > &) const
 
int set_automation_xml_state (const XMLNode &, Evoral::Parameter default_param)
 
XMLNodeget_automation_xml_state () const
 
void start_domain_bounce (Temporal::DomainBounceInfo &)
 
void finish_domain_bounce (Temporal::DomainBounceInfo &)
 
- Public Member Functions inherited from Evoral::ControlSet
 ControlSet ()
 
 ControlSet (const ControlSet &)
 
virtual ~ControlSet ()
 
std::shared_ptr< Controlcontrol (const Parameter &id, bool create_if_missing=false)
 
std::shared_ptr< const Controlcontrol (const Parameter &id) const
 
Controlscontrols ()
 
const Controlscontrols () const
 
virtual bool controls_empty () const
 
void what_has_data (std::set< Parameter > &) const
 
Glib::Threads::Mutex & control_lock () const
 
void start_domain_bounce (Temporal::DomainBounceInfo &)
 
void finish_domain_bounce (Temporal::DomainBounceInfo &)
 
- Public Member Functions inherited from Temporal::TimeDomainSwapper
virtual ~TimeDomainSwapper ()
 
- Public Member Functions inherited from PBD::Destructible
virtual ~Destructible ()
 
virtual void drop_references ()
 
- Public Member Functions inherited from ARDOUR::Slavable
 Slavable ()
 
virtual ~Slavable ()
 
XMLNodeget_state () const
 
int set_state (XMLNode const &, int)
 
virtual void assign (std::shared_ptr< VCA >)
 
void unassign (std::shared_ptr< VCA >)
 
std::vector< std::shared_ptr< VCA > > masters (VCAManager *) const
 
bool assigned_to (VCAManager *, std::shared_ptr< VCA >) const
 
- Public Member Functions inherited from Temporal::TimeDomainProvider
 TimeDomainProvider ()
 
 TimeDomainProvider (TimeDomain td)
 
 TimeDomainProvider (TimeDomain td, TimeDomainProvider const &p)
 
 TimeDomainProvider (TimeDomainProvider const &other)
 
 TimeDomainProvider (TimeDomainProvider const &parnt, bool)
 
virtual ~TimeDomainProvider ()
 
XMLNodeget_state () const
 
int set_state (const XMLNode &, int version)
 
TimeDomainProvideroperator= (TimeDomainProvider const &other)
 
TimeDomain time_domain () const
 
bool has_own_time_domain () const
 
void clear_time_domain ()
 
void set_time_domain (TimeDomain td)
 
TimeDomainProvider const * time_domain_parent () const
 
bool has_time_domain_parent () const
 
void clear_time_domain_parent ()
 
void set_time_domain_parent (TimeDomainProvider const &p)
 
virtual void time_domain_changed ()
 
- Public Member Functions inherited from Evoral::Sequence< Temporal::Beats >
 Sequence (const TypeMap &type_map)
 
 Sequence (const Sequence< Temporal::Beats > &other)
 
virtual ReadLock read_lock () const
 
virtual WriteLock write_lock ()
 
void clear ()
 
void start_write ()
 
bool writing () const
 
void end_write (StuckNoteOption, Temporal::Beats when=Temporal::Beats())
 
void append (const Event< Temporal::Beats > &ev, Evoral::event_id_t evid)
 
const TypeMaptype_map () const
 
size_t n_notes () const
 
bool empty () const
 
Notesnotes ()
 
const Notesnotes () const
 
void get_notes (Notes &, NoteOperator, uint8_t val, int chan_mask=0) const
 
void remove_overlapping_notes ()
 
void trim_overlapping_notes ()
 
void remove_duplicate_notes ()
 
bool overlapping_pitches_accepted () const
 
void overlapping_pitches_accepted (bool yn)
 
OverlapPitchResolution overlap_pitch_resolution () const
 
void set_overlap_pitch_resolution (OverlapPitchResolution opr)
 
void set_notes (const typename Sequence< Temporal::Beats >::Notes &n)
 
SysExessysexes ()
 
const SysExessysexes () const
 
PatchChangespatch_changes ()
 
const PatchChangespatch_changes () const
 
const_iterator begin (Temporal::Beats t=Temporal::Beats(), bool force_discrete=false, const std::set< Evoral::Parameter > &f=std::set< Evoral::Parameter >(), WeakActiveNotes const *active_notes=0) const
 
const const_iteratorend () const
 
void dump (std::ostream &, const_iterator x, uint32_t limit=0) const
 
Notes::const_iterator note_lower_bound (Temporal::Beats t) const
 
Notes::iterator note_lower_bound (Temporal::Beats t)
 
PatchChanges::const_iterator patch_change_lower_bound (Temporal::Beats t) const
 
PatchChanges::iterator patch_change_lower_bound (Temporal::Beats t)
 
SysExes::const_iterator sysex_lower_bound (Temporal::Beats t) const
 
SysExes::iterator sysex_lower_bound (Temporal::Beats t)
 
bool control_to_midi_event (std::shared_ptr< Event< Temporal::Beats > > &ev, const ControlIterator &iter) const
 
bool edited () const
 
void set_edited (bool yn)
 
bool contains (const NotePtr &ev) const
 
bool add_note_unlocked (const NotePtr note, void *arg=0)
 
void remove_note_unlocked (const constNotePtr note)
 
void add_patch_change_unlocked (const PatchChangePtr)
 
void remove_patch_change_unlocked (const constPatchChangePtr)
 
void add_sysex_unlocked (const SysExPtr)
 
void remove_sysex_unlocked (const SysExPtr)
 
uint8_t lowest_note () const
 
uint8_t highest_note () const
 
Temporal::Beats duration () const
 
void set_duration (Temporal::Beats const &)
 

Private Attributes

TimeType _origin
 

Additional Inherited Members

- Static Public Member Functions inherited from ARDOUR::Automatable
static void find_next_ac_event (std::shared_ptr< AutomationControl >, Temporal::timepos_t const &start, Temporal::timepos_t const &end, Evoral::ControlEvent &ev)
 
static void find_prev_ac_event (std::shared_ptr< AutomationControl >, Temporal::timepos_t const &start, Temporal::timepos_t const &end, Evoral::ControlEvent &ev)
 
- Static Public Member Functions inherited from Evoral::Sequence< Temporal::Beats >
static bool note_time_comparator (const std::shared_ptr< const Note< Temporal::Beats > > &a, const std::shared_ptr< const Note< Temporal::Beats > > &b)
 
- Public Attributes inherited from ARDOUR::Automatable
PBD::Signal< void()> AutomationStateChanged
 
- Public Attributes inherited from PBD::Destructible
PBD::Signal< void()> Destroyed
 
PBD::Signal< void()> DropReferences
 
- Public Attributes inherited from ARDOUR::Slavable
PBD::Signal< void(std::shared_ptr< VCA >, bool)> AssignmentChange
 
- Public Attributes inherited from Temporal::TimeDomainProvider
PBD::Signal< void()> TimeDomainChanged
 
- Static Public Attributes inherited from ARDOUR::Automatable
static bool skip_saving_automation
 
static const std::string xml_node_name
 
- Static Public Attributes inherited from ARDOUR::Slavable
static std::string xml_node_name
 
static PBD::Signal< void(VCAManager *)> Assign
 
- Protected Types inherited from Evoral::Sequence< Temporal::Beats >
typedef std::multiset< NotePtr, NoteNumberComparator > Pitches
 
- Protected Member Functions inherited from ARDOUR::Automatable
void can_automate (Evoral::Parameter)
 
virtual void automation_list_automation_state_changed (Evoral::Parameter const &, AutoState)
 
int load_automation (const std::string &path)
 
int old_set_automation_state (const XMLNode &)
 
SlavableAutomationControlList slavables () const
 
- Protected Member Functions inherited from Evoral::ControlSet
virtual void control_list_interpolation_changed (Parameter const &, ControlList::InterpolationStyle)
 
- Protected Member Functions inherited from Temporal::TimeDomainProvider
void listen ()
 
- Protected Member Functions inherited from Evoral::Sequence< Temporal::Beats >
virtual int resolve_overlaps_unlocked (const NotePtr, void *=0)
 
Pitchespitches (uint8_t chan)
 
const Pitchespitches (uint8_t chan) const
 
virtual void control_list_marked_dirty ()
 
- Protected Attributes inherited from ARDOUR::Automatable
Session_a_session
 
SerializedRCUManager< AutomationControlList_automated_controls
 
std::set< Evoral::Parameter_can_automate_list
 
samplepos_t _last_automation_snapshot
 
- Protected Attributes inherited from Evoral::ControlSet
Glib::Threads::Mutex _control_lock
 
Controls _controls
 
PBD::ScopedConnectionList _list_connections
 
- Protected Attributes inherited from Evoral::Sequence< Temporal::Beats >
bool _edited
 
bool _overlapping_pitches_accepted
 
OverlapPitchResolution _overlap_pitch_resolution
 
Glib::Threads::RWLock _lock
 
bool _writing
 

Detailed Description

Definition at line 30 of file midi_cut_buffer.h.

Member Typedef Documentation

◆ TimeType

Definition at line 33 of file midi_cut_buffer.h.

Constructor & Destructor Documentation

◆ MidiCutBuffer()

MidiCutBuffer::MidiCutBuffer ( ARDOUR::Session )

◆ ~MidiCutBuffer()

MidiCutBuffer::~MidiCutBuffer ( )

Member Function Documentation

◆ origin()

TimeType MidiCutBuffer::origin ( ) const
inline

Definition at line 38 of file midi_cut_buffer.h.

◆ set()

void MidiCutBuffer::set ( const Evoral::Sequence< TimeType >::Notes )

◆ set_origin()

void MidiCutBuffer::set_origin ( TimeType  )

Member Data Documentation

◆ _origin

TimeType MidiCutBuffer::_origin
private

Definition at line 44 of file midi_cut_buffer.h.


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