Microsoft-3D-Movie-Maker/kauai/SRC/SNDAM.H
2022-05-03 16:31:19 -07:00

77 lines
1.5 KiB
C++

/* Copyright (c) Microsoft Corporation.
Licensed under the MIT License. */
/* Copyright (c) Microsoft Corporation.
Licensed under the MIT License. */
/***************************************************************************
Author: ShonK
Project: Kauai
Copyright (c) Microsoft Corporation
Audioman sound support. Contains the audioman sound sink, audioman
channel and audioman cached sound classes.
***************************************************************************/
#ifndef SNDAM_H
#define SNDAM_H
// allowable formats for the audioman device
// WARNING: code assumes that (kwav*16 - kwav*8) is constant!
enum
{
kwav11M8,
kwav22M8,
kwav44M8,
kwav11S8,
kwav22S8,
kwav44S8,
kwav11M16,
kwav22M16,
kwav44M16,
kwav11S16,
kwav22S16,
kwav44S16,
kwavLim
};
/***************************************************************************
Audioman sound device class.
***************************************************************************/
typedef class SDAM *PSDAM;
#define SDAM_PAR SNDMQ
#define kclsSDAM 'SDAM'
class SDAM : public SDAM_PAR
{
RTCLASS_DEC
ASSERT
protected:
ulong _luVolSys;
long _vlm;
bool _fAudioManInited: 1;
SDAM(void);
virtual bool _FInit(long wav);
// inherited methods
virtual PSNQUE _PsnqueNew(void);
virtual void _Suspend(bool fSuspend);
public:
static long vcbMaxMemWave;
static PSDAM PsdamNew(long wav);
~SDAM(void);
virtual void SetVlm(long vlm);
virtual long VlmCur(void);
virtual void BeginSynch(void);
virtual void EndSynch(void);
};
#endif //!SNDAM_H