Files
haiku-beta6/headers/os/midi/Samples.h
T

51 lines
1.0 KiB
C++
Raw Normal View History

2002-10-26 18:51:58 +00:00
#ifndef _SAMPLES_H
#define _SAMPLES_H
#include <BeBuild.h>
#include <Entry.h>
typedef void (*sample_exit_hook)(int32 arg);
typedef bool (*sample_loop_hook)(int32 arg);
class BSamples
{
public:
2003-03-17 22:24:09 +00:00
2002-11-01 16:11:03 +00:00
BSamples();
virtual ~BSamples();
void Start(
2003-03-17 22:24:09 +00:00
void* sampleData, int32 frames, int16 bytes_per_sample,
int16 channel_count, double pitch, int32 loopStart, int32 loopEnd,
double sampleVolume, double stereoPosition, int32 hook_arg,
sample_loop_hook pLoopContinueProc, sample_exit_hook pDoneProc);
2002-11-01 16:11:03 +00:00
bool IsPaused(void) const;
void Pause(void);
void Resume(void);
void Stop(void);
bool IsPlaying(void) const;
void SetVolume(double newVolume);
double Volume(void) const;
void SetSamplingRate(double newRate);
double SamplingRate(void) const;
void SetPlacement(double stereoPosition);
double Placement(void) const;
void EnableReverb(bool useReverb);
2002-10-26 18:51:58 +00:00
private:
2002-11-01 16:11:03 +00:00
virtual void _ReservedSamples1();
virtual void _ReservedSamples2();
virtual void _ReservedSamples3();
2002-10-26 18:51:58 +00:00
2003-03-17 22:24:09 +00:00
uint32 _reserved[8];
2002-10-26 18:51:58 +00:00
};
2002-11-01 16:11:03 +00:00
#endif // _SAMPLES_H