Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

TSE3::MidiEcho Class Reference

Software MIDI Thru port. More...

#include <MidiEcho.h>

Inheritance diagram for TSE3::MidiEcho:

Inheritance graph
[legend]
Collaboration diagram for TSE3::MidiEcho:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 MidiEcho (MidiScheduler *scheduler)
MidiFilterfilter ()
int channel () const
void setChannel (int c)
int port () const
void setPort (int p)
void echo (MidiEvent command)

Detailed Description

Software MIDI Thru port.

The MidiEcho class provides a software equivalent to the MIDI Thru port found on some MIDI equipment.

MIDI Thru provides an exact copy of the MIDI data recieved at the MIDI In port allowing a number of MIDI devices to be 'daisy-chained' together.

Many MIDI interfaces, however, do not provide a MIDI Thru capability so the MidiEcho class is used to emulate it in software.

The MidiEcho class contains a MidiFilter to provide some software filtering of the incoming/outgoing data. You can disable the MidiEcho functionality by setting the filter's status to false.

The Transport class creates and maintains an object of this class to do good things.

Author:
Pete Goodliffe
Version:
3.00


Constructor & Destructor Documentation

TSE3::MidiEcho::MidiEcho MidiScheduler scheduler  ) 
 

MidiEcho defaults to being off.

Parameters:
scheduler The MidiScheduler output is sent to.


Member Function Documentation

MidiFilter* TSE3::MidiEcho::filter  )  [inline]
 

Returns the MIDI filter that effects MIDI echo.

You can use this filter to force which channel and port the MIDI echo output appears on.

Returns:
The MidiEcho object's MidiFilter

int TSE3::MidiEcho::channel  )  const [inline]
 

Returns the channel that MIDI echoing is accepted from. A value of MidiCommand::AllChannels means every channel.

Note that this value doesn't set where MIDI echo output is sent to, but from where it is received.

Returns:
Incoming MIDI channel
See also:
setChannel

void TSE3::MidiEcho::setChannel int  c  ) 
 

Sets the channel that MIDI echoing is accepted from.

Note that this value doesn't set where MIDI echo output is sent to, but from where it is received.

Parameters:
c New incoming MIDI channel
See also:
channel

int TSE3::MidiEcho::port  )  const [inline]
 

Returns the port that MIDI echoing is accepted from. A value of means every port.

Note that this value doesn't set where MIDI echo output is sent to, but from where it is received.

Returns:
Incoming MIDI port
See also:
setPort

void TSE3::MidiEcho::setPort int  p  ) 
 

Sets the port that MIDI echoing is accepted from.

Note that this value doesn't set where MIDI echo output is sent to, but from where it is received.

Parameters:
p New incoming MIDI port
See also:
port

void TSE3::MidiEcho::echo MidiEvent  command  ) 
 

Echo the specified command. This method should be called for all recieved MIDI data, as soon as possible after it has been recieved (this is done by the Transport object).

Although the input parameter is a MidiEvent, only the 'data' part, a MidiCommand, is used.

Parameters:
command The MIDI command to echo


The documentation for this class was generated from the following file:
Generated on Wed May 25 14:46:27 2005 for TSE3 by doxygen 1.3.2