eas_midi.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /*----------------------------------------------------------------------------
  2. *
  3. * File:
  4. * eas_midi.h
  5. *
  6. * Contents and purpose:
  7. * Prototypes for MIDI stream parsing functions
  8. *
  9. *
  10. * Copyright Sonic Network Inc. 2005
  11. * Licensed under the Apache License, Version 2.0 (the "License");
  12. * you may not use this file except in compliance with the License.
  13. * You may obtain a copy of the License at
  14. *
  15. * http://www.apache.org/licenses/LICENSE-2.0
  16. *
  17. * Unless required by applicable law or agreed to in writing, software
  18. * distributed under the License is distributed on an "AS IS" BASIS,
  19. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  20. * See the License for the specific language governing permissions and
  21. * limitations under the License.
  22. *
  23. *----------------------------------------------------------------------------
  24. * Revision Control:
  25. * $Revision: 82 $
  26. * $Date: 2006-07-10 11:45:19 -0700 (Mon, 10 Jul 2006) $
  27. *----------------------------------------------------------------------------
  28. */
  29. #ifndef _EAS_MIDI_H
  30. #define _EAS_MIDI_H
  31. /*----------------------------------------------------------------------------
  32. * EAS_InitMIDIStream()
  33. *----------------------------------------------------------------------------
  34. * Purpose:
  35. * Initializes the MIDI stream state for parsing.
  36. *
  37. * Inputs:
  38. *
  39. * Outputs:
  40. * returns EAS_RESULT (EAS_SUCCESS is OK)
  41. *
  42. * Side Effects:
  43. *
  44. *----------------------------------------------------------------------------
  45. */
  46. void EAS_InitMIDIStream (S_MIDI_STREAM *pMIDIStream);
  47. /*----------------------------------------------------------------------------
  48. * EAS_ParseMIDIStream()
  49. *----------------------------------------------------------------------------
  50. * Purpose:
  51. * Parses a MIDI input stream character by character. Characters are pushed (rather than pulled)
  52. * so the interface works equally well for both file and stream I/O.
  53. *
  54. * Inputs:
  55. * c - character from MIDI stream
  56. *
  57. * Outputs:
  58. * returns EAS_RESULT (EAS_SUCCESS is OK)
  59. *
  60. * Side Effects:
  61. *
  62. *----------------------------------------------------------------------------
  63. */
  64. EAS_RESULT EAS_ParseMIDIStream (S_EAS_DATA *pEASData, S_SYNTH *pSynth, S_MIDI_STREAM *pMIDIStream, EAS_U8 c, EAS_INT parserMode);
  65. #endif /* #define _EAS_MIDI_H */