ardour
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
ARDOUR::MidiPort Class Reference

#include <midi_port.h>

Inheritance diagram for ARDOUR::MidiPort:
ARDOUR::Port ARDOUR::AsyncMIDIPort

Public Member Functions

 ~MidiPort ()
 
DataType type () const
 
void cycle_start (pframes_t nframes)
 
void cycle_end (pframes_t nframes)
 
void cycle_split ()
 
void flush_buffers (pframes_t nframes)
 
void transport_stopped ()
 
void realtime_locate ()
 
void reset ()
 
void require_resolve ()
 
bool input_active () const
 
void set_input_active (bool yn)
 
Bufferget_buffer (pframes_t nframes)
 
MidiBufferget_midi_buffer (pframes_t nframes)
 
void set_always_parse (bool yn)
 
void set_trace_on (bool yn)
 
MIDI::Parser & self_parser ()
 
- Public Member Functions inherited from ARDOUR::Port
virtual ~Port ()
 
std::string name () const
 
std::string pretty_name (bool fallback_to_name=false) const
 
int set_name (std::string const &)
 
PortFlags flags () const
 
bool receives_input () const
 
bool sends_output () const
 
bool connected () const
 
int disconnect_all ()
 
int get_connections (std::vector< std::string > &) const
 
bool connected_to (std::string const &) const
 
int connect (std::string const &)
 
int disconnect (std::string const &)
 
bool connected_to (Port *) const
 
virtual int connect (Port *)
 
int disconnect (Port *)
 
void request_input_monitoring (bool)
 
void ensure_input_monitoring (bool)
 
bool monitoring_input () const
 
int reestablish ()
 
int reconnect ()
 
bool last_monitor () const
 
void set_last_monitor (bool yn)
 
PortEngine::PortHandle port_handle ()
 
void get_connected_latency_range (LatencyRange &range, bool playback) const
 
void set_private_latency_range (LatencyRange &range, bool playback)
 
const LatencyRangeprivate_latency_range (bool playback) const
 
void set_public_latency_range (LatencyRange &range, bool playback) const
 
LatencyRange public_latency_range (bool playback) const
 
bool physically_connected () const
 
virtual void increment_port_buffer_offset (pframes_t n)
 
virtual XMLNodeget_state (void) const
 
virtual int set_state (const XMLNode &, int version)
 

Protected Member Functions

 MidiPort (const std::string &name, PortFlags)
 
- Protected Member Functions inherited from ARDOUR::Port
 Port (std::string const &, DataType, PortFlags)
 

Private Member Functions

void resolve_notes (void *buffer, framepos_t when)
 

Private Attributes

MidiBuffer_buffer
 
bool _has_been_mixed_down
 
bool _resolve_required
 
bool _input_active
 
bool _always_parse
 
bool _trace_on
 
MIDI::Parser _self_parser
 

Friends

class PortManager
 

Additional Inherited Members

- Static Public Member Functions inherited from ARDOUR::Port
static void set_connecting_blocked (bool yn)
 
static bool connecting_blocked ()
 
static void set_cycle_framecnt (pframes_t n)
 
static framecnt_t port_offset ()
 
static void set_global_port_buffer_offset (pframes_t off)
 
static void increment_global_port_buffer_offset (pframes_t n)
 
- Public Attributes inherited from ARDOUR::Port
PBD::Signal1< void, bool > MonitorInputChanged
 
- Static Public Attributes inherited from ARDOUR::Port
static PBD::Signal2< void,
boost::shared_ptr< Port >
, boost::shared_ptr< Port > > 
PostDisconnect
 
static PBD::Signal0< void > PortDrop
 
static std::string state_node_name = X_("Port")
 
- Protected Attributes inherited from ARDOUR::Port
PortEngine::PortHandle _port_handle
 
framecnt_t _port_buffer_offset
 
LatencyRange _private_playback_latency
 
LatencyRange _private_capture_latency
 
- Static Protected Attributes inherited from ARDOUR::Port
static bool _connecting_blocked = false
 
static pframes_t _global_port_buffer_offset = 0
 
static pframes_t _cycle_nframes = 0
 

Detailed Description

Definition at line 33 of file midi_port.h.

Constructor & Destructor Documentation

MidiPort::~MidiPort ( )

Definition at line 48 of file midi_port.cc.

MidiPort::MidiPort ( const std::string &  name,
PortFlags  flags 
)
protected

Definition at line 37 of file midi_port.cc.

Member Function Documentation

void MidiPort::cycle_end ( pframes_t  nframes)
virtual

Implements ARDOUR::Port.

Definition at line 154 of file midi_port.cc.

void MidiPort::cycle_split ( )
virtual

Implements ARDOUR::Port.

Definition at line 160 of file midi_port.cc.

void MidiPort::cycle_start ( pframes_t  nframes)
virtual

Reimplemented from ARDOUR::Port.

Definition at line 54 of file midi_port.cc.

void MidiPort::flush_buffers ( pframes_t  nframes)
virtual

Reimplemented from ARDOUR::Port.

Definition at line 190 of file midi_port.cc.

Buffer & MidiPort::get_buffer ( pframes_t  nframes)
virtual

Implements ARDOUR::Port.

Definition at line 86 of file midi_port.cc.

MidiBuffer & MidiPort::get_midi_buffer ( pframes_t  nframes)

Definition at line 92 of file midi_port.cc.

bool ARDOUR::MidiPort::input_active ( ) const
inline

Definition at line 51 of file midi_port.h.

void MidiPort::realtime_locate ( )
virtual

Reimplemented from ARDOUR::Port.

Definition at line 286 of file midi_port.cc.

void MidiPort::require_resolve ( )

Definition at line 274 of file midi_port.cc.

void MidiPort::reset ( )
virtual

Reimplemented from ARDOUR::Port.

Definition at line 292 of file midi_port.cc.

void MidiPort::resolve_notes ( void *  buffer,
framepos_t  when 
)
private

Definition at line 166 of file midi_port.cc.

MIDI::Parser& ARDOUR::MidiPort::self_parser ( )
inline

Definition at line 61 of file midi_port.h.

void MidiPort::set_always_parse ( bool  yn)

Definition at line 307 of file midi_port.cc.

void MidiPort::set_input_active ( bool  yn)

Definition at line 301 of file midi_port.cc.

void MidiPort::set_trace_on ( bool  yn)

Definition at line 313 of file midi_port.cc.

void MidiPort::transport_stopped ( )
virtual

Reimplemented from ARDOUR::Port.

Definition at line 280 of file midi_port.cc.

DataType ARDOUR::MidiPort::type ( ) const
inlinevirtual

Implements ARDOUR::Port.

Definition at line 37 of file midi_port.h.

Friends And Related Function Documentation

friend class PortManager
friend

Definition at line 64 of file midi_port.h.

Member Data Documentation

bool ARDOUR::MidiPort::_always_parse
private

Definition at line 73 of file midi_port.h.

MidiBuffer* ARDOUR::MidiPort::_buffer
private

Definition at line 69 of file midi_port.h.

bool ARDOUR::MidiPort::_has_been_mixed_down
private

Definition at line 70 of file midi_port.h.

bool ARDOUR::MidiPort::_input_active
private

Definition at line 72 of file midi_port.h.

bool ARDOUR::MidiPort::_resolve_required
private

Definition at line 71 of file midi_port.h.

MIDI::Parser ARDOUR::MidiPort::_self_parser
private

Definition at line 87 of file midi_port.h.

bool ARDOUR::MidiPort::_trace_on
private

Definition at line 74 of file midi_port.h.


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