Home   Information   Classes   Download   Usage   Mail List   Requirements   Tutorial


SKINI.h

00001 /***************************************************/
00026 /***************************************************/
00027 
00028 #if !defined(__SKINI_H)
00029 #define __SKINI_H
00030 
00031 #include "Stk.h"
00032 #include <stdio.h>
00033 
00034 class SKINI : public Stk
00035 {
00036  public:
00038   SKINI();
00039 
00041   SKINI(char *fileName);
00042 
00044   ~SKINI();
00045 
00047 
00050   long parseThis(char* aString);
00051 
00053 
00056   long nextMessage();
00057 
00059   long getType() const;
00060 
00062   long getChannel() const;
00063 
00065   MY_FLOAT getDelta() const;
00066 
00068   MY_FLOAT getByteTwo() const;
00069 
00071   MY_FLOAT getByteThree() const;
00072 
00074   long getByteTwoInt() const;
00075 
00077   long getByteThreeInt() const;
00078 
00080   const char* getRemainderString();
00081 
00083   const char* getMessageTypeString();
00084 
00086   const char* whatsThisType(long type);
00087 
00089   const char* whatsThisController(long number);
00090 
00091  protected:
00092 
00093   FILE *myFile;
00094   long messageType;
00095   char msgTypeString[64];
00096   long channel;
00097   MY_FLOAT deltaTime;
00098   MY_FLOAT byteTwo;
00099   MY_FLOAT byteThree;
00100   long byteTwoInt;
00101   long byteThreeInt;
00102   char remainderString[1024];
00103   char whatString[1024];
00104 };
00105 
00106 static const double Midi2Pitch[129] = {
00107 8.18,8.66,9.18,9.72,10.30,10.91,11.56,12.25,
00108 12.98,13.75,14.57,15.43,16.35,17.32,18.35,19.45,
00109 20.60,21.83,23.12,24.50,25.96,27.50,29.14,30.87,
00110 32.70,34.65,36.71,38.89,41.20,43.65,46.25,49.00,
00111 51.91,55.00,58.27,61.74,65.41,69.30,73.42,77.78,
00112 82.41,87.31,92.50,98.00,103.83,110.00,116.54,123.47,
00113 130.81,138.59,146.83,155.56,164.81,174.61,185.00,196.00,
00114 207.65,220.00,233.08,246.94,261.63,277.18,293.66,311.13,
00115 329.63,349.23,369.99,392.00,415.30,440.00,466.16,493.88,
00116 523.25,554.37,587.33,622.25,659.26,698.46,739.99,783.99,
00117 830.61,880.00,932.33,987.77,1046.50,1108.73,1174.66,1244.51,
00118 1318.51,1396.91,1479.98,1567.98,1661.22,1760.00,1864.66,1975.53,
00119 2093.00,2217.46,2349.32,2489.02,2637.02,2793.83,2959.96,3135.96,
00120 3322.44,3520.00,3729.31,3951.07,4186.01,4434.92,4698.64,4978.03,
00121 5274.04,5587.65,5919.91,6271.93,6644.88,7040.00,7458.62,7902.13,
00122 8372.02,8869.84,9397.27,9956.06,10548.08,11175.30,11839.82,12543.85,
00123 13289.75};
00124 
00125 #endif
00126 
00127 

The Synthesis ToolKit in C++ (STK)
©1995-2002 Perry R. Cook and Gary P. Scavone. All Rights Reserved.