1*6c94880fSSascha Wildner#- 2*6c94880fSSascha Wildner# Copyright (c) 2003 Mathew Kanner 3*6c94880fSSascha Wildner# All rights reserved. 4*6c94880fSSascha Wildner# 5*6c94880fSSascha Wildner# Redistribution and use in source and binary forms, with or without 6*6c94880fSSascha Wildner# modification, are permitted provided that the following conditions 7*6c94880fSSascha Wildner# are met: 8*6c94880fSSascha Wildner# 1. Redistributions of source code must retain the above copyright 9*6c94880fSSascha Wildner# notice, this list of conditions and the following disclaimer. 10*6c94880fSSascha Wildner# 2. Redistributions in binary form must reproduce the above copyright 11*6c94880fSSascha Wildner# notice, this list of conditions and the following disclaimer in the 12*6c94880fSSascha Wildner# documentation and/or other materials provided with the distribution. 13*6c94880fSSascha Wildner# 14*6c94880fSSascha Wildner# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15*6c94880fSSascha Wildner# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16*6c94880fSSascha Wildner# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17*6c94880fSSascha Wildner# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18*6c94880fSSascha Wildner# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19*6c94880fSSascha Wildner# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20*6c94880fSSascha Wildner# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21*6c94880fSSascha Wildner# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22*6c94880fSSascha Wildner# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23*6c94880fSSascha Wildner# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24*6c94880fSSascha Wildner# SUCH DAMAGE. 25*6c94880fSSascha Wildner# 26*6c94880fSSascha Wildner# $FreeBSD: head/sys/dev/sound/midi/mpu_if.m 166971 2007-02-25 13:51:52Z netchild $ 27*6c94880fSSascha Wildner# 28*6c94880fSSascha Wildner 29*6c94880fSSascha Wildner#include <dev/sound/midi/midi.h> 30*6c94880fSSascha Wildner 31*6c94880fSSascha WildnerINTERFACE mpu; 32*6c94880fSSascha Wildner 33*6c94880fSSascha WildnerMETHOD int inqsize { 34*6c94880fSSascha Wildner struct snd_midi *_kobj; 35*6c94880fSSascha Wildner void *_cookie; 36*6c94880fSSascha Wildner}; 37*6c94880fSSascha Wildner 38*6c94880fSSascha WildnerMETHOD int outqsize { 39*6c94880fSSascha Wildner struct snd_midi *_kobj; 40*6c94880fSSascha Wildner void *_cookie; 41*6c94880fSSascha Wildner}; 42*6c94880fSSascha Wildner 43*6c94880fSSascha WildnerMETHOD int init { 44*6c94880fSSascha Wildner struct snd_midi *_kobj; 45*6c94880fSSascha Wildner void *_cookie; 46*6c94880fSSascha Wildner}; 47*6c94880fSSascha Wildner 48*6c94880fSSascha WildnerMETHOD void callbackp { 49*6c94880fSSascha Wildner struct snd_midi *_kobj; 50*6c94880fSSascha Wildner void *_cookie; 51*6c94880fSSascha Wildner int _flags; 52*6c94880fSSascha Wildner}; 53*6c94880fSSascha Wildner 54*6c94880fSSascha WildnerMETHOD void callback { 55*6c94880fSSascha Wildner struct snd_midi *_kobj; 56*6c94880fSSascha Wildner void *_cookie; 57*6c94880fSSascha Wildner int _flags; 58*6c94880fSSascha Wildner}; 59*6c94880fSSascha Wildner 60*6c94880fSSascha WildnerMETHOD const char * provider { 61*6c94880fSSascha Wildner struct snd_midi *_kobj; 62*6c94880fSSascha Wildner void *_cookie; 63*6c94880fSSascha Wildner}; 64*6c94880fSSascha Wildner 65*6c94880fSSascha WildnerMETHOD const char * descr { 66*6c94880fSSascha Wildner struct snd_midi *_kobj; 67*6c94880fSSascha Wildner void *_cookie; 68*6c94880fSSascha Wildner int _verbosity; 69*6c94880fSSascha Wildner}; 70*6c94880fSSascha Wildner 71*6c94880fSSascha WildnerMETHOD int uninit { 72*6c94880fSSascha Wildner struct snd_midi *_kobj; 73*6c94880fSSascha Wildner void *_cookie; 74*6c94880fSSascha Wildner}; 75