Files
Client/Engine/SoundLib/StreamingSound3D.h
LGram16 e067522598 Initial commit: ROW Client source code
Game client codebase including:
- CharacterActionControl: Character and creature management
- GlobalScript: Network, items, skills, quests, utilities
- RYLClient: Main client application with GUI and event handlers
- Engine: 3D rendering engine (RYLGL)
- MemoryManager: Custom memory allocation
- Library: Third-party dependencies (DirectX, boost, etc.)
- Tools: Development utilities

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:24:34 +09:00

68 lines
2.1 KiB
C++

// StreamingSound3D.h: interface for the CStreamingSound3D class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_STREAMINGSOUND3D_H__2504463D_A560_4075_AD7C_14975B160E69__INCLUDED_)
#define AFX_STREAMINGSOUND3D_H__2504463D_A560_4075_AD7C_14975B160E69__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <dsound.h>
class CStreamingSound;
class COggLoader;
class CStreamingSound3D
{
protected:
CStreamingSound* m_pStreamingSound;
LPDIRECTSOUND3DBUFFER8 m_pDS3DBuffer;
DS3DBUFFER m_Prop;
public:
CStreamingSound3D();
virtual ~CStreamingSound3D();
bool Create( char* strFileName );
void Destroy();
void ServiceBuffer() { m_pStreamingSound->ServiceBuffer(); };
void Play() { m_pStreamingSound->Play(); };
void Stop() { m_pStreamingSound->Stop(); };
HRESULT Reset() { return m_pStreamingSound->Reset(); };
bool IsPlaying() { return m_pStreamingSound->m_bPlaying; };
DWORD GetBufferSize() { return m_pStreamingSound->m_dwDSBufferSize; };
void SetLooping( bool bLoop ) { m_pStreamingSound->SetLooping(bLoop); };
bool IsLooping() { return m_pStreamingSound->IsLooping(); };
void SetVolume( float fVol ) { m_pStreamingSound->SetVolume(fVol); };
void GetVolume( float& fVol ) { m_pStreamingSound->GetVolume(fVol); };
//3D Property
void SetPosition(D3DVECTOR& vPos);
void GetPosition(D3DVECTOR& vPos);
void SetVelocity(const D3DVECTOR& vVel);
void GetVelocity(D3DVECTOR& vVel);
void SetMaxDistance(float fMaxDist);
void GetMaxDistance(float& fMaxDist);
void SetMinDistance(float fMinDist);
void GetMinDistance(float& fMinDist);
void SetConeAngles(DWORD dwInside, DWORD dwOutside);
void GetConeAngles(DWORD& dwInside, DWORD& dwOutside);
void SetConeOrientation(D3DVECTOR& vOrientation);
void GetConeOrientation(D3DVECTOR& vOrientation);
void SetConeOutsideVolume(float fVolume);
void GetConeOutsideVolume(float& fVolume);
void SetMode(DWORD dwMode);
void GetMode(DWORD& dwMode);
};
#endif // !defined(AFX_STREAMINGSOUND3D_H__2504463D_A560_4075_AD7C_14975B160E69__INCLUDED_)