1#ifndef NW_SND_SOUND_ARCHIVE_LOADER_H_
2#define NW_SND_SOUND_ARCHIVE_LOADER_H_
4#include <nw/snd/snd_Util.h>
5#include <nw/snd/snd_SoundArchive.h>
7namespace nw {
namespace snd {
68 size_t loadBlockSize = 0
71 const char* pItemName,
74 size_t loadBlockSize = 0
116 size_t loadBlockSize,
156 size_t loadBlockSize,
157 bool needDeviceMemory =
false
164 size_t loadBlockSize = 0
168 const void* pGroupFile,
170 size_t loadBlockSize = 0
183 size_t loadBlockSize,
184 bool needDeviceMemory
Definition snd_SoundArchive.h:11
ItemId FileId
Definition snd_SoundArchive.h:17
static const ItemId INVALID_ID
Definition snd_SoundArchive.h:15
u32 ItemId
Definition snd_SoundArchive.h:13
Definition snd_SoundMemoryAllocatable.h:9
Definition snd_SoundArchiveLoader.h:27
void SetWaveArchiveTableInEmbeddedGroupImpl(SoundArchive::ItemId warcId, SoundMemoryAllocatable *pAllocator)
void * LoadFile(SoundArchive::FileId fileId, SoundMemoryAllocatable *allocator, size_t loadBlockSize, bool needDeviceMemory)
bool IsGroupDataLoaded(SoundArchive::ItemId itemId) const
static const u32 FILE_ALIGNMENT
Definition snd_SoundArchiveLoader.h:31
u16 m_LoadDataCallCount
Definition snd_SoundArchiveLoader.h:202
bool m_IsCancelLoading
Definition snd_SoundArchiveLoader.h:203
const void * LoadImpl(SoundArchive::FileId fileId, SoundMemoryAllocatable *pAllocator, size_t loadBlockSize, bool needDeviceMemory=false)
bool IsSoundGroupDataLoaded(SoundArchive::ItemId itemId, u32 loadFlag) const
bool LoadIndividualWave(SoundArchive::ItemId warcId, u32 waveIndex, SoundMemoryAllocatable *pAllocator, size_t loadBlockSize)
bool detail_LoadWaveArchiveByWaveSoundFile(const void *wsdFile, s32 waveSoundIndex, SoundMemoryAllocatable *pAllocator)
void SetSoundArchive(const SoundArchive *arc)
bool detail_LoadWaveArchiveByBankFile(const void *bankFile, SoundMemoryAllocatable *pAllocator)
const void * LoadWaveArchiveTable(SoundArchive::ItemId warcId, SoundMemoryAllocatable *pAllocator, size_t loadBlockSize)
bool LoadData(const char *pItemName, SoundMemoryAllocatable *pAllocator, u32 loadFlag=LOAD_ALL, size_t loadBlockSize=0)
bool IsDataLoaded(const char *pItemName, u32 loadFlag=LOAD_ALL) const
bool LoadBank(SoundArchive::ItemId bankId, SoundMemoryAllocatable *pAllocator, u32 loadFlag, size_t loadBlockSize)
bool LoadData(SoundArchive::ItemId id, SoundMemoryAllocatable *pAllocator, u32 loadFlag=LOAD_ALL, size_t loadBlockSize=0)
bool LoadWaveArchive(SoundArchive::ItemId warcId, SoundMemoryAllocatable *pAllocator, u32 loadFlag, size_t loadBlockSize)
bool IsDataLoaded(SoundArchive::ItemId itemId, u32 loadFlag=LOAD_ALL) const
bool IsWaveArchiveDataLoaded(SoundArchive::ItemId itemId, u32 waveIndex) const
const void * detail_GetFileAddressByItemId(SoundArchive::ItemId itemId) const
LoadFlag
Definition snd_SoundArchiveLoader.h:50
@ LOAD_ALL
Definition snd_SoundArchiveLoader.h:56
@ LOAD_SEQ
Definition snd_SoundArchiveLoader.h:51
@ LOAD_WSD
Definition snd_SoundArchiveLoader.h:52
@ LOAD_BANK
Definition snd_SoundArchiveLoader.h:53
@ LOAD_WARC
Definition snd_SoundArchiveLoader.h:54
virtual const void * SetFileAddressToTable(SoundArchive::FileId fileId, const void *address)=0
bool IsSequenceSoundDataLoaded(SoundArchive::ItemId itemId, u32 loadFlag) const
void SetWaveArchiveTableWithBankInEmbeddedGroup(SoundArchive::ItemId bankId, SoundMemoryAllocatable *pAllocator)
virtual const void * GetFileAddressFromTable(SoundArchive::FileId fileId) const =0
bool LoadGroup(SoundArchive::ItemId groupId, SoundMemoryAllocatable *pAllocator, size_t loadBlockSize)
const SoundArchive * m_pSoundArchive
Definition snd_SoundArchiveLoader.h:199
bool IsWaveSoundDataLoaded(SoundArchive::ItemId itemId, u32 loadFlag) const
const void * GetFileAddressFromSoundArchive(SoundArchive::FileId fileId) const
const SoundArchive * GetSoundArchive() const
Definition snd_SoundArchiveLoader.h:97
bool LoadSequenceSound(SoundArchive::ItemId soundId, SoundMemoryAllocatable *pAllocator, u32 loadFlag, size_t loadBlockSize)
static const u32 SIGNATURE_INDIVIDUAL_WAVE
Definition snd_SoundArchiveLoader.h:29
u32 m_StreamArea[128]
Definition snd_SoundArchiveLoader.h:200
virtual ~SoundArchiveLoader()
bool IsBankDataLoaded(SoundArchive::ItemId itemId, u32 loadFlag) const
bool LoadWaveSound(SoundArchive::ItemId soundId, SoundMemoryAllocatable *pAllocator, u32 loadFlag, size_t loadBlockSize, SoundArchive::ItemId waveSoundSetId=SoundArchive::INVALID_ID)
bool LoadWaveArchiveImpl(SoundArchive::ItemId warcId, u32 waveIndex, SoundMemoryAllocatable *pAllocator, u32 loadFlag, size_t loadBlockSize=0)
void SetWaveArchiveTableWithWsdInEmbeddedGroup(SoundArchive::ItemId wsdId, SoundMemoryAllocatable *pAllocator)
virtual const void * GetFileAddressImpl(SoundArchive::FileId fileId) const =0
bool LoadSoundGroup(SoundArchive::ItemId soundGroupId, SoundMemoryAllocatable *pAllocator, u32 loadFlag, size_t loadBlockSize)
s32 ReadFile(SoundArchive::FileId fileId, void *buffer, size_t size, s32 offset, size_t loadBlockSize)
void SetWaveArchiveTableWithSeqInEmbeddedGroup(SoundArchive::ItemId seqId, SoundMemoryAllocatable *pAllocator)
bool PostProcessForLoadedGroupFile(const void *pGroupFile, SoundMemoryAllocatable *pAllocator=NULL, size_t loadBlockSize=0)
Definition snd_BasicSound.cpp:3
Definition snd_BasicSound.cpp:3
Definition snd_SoundArchiveLoader.h:14
nw::snd::SoundArchive::ItemId itemId
Definition snd_SoundArchiveLoader.h:15
const void * address
Definition snd_SoundArchiveLoader.h:16
LoadItemInfo()
Definition snd_SoundArchiveLoader.h:18
Definition snd_SoundArchiveLoader.h:34
u32 signature
Definition snd_SoundArchiveLoader.h:35
u8 padding[SoundArchiveLoader::FILE_ALIGNMENT - sizeof(u32) *3]
Definition snd_SoundArchiveLoader.h:38
IndividualWaveInfo(u32 id, u32 index)
Definition snd_SoundArchiveLoader.h:40
u32 fileId
Definition snd_SoundArchiveLoader.h:36
u32 waveIndex
Definition snd_SoundArchiveLoader.h:37