/******************************************/
/*  Simple MIDI Text File Reader Class,   */
/*  by Perry R. Cook, 1996                */
/*  This Object can open a MIDI Text File */
/*  and parse it.  The file spec is mine  */
/*  and mine alone, but it's all text so  */
/*  you should be able to figure it out.  */
/*                                        */
/*  TSIDI (ToolKit Synthesis Instrument   */
/*  Digital Interfaceis like MIDI, but    */
/*  allows for floating point control     */
/*  changes, note numbers, etc. Example:  */
/*  noteOn(1,60.01,111.132) plays a sharp */
/*  middle C with a velocity of 111.132   */
/*                                        */
/*  Warning:  Obey column spacing in the  */
/*  text file if you try to edit it or    */
/*  create your own files.                */
/******************************************/

/******************************************/
/*  Simple Realtime MIDI Input Object for */
/*  Linux OSS.                            */
/*  First version by Paul Leonard, 1997   */
/*  Substantially reworked by             */
/*  Gary P. Scavone, February 1998, using */
/*  code from RoseGarden as a model.      */
/*                                        */
/*  This object takes MIDI from the input */
/*  stream, parses it, and turns it into  */
/*  TSIDI.                                */
/******************************************/

#if !defined(__MIDIInpt_h)
#define __MIDIInpt_h

#include "Object.h"

class MIDIInpt : public Object
{
  protected:  
    int messageType;
    int channel;
    float byteTwo;
    float byteThree;
	MY_FLOAT deltaTime;
  public:
    MIDIInpt();
    ~MIDIInpt();
    void printMessage();
    int nextMessage();
    int getType();
    int getChannel();
    MY_FLOAT getByteTwo();
    MY_FLOAT getByteThree();
	MY_FLOAT getDeltaTime();
};

#endif
