/* * delete_fluid_midishare_midi_driver */ int delete_fluid_midishare_midi_driver(fluid_midi_driver_t* p) { fluid_midishare_midi_driver_t* dev; dev = (fluid_midishare_midi_driver_t*) p; if (dev == NULL) { return FLUID_OK; } if (dev->filter) MidiFreeFilter(dev->filter); #if defined(MIDISHARE_DRIVER) fluid_midishare_close_driver(dev); #else fluid_midishare_close_appl(dev); #endif #if defined(MACINTOSH) && defined(MACOS9) DisposeRoutineDescriptor(dev->upp_alarm_ptr); DisposeRoutineDescriptor(dev->upp_wakeup_ptr); DisposeRoutineDescriptor(dev->upp_sleep_ptr); DisposeRoutineDescriptor(dev->upp_task_ptr); #endif dev->status = FLUID_MIDI_DONE; FLUID_FREE(dev); return FLUID_OK; }
MidiInputDeviceMidiShare::~MidiInputDeviceMidiShare() { #if defined(MIDISHARE_DRIVER) CloseDriver(); #else CloseAppl(); #endif MidiFreeFilter(hMidiFilter); }
void test22 () { printf("\n\n<TEST 22> close the MidiShare session\n"); DebugStr ("--> use g or G to end the session and exit the tutorial\n"); MidiFreeFilter(ourFilter); MidiClose(ourRefNum); printf("\nTHE TUTORIAL IS NOW FINISHED!\n"); }
//_______________________________________________________________________ static void closeDriver (DrvMemPtr mem) { if (mem->devId) { tcflush(mem->devId, TCIFLUSH); tcsetattr (mem->devId, TCSANOW, &mem->tio[kOld]); close(mem->devId); mem->devId = 0; } if (mem->refNum > 0) { MidiClose (mem->refNum); mem->refNum = 0; } if (mem->filter) { MidiFreeFilter (mem->filter); mem->filter = 0; } }
/* ------------------------------------------------------------------------- */ void QuitMidi() { MidiFreeFilter(myFilter); MidiClose(myRefNum); }
int QuitMidi() { MidiFreeFilter(myFilter); MidiClose(myRefNum); return ( 0); }