///////////////////////////////////////////////////////////////////////////////
//                                                                           //
// File:           ThreadedMIDIOutput.h                                      //
//                                                                           //
// Functionality:  Thread safe MIDI out support.                             //
//                                                                           //
// Author:         Rolf Meyerhoff (rm@matrix44.de)                           //
//                                                                           //
// Copyright:      (C) 2009 by Rolf Meyerhoff. All rights reserved.          //
//                                                                           //
///////////////////////////////////////////////////////////////////////////////
//                                                                           //
// License:                                                                  //
//                                                                           //
// This library is free software;  you can redistribute it  and/or modify it //
// under the terms of the GNU Lesser  General Public License as published by //
// the Free Software Foundation;  either version 2.1 of the License,  or (at //
// your option) any later version.                                           //
//                                                                           //
// This  library is  distributed in  the hope that  it will  be useful,  but //
// WITHOUT   ANY   WARRANTY;   without   even   the   implied  warranty   of //
// MERCHANTABILITY or FITNESS FOR A  PARTICULAR PURPOSE.  See the GNU Lesser //
// General Public License for more details.                                  //
//                                                                           //
// You should have received a copy of  the GNU Lesser General Public License //
// along with this library;  if not,  write to the Free Software Foundation, //
// Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.              //
///////////////////////////////////////////////////////////////////////////////
#ifndef __THREADEDMIDIOUT_H_INCLUDED__
#define __THREADEDMIDIOUT_H_INCLUDED__

///////////////////////////////////////////////////////////////////////////////
// CreateThreadedMIDIOutput()
///////////////////////////////////////////////////////////////////////////////
// Description:  Create a thread safe wrapper for the MIDI output.
// Parameters:   [in] output: The source MIDI out to wrap.
// Return value: Returns a wrapped MIDI out with the same props as 'output'.
// Remarks:      This is needed for Mac only. The win version just returns the
//               unchanged output parameter.
///////////////////////////////////////////////////////////////////////////////
midi_Output* CreateThreadedMIDIOutput(midi_Output* output);

#endif // #ifndef __THREADEDMIDIOUT_H_INCLUDED__
///////////////////////////////// End of File /////////////////////////////////
