home *** CD-ROM | disk | FTP | other *** search
- /*******************************************/
- /* Raw Soundfile Class, */
- /* by Perry R. Cook, 1995-96 */
- /* This Object can open a raw 16bit data */
- /* (signed integers) file, and play back */
- /* the data once or looping, with linear */
- /* interpolation on playback. */
- /*******************************************/
-
- #if !defined(__RawWave_h)
- #define __RawWave_h
-
- #include "Object.h"
-
- class RawWave : public Object
- {
- protected:
- int looping;
- int myData;
- int allDone;
- long length;
- MY_FLOAT *data;
- MY_FLOAT rate;
- MY_FLOAT time;
- MY_FLOAT phaseOffset;
- MY_FLOAT lastOutput;
- public:
- RawWave(char *fileName);
- RawWave(MY_FLOAT *someData,long aLength);
- ~RawWave();
- void reset();
- void normalize();
- void normalize(MY_FLOAT newPeak);
- void setRate(MY_FLOAT aRate);
- void setFreq(MY_FLOAT aFreq);
- void addTime(MY_FLOAT aTime);
- void addPhase(MY_FLOAT anAngle);
- void addPhaseOffset(MY_FLOAT anAngle);
- void setLooping(int aLoopStatus);
- int isAllDone();
- long getLength();
- MY_FLOAT* getData();
- MY_FLOAT tick();
- int informTick();
- MY_FLOAT lastOut();
- };
-
- #endif
-