/* SampleDeviceOutput.h */

#ifndef Included_SampleDeviceOutput_h
#define Included_SampleDeviceOutput_h

/* SampleDeviceOutput module depends on */
/* MiscInfo.h */
/* Audit */
/* Debug */
/* Definitions */
/* FixedPoint */
/* BinaryCodedDecimal */
/* ExecuteSynthesis */
/* Memory */
/* SoundOutput */
/* MainWindowStuff */
/* Alert */
/* EventLoop */
/* ClipWarnDialog */
/* SynthProgressWindow */
/* SampleConsts */
/* ErrorDaemon */

#include "MainWindowStuff.h"
#include "FixedPoint.h"
#include "BinaryCodedDecimal.h"

/* forwards */
struct MainWindowRec;
struct ArrayRec;
struct TrackObjectRec;

/* this routine opens the sound channel & performs resampling to it. */
void									SynthToSoundDevice(struct MainWindowRec* MainWindow,
												struct ArrayRec* ListOfTracks, struct TrackObjectRec* KeyTrack,
												long FrameToStartAt, long SamplingRate, long EnvelopeRate,
												MyBoolean UseStereo, LargeBCDType DefaultBeatsPerMinute,
												LargeBCDType OverallVolumeScalingReciprocal,
												MyBoolean InterpOverTime, MyBoolean InterpAcrossWaves,
												LargeBCDType ScanningGap, OutputNumBitsType NumBitsOut,
												LargeBCDType SecondsOfBuffering, MyBoolean ClipWarn);

#endif
