#include "jdkmidi/world.h"
#include "jdkmidi/track.h"
#include "jdkmidi/multitrack.h"
#include "jdkmidi/filereadmultitrack.h"
#include "jdkmidi/fileread.h"
#include "jdkmidi/fileshow.h"
#include "jdkmidi/sequencer.h"
#include "jdkmidi/manager.h"
#include "jdkmidi/driverdump.h"
Go to the source code of this file.
Functions | |
void | DumpTrackNames (MIDISequencer *seq) |
void | PlayDumpManager (MIDIManager *mgr) |
int | main (int argc, char **argv) |
|
Definition at line 37 of file jdkmidi_test_drv.cpp. References jdkmidi::MIDISequencer::GetNumTracks(), jdkmidi::MIDISequencer::GetTrackState(), jdkmidi::MIDISequencerTrackState::tempobpm, and jdkmidi::MIDISequencerTrackState::track_name.
00038 { 00039 fprintf( stdout, "TEMPO = %f\n", 00040 seq->GetTrackState(0)->tempobpm 00041 ); 00042 00043 for( int i=0; i<seq->GetNumTracks(); ++i ) 00044 { 00045 fprintf( stdout, "TRK #%2d : NAME = '%s'\n", 00046 i, 00047 seq->GetTrackState(i)->track_name 00048 ); 00049 } 00050 } |
|
Definition at line 75 of file jdkmidi_test_drv.cpp. References DumpTrackNames(), jdkmidi::MIDISequencer::GoToZero(), jdkmidi::MIDIFileRead::Parse(), PlayDumpManager(), and jdkmidi::MIDIManager::SetSeq().
00076 { 00077 if( argc>1 ) 00078 { 00079 MIDIFileReadStreamFile rs( argv[1] ); 00080 MIDIMultiTrack tracks(64); 00081 MIDIFileReadMultiTrack track_loader( &tracks ); 00082 MIDIFileRead reader( &rs, &track_loader ); 00083 MIDISequencerGUIEventNotifierText gui( stdout ); 00084 MIDISequencer seq( &tracks, &gui ); 00085 MIDIDriverDump driver(128,stdout); 00086 MIDIManager mgr( &driver, &gui ); 00087 00088 reader.Parse(); 00089 00090 seq.GoToZero(); 00091 mgr.SetSeq( &seq ); 00092 00093 DumpTrackNames( &seq ); 00094 00095 PlayDumpManager( &mgr ); 00096 } 00097 00098 return 0; 00099 } |
|
Definition at line 53 of file jdkmidi_test_drv.cpp. References jdkmidi::MIDIDriver::AllNotesOff(), jdkmidi::MIDIManager::GetDriver(), jdkmidi::MIDIManager::GetSeq(), jdkmidi::MIDISequencer::GoToTime(), jdkmidi::MIDIManager::SeqPlay(), jdkmidi::MIDIManager::SeqStop(), and jdkmidi::MIDIDriver::TimeTick().
00054 { 00055 MIDISequencer *seq = mgr->GetSeq(); 00056 double pretend_clock_time = 0.0; 00057 00058 seq->GoToTime( (unsigned long)pretend_clock_time ); 00059 00060 mgr->SeqPlay(); 00061 00062 // simulate a clock going forward with 10ms resolution for 1 minute 00063 00064 for( pretend_clock_time=0.0; pretend_clock_time<60.0*1000.0; pretend_clock_time+=100 ) 00065 { 00066 mgr->GetDriver()->TimeTick( (unsigned long)pretend_clock_time ); 00067 } 00068 00069 mgr->SeqStop(); 00070 mgr->GetDriver()->AllNotesOff(); 00071 00072 } |