MMidiClientUtilityObserver Class Reference

#include <midiclientutility.h>

class MMidiClientUtilityObserver
Public Member Functions
pure virtual voidMmcuoInstrumentChanged(TInt, TInt, TInt)
pure virtual voidMmcuoMetaDataEntryFound(const TInt, const TTimeIntervalMicroSeconds &)
pure virtual voidMmcuoMipMessageReceived(const RArray< TMipMessageEntry > &)
pure virtual voidMmcuoMuteChanged(TInt, TBool)
pure virtual voidMmcuoPolyphonyChanged(TInt)
pure virtual voidMmcuoStateChanged(TMidiState, TMidiState, const TTimeIntervalMicroSeconds &, TInt)
pure virtual voidMmcuoSyncUpdate(const TTimeIntervalMicroSeconds &, TInt64)
pure virtual voidMmcuoTempoChanged(TInt)
pure virtual voidMmcuoVolumeChanged(TInt, TReal32)

Detailed Description

Active object utility class to allow MIDI events to be signalled asynchronously.

See also: CMidiClientUtility::NewL().

Member Function Documentation

MmcuoInstrumentChanged ( TInt, TInt, TInt )

voidMmcuoInstrumentChanged(TIntaChannel,
TIntaBankId,
TIntaInstrumentId
)[pure virtual]

An instrument has been changed on a channel.

Parameters
aChannelChannel where the change of instrument occurred. 0 <= aChannel < ChannelsSupportedL().
aBankIdIdentifier of the bank that the instrument belongs to, occupying no more than 14 bits. The bank ID is a concatenation of MIDI bank MSB and LSB values.
aInstrumentIdIdentifier of the instrument that has been changed. 0 <= aInstrumentId <= 127.

MmcuoMetaDataEntryFound ( const TInt, const TTimeIntervalMicroSeconds & )

voidMmcuoMetaDataEntryFound(const TIntaMetaDataEntryId,
const TTimeIntervalMicroSeconds &aPosition
)[pure virtual]

A timed meta data entry has been found in the MIDI data stream, eg a timed song lyric in an SMF file.

Parameters
aMetaDataEntryIdIndex of the meta data entry - if this entry has not been encountere before, it will be added to the list of meta data entries. Previously encountered timed entries still generate this callback.
aPositionPosition in microseconds relative to the start of the MIDI resource that the MIDI meta data entry was found at.

MmcuoMipMessageReceived ( const RArray< TMipMessageEntry > & )

voidMmcuoMipMessageReceived(const RArray< TMipMessageEntry > &aMessage)[pure virtual]

A MIP message has been found in the MIDI data stream.

Parameters
aMessageReference to an array of MIP message entries (logical {channel, MIP} value pairs) contained in the message.

MmcuoMuteChanged ( TInt, TBool )

voidMmcuoMuteChanged(TIntaChannel,
TBoolaMuted
)[pure virtual]

The MIDI resource has encountered a mute message in the MIDI data stream.

Parameters
aChannelLogical channel to which the message applies. 0 <= aChannel < ChannelsSupportedL().
aMutedNew muting state of the channel - ETrue is muted, EFalse is unmuted.

MmcuoPolyphonyChanged ( TInt )

voidMmcuoPolyphonyChanged(TIntaNewPolyphony)[pure virtual]

The polyphony of the MIDI engine has changed.

Parameters
aNewPolyphonyThe new polyphony value.

MmcuoStateChanged ( TMidiState, TMidiState, const TTimeIntervalMicroSeconds &, TInt )

voidMmcuoStateChanged(TMidiStateaOldState,
TMidiStateaNewState,
const TTimeIntervalMicroSeconds &aTime,
TIntaError
)[pure virtual]

A state change has occurred in the MIDI client utility.

Parameters
aOldStateOld state.
aNewStateNew state.
aTimeThe time in microseconds at which playback stopped relative to the start of the MIDI resource.
aErrorError code.

MmcuoSyncUpdate ( const TTimeIntervalMicroSeconds &, TInt64 )

voidMmcuoSyncUpdate(const TTimeIntervalMicroSeconds &aMicroSeconds,
TInt64aMicroBeats
)[pure virtual]

Callback in response to a call to CMIDIClientUtility::SetSyncUpdateCallbackIntervalL(). By default there are no callbacks. Otherwise the callback is called at an interval set by the client.

Parameters
aMicroSecondsPosition in microseconds relative to the start of the resource - only set if the sync update set function was called with the microseconds parameter set.
aMicroBeatsPosition in microbeats relative to the start of the resource - only set if the sync update set function was called with the microbeats parameter set and the microseconds parameter set to 0.

MmcuoTempoChanged ( TInt )

voidMmcuoTempoChanged(TIntaMicroBeatsPerMinute)[pure virtual]

The MIDI resource has encountered a tempo change message in the MIDI data stream.

Parameters
aMicroBeatsPerMinuteNew tempo value in micro beats per minute (BPM*1000000).

MmcuoVolumeChanged ( TInt, TReal32 )

voidMmcuoVolumeChanged(TIntaChannel,
TReal32aVolumeInDecibels
)[pure virtual]

The MIDI resource has encountered a volume change message in the MIDI data stream.

Parameters
aChannelLogical channel to which the message applies. 0 <= aChannel < ChannelsSupportedL().
aVolumeInDecibelsNew volume setting being used.