fixed lot of issues in MIDI-import-filter and added support for tempo-change-events

git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@497 0778d3d1-df1d-0410-868b-ea421aaaa00d
This commit is contained in:
Tobias Doerffel
2007-07-23 21:52:02 +00:00
parent 6b89322a7c
commit 41eccc8bf8
9 changed files with 211 additions and 62 deletions

View File

@@ -95,19 +95,24 @@ public:
return( classNodeName() );
}
inline const track * getTrack( void )
inline const track * getTrack( void ) const
{
return( m_track );
}
inline const levelObject * object( void )
inline const levelObject * object( void ) const
{
return( m_object );
}
inline levelObject * object( void )
{
return( m_object );
}
void processMidiTime( const midiTime & _time );
inline bool updateFirst( void )
inline bool updateFirst( void ) const
{
return( m_update_first );
}
@@ -117,7 +122,7 @@ public:
m_update_first = _update;
}
void forgetTrack()
void forgetTrack( void )
{
m_track = NULL;
}

View File

@@ -59,7 +59,23 @@ enum midiEventTypes
MIDI_SYSTEM_RESET = 0xFF,
// meta event - for midi files only
MIDI_META_EVENT = 0xFF,
MIDI_TEMPO = 0xFF51
} ;
enum midiMetaEvents
{
MIDI_COPYRIGHT = 0x02,
MIDI_TRACK_NAME = 0x03,
MIDI_INST_NAME = 0x04,
MIDI_LYRIC = 0x05,
MIDI_MARKER = 0x06,
MIDI_CUE_POINT = 0x07,
MIDI_PORT_NUMBER = 0x21,
MIDI_EOT = 0x2f,
MIDI_SET_TEMPO = 0x51,
MIDI_SMPTE_OFFSET = 0x54,
MIDI_TIME_SIGNATURE = 0x58,
MIDI_KEY_SIGNATURE = 0x59,
MIDI_SEQUENCER_EVENT = 0x7f
} ;

View File

@@ -130,6 +130,7 @@ public:
bpm_t getTempo( void );
virtual automationPattern * tempoAutomationPattern( void );
// every function that replaces current file (e.g. creates new file,

View File

@@ -82,6 +82,11 @@ public:
return( m_currentPosition );
}
virtual automationPattern * tempoAutomationPattern( void )
{
return( NULL );
}
virtual bool fixedTCOs( void ) const
{
return( FALSE );