MIDI.h 2.67 KB
 Dean Camera committed Jun 14, 2009 1 2 /* LUFA Library  Dean Camera committed Dec 30, 2009 3  Copyright (C) Dean Camera, 2010.  Dean Camera committed Jun 14, 2009 4 5 6 7 8 9  dean [at] fourwalledcubicle [dot] com www.fourwalledcubicle.com */ /*  Dean Camera committed Dec 30, 2009 10  Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com)  Dean Camera committed Jun 14, 2009 11   Dean Camera committed Dec 28, 2009 12 13 14 15 16 17 18  Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that the copyright notice and this permission notice and warranty disclaimer appear in supporting documentation, and that the name of the author not be used in advertising or publicity pertaining to distribution of the  Dean Camera committed Jun 14, 2009 19 20 21 22 23 24 25 26 27 28 29 30 31  software without specific, written prior permission. The author disclaim all warranties with regard to this software, including all implied warranties of merchantability and fitness. In no event shall the author be liable for any special, indirect or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of contract, negligence or other tortious action, arising out of or in connection with the use or performance of this software. */ /** \ingroup Group_USBClassDrivers  Dean Camera committed Nov 17, 2009 32  * @defgroup Group_USBClassMIDI MIDI Class Driver - LUFA/Drivers/Class/MIDI.h  Dean Camera committed Jun 14, 2009 33 34 35 36  * * \section Sec_Dependencies Module Source Dependencies * The following files must be built with any user project that uses this module: * - LUFA/Drivers/USB/Class/Device/MIDI.c  Dean Camera committed Oct 08, 2009 37  * - LUFA/Drivers/USB/Class/Host/MIDI.c  Dean Camera committed Jun 14, 2009 38 39  * * \section Module Description  Dean Camera committed Aug 27, 2009 40  * MIDI Class Driver module. This module contains an internal implementation of the USB MIDI Class, for both Device  Dean Camera committed Nov 09, 2009 41  * and Host USB modes. User applications can use this class driver instead of implementing the MIDI class manually  Dean Camera committed Aug 27, 2009 42 43  * via the low-level LUFA APIs. *  Dean Camera committed Nov 09, 2009 44  * This module is designed to simplify the user code by exposing only the required interface needed to interface with  Dean Camera committed Aug 27, 2009 45 46 47 48  * Hosts or Devices using the USB MIDI Class. * * \note The USB MIDI class is actually a special case of the regular Audio class, thus this module depends on * structure definitions from the \ref Group_USBClassAudioDevice class driver module.  Dean Camera committed Jun 14, 2009 49 50 51 52 53 54 55 56 57 58  * * @{ */ #ifndef _MIDI_CLASS_H_ #define _MIDI_CLASS_H_ /* Includes: */ #include "../HighLevel/USBMode.h"  Dean Camera committed Nov 07, 2009 59 60 61 62  #if defined(NO_STREAM_CALLBACKS) #error The NO_STREAM_CALLBACKS compile time option cannot be used in projects using the library Class drivers. #endif  Dean Camera committed Jun 14, 2009 63 64 65  #if defined(USB_CAN_BE_DEVICE) #include "Device/MIDI.h" #endif  Dean Camera committed Oct 08, 2009 66 67 68 69  #if defined(USB_CAN_BE_HOST) #include "Host/MIDI.h" #endif  Dean Camera committed Jun 14, 2009 70 71 72 73  #endif /** @} */