Files
Client/GameTools/SoundLib/StreamBuffer.h
LGram16 dd97ddec92 Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code:
- Client: Game client source (moved to Client/Client/)
- Server: Game server source
- GameTools: Development tools
- CryptoSource: Encryption utilities
- database: Database scripts
- Script: Game scripts
- rylCoder_16.02.2008_src: Legacy coder tools
- GMFont, Game: Additional resources

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 20:17:20 +09:00

46 lines
1.4 KiB
C++

#ifndef _StreamBuffer_H_
#define _StreamBuffer_H_
#include "SoundBuffer.h"
/////////////////////////////////////////////////////////////////////////////////////////
//
class CStreamBuffer : public CSoundBuffer
{
protected:
DWORD m_dwLastPlayPos;
DWORD m_dwPlayProgress;
DWORD m_dwNotifySize;
DWORD m_dwNextWriteOffset;
HANDLE m_hNotificationEvent;
bool m_bFillNextNotificationWithSilence;
bool m_bLoopPlay;
private:
CStreamBuffer( const CStreamBuffer & ); //사용하지 못하도록 막아놨음.
CStreamBuffer & operator=( const CStreamBuffer & );
public:
CStreamBuffer();
CStreamBuffer( IDirectSound8 *, ISoundFile *, bool b3DSound, DWORD dwNumBuffers = 10 );
CStreamBuffer( IDirectSound8 *, const char *, bool b3DSound, DWORD dwNumBuffers = 10 );
~CStreamBuffer();
void Create( IDirectSound8 *, ISoundFile *, bool b3DSound, DWORD dwNumBuffers = 10, DWORD dwAddFlag = 0 );
void Create( IDirectSound8 *, const char *, bool b3DSound, DWORD dwNumBuffers = 10, DWORD dwAddFlag = 0 );
void Destroy();
int Play( bool bLoop );
void Play( DWORD dwIndex, bool bLoop );
void Reset( unsigned );
void ResetAll();
HANDLE GetEventNotify() { return m_hNotificationEvent; }
void HandleNotification();
eSndObjType GetType() { return SNDOBJTYPE_STREAMBUFFER; }
};
/////////////////////////////////////////////////////////////////////////////////////////
#endif