Annotation of ntddk/src/mmedia/soundlib/inc/midi.h, revision 1.1.1.1

1.1       root        1: /*++ BUILD Version: 0001    // Increment this if a change has global effects
                      2: 
                      3: 
                      4: Copyright (c) 1992  Microsoft Corporation
                      5: 
                      6: Module Name:
                      7: 
                      8:     midi.h
                      9: 
                     10: Abstract:
                     11: 
                     12:     This include file defines common structures for midi drivers
                     13: 
                     14: Author:
                     15: 
                     16:     Robin Speed (RobinSp) 17-Oct-92
                     17: 
                     18: Revision History:
                     19: 
                     20: --*/
                     21: 
                     22: //
                     23: // Hardware interface routine type for Midi processing
                     24: //
                     25: 
                     26: 
                     27: struct _MIDI_INFO;
                     28: typedef BOOLEAN MIDI_INTERFACE_ROUTINE(struct _MIDI_INFO *);
                     29: typedef MIDI_INTERFACE_ROUTINE *PMIDI_INTERFACE_ROUTINE;
                     30: 
                     31: 
                     32: typedef struct _MIDI_INFO {
                     33:     ULONG           Key;               // Debugging
                     34: 
                     35: #define MIDI_INFO_KEY       (*(ULONG *)"Midi")
                     36: 
                     37:     KSPIN_LOCK      DeviceSpinLock;     // spin lock for synchrnonizing with
                     38:                                         // Dpc routine
                     39: #if DBG
                     40:     BOOLEAN         LockHeld;           // Get spin locks right
                     41: #endif
                     42: 
                     43:     LARGE_INTEGER   RefTime;            // Time in 100ns units when started
                     44:     LIST_ENTRY      QueueHead;          // queue of input buffers
                     45:     PVOID           HwContext;
                     46:     PMIDI_INTERFACE_ROUTINE
                     47:                     HwStartMidiIn,      // Start device
                     48:                     HwStopMidiIn;       // stop device
                     49:     BOOLEAN      (* HwMidiRead)(        // Read a byte - returns TRUE if
                     50:                                         // got one.
                     51:                         struct _MIDI_INFO *, PUCHAR);
                     52:     VOID         (* HwMidiOut)(         // Output  bytes to the device
                     53:                         struct _MIDI_INFO *, PUCHAR, int);
                     54:     BOOLEAN         fMidiInStarted;     // Midi input active
                     55:     UCHAR           InputPosition;      // Number of bytes in buffer
                     56:     UCHAR           InputBytes;         // Number of bytes available
                     57:     UCHAR           MidiInputByte[64];  // Input byte(s) rececived - and
                     58:                                         // do a little buffering
                     59: } MIDI_INFO, *PMIDI_INFO;
                     60: 
                     61: VOID SoundInitMidiIn(
                     62:     IN OUT PMIDI_INFO pMidi,
                     63:     IN     PVOID HwContext
                     64: );

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.