123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152 |
- #pragma once
- #include "Wwise/WwiseResourceLoaderImpl.h"
- #include "Wwise/WwiseResourceLoaderModule.h"
- class IWwiseSoundBankManager;
- class IWwiseExternalSourceManager;
- class IWwiseMediaManager;
- class WWISERESOURCELOADER_API FWwiseResourceLoader
- {
- public:
- using FWwiseSetLanguageFuture = TWwiseFuture<void>;
- using FWwiseSetLanguagePromise = TWwisePromise<void>;
- inline static FWwiseResourceLoader* Get()
- {
- if (auto* Module = IWwiseResourceLoaderModule::GetModule())
- {
- return Module->GetResourceLoader();
- }
- return nullptr;
- }
- static FWwiseResourceLoader* Instantiate()
- {
- if (auto* Module = IWwiseResourceLoaderModule::GetModule())
- {
- return Module->InstantiateResourceLoader();
- }
- return nullptr;
- }
- virtual bool IsEnabled() const;
- virtual void Enable();
- virtual void Disable();
- FWwiseResourceLoader();
- virtual ~FWwiseResourceLoader() {}
-
-
-
- FWwiseLanguageCookedData GetCurrentLanguage() const;
- FWwiseSharedPlatformId GetCurrentPlatform() const;
-
- virtual FString GetUnrealPath(const FName& InPath) const { return GetUnrealPath(InPath.ToString()); }
- virtual FString GetUnrealPath(const FString& InPath) const;
- virtual FName GetUnrealExternalSourcePath() const;
- virtual FString GetUnrealStagePath(const FName& InPath) const { return GetUnrealStagePath(InPath.ToString()); }
- virtual FString GetUnrealStagePath(const FString& InPath) const;
- #if WITH_EDITORONLY_DATA
- virtual FString GetUnrealGeneratedSoundBanksPath(const FName& InPath) const { return GetUnrealGeneratedSoundBanksPath(InPath.ToString()); }
- virtual FString GetUnrealGeneratedSoundBanksPath(const FString& InPath) const;
- virtual void SetUnrealGeneratedSoundBanksPath(const FDirectoryPath& DirectoryPath);
- virtual const FDirectoryPath& GetUnrealGeneratedSoundBanksPath();
- #endif
-
- virtual void SetLanguage(FWwiseLanguageCookedData InLanguage, EWwiseReloadLanguage InReloadLanguage);
- virtual void SetPlatform(const FWwiseSharedPlatformId& InPlatform);
- virtual FWwiseLoadedAuxBusPtr LoadAuxBus(const FWwiseLocalizedAuxBusCookedData& InAuxBusCookedData, const FWwiseLanguageCookedData* InLanguageOverride = nullptr);
- virtual void UnloadAuxBus(FWwiseLoadedAuxBusPtr&& InAuxBus);
- virtual FWwiseLoadedEventPtr LoadEvent(const FWwiseLocalizedEventCookedData& InEventCookedData, const FWwiseLanguageCookedData* InLanguageOverride = nullptr);
- virtual void UnloadEvent(FWwiseLoadedEventPtr&& InEvent);
- virtual FWwiseLoadedExternalSourcePtr LoadExternalSource(const FWwiseExternalSourceCookedData& InExternalSourceCookedData);
- virtual void UnloadExternalSource(FWwiseLoadedExternalSourcePtr&& InExternalSource);
- virtual FWwiseLoadedGroupValuePtr LoadGroupValue(const FWwiseGroupValueCookedData& InGroupValueCookedData);
- virtual void UnloadGroupValue(FWwiseLoadedGroupValuePtr&& InGroupValue);
- virtual FWwiseLoadedInitBankPtr LoadInitBank(const FWwiseInitBankCookedData& InInitBankCookedData);
- virtual void UnloadInitBank(FWwiseLoadedInitBankPtr&& InInitBank);
- virtual FWwiseLoadedMediaPtr LoadMedia(const FWwiseMediaCookedData& InMediaCookedData);
- virtual void UnloadMedia(FWwiseLoadedMediaPtr&& InMedia);
- virtual FWwiseLoadedShareSetPtr LoadShareSet(const FWwiseLocalizedShareSetCookedData& InShareSetCookedData, const FWwiseLanguageCookedData* InLanguageOverride = nullptr);
- virtual void UnloadShareSet(FWwiseLoadedShareSetPtr&& InShareSet);
- virtual FWwiseLoadedSoundBankPtr LoadSoundBank(const FWwiseLocalizedSoundBankCookedData& InSoundBankCookedData, const FWwiseLanguageCookedData* InLanguageOverride = nullptr);
- virtual void UnloadSoundBank(FWwiseLoadedSoundBankPtr&& InSoundBank);
- virtual FWwiseSetLanguageFuture SetLanguageAsync(FWwiseLanguageCookedData InLanguage, EWwiseReloadLanguage InReloadLanguage);
- virtual FWwiseLoadedAuxBusFuture LoadAuxBusAsync(const FWwiseLocalizedAuxBusCookedData& InAuxBusCookedData, const FWwiseLanguageCookedData* InLanguageOverride = nullptr);
- virtual FWwiseResourceUnloadFuture UnloadAuxBusAsync(FWwiseLoadedAuxBusFuture&& InAuxBus);
- virtual FWwiseLoadedEventFuture LoadEventAsync(const FWwiseLocalizedEventCookedData& InEventCookedData, const FWwiseLanguageCookedData* InLanguageOverride = nullptr);
- virtual FWwiseResourceUnloadFuture UnloadEventAsync(FWwiseLoadedEventFuture&& InEvent);
- virtual FWwiseLoadedExternalSourceFuture LoadExternalSourceAsync(const FWwiseExternalSourceCookedData& InExternalSourceCookedData);
- virtual FWwiseResourceUnloadFuture UnloadExternalSourceAsync(FWwiseLoadedExternalSourceFuture&& InExternalSource);
- virtual FWwiseLoadedGroupValueFuture LoadGroupValueAsync(const FWwiseGroupValueCookedData& InGroupValueCookedData);
- virtual FWwiseResourceUnloadFuture UnloadGroupValueAsync(FWwiseLoadedGroupValueFuture&& InGroupValue);
- virtual FWwiseLoadedInitBankFuture LoadInitBankAsync(const FWwiseInitBankCookedData& InInitBankCookedData);
- virtual FWwiseResourceUnloadFuture UnloadInitBankAsync(FWwiseLoadedInitBankFuture&& InInitBank);
- virtual FWwiseLoadedMediaFuture LoadMediaAsync(const FWwiseMediaCookedData& InMediaCookedData);
- virtual FWwiseResourceUnloadFuture UnloadMediaAsync(FWwiseLoadedMediaFuture&& InMedia);
- virtual FWwiseLoadedShareSetFuture LoadShareSetAsync(const FWwiseLocalizedShareSetCookedData& InShareSetCookedData, const FWwiseLanguageCookedData* InLanguageOverride = nullptr);
- virtual FWwiseResourceUnloadFuture UnloadShareSetAsync(FWwiseLoadedShareSetFuture&& InShareSet);
- virtual FWwiseLoadedSoundBankFuture LoadSoundBankAsync(const FWwiseLocalizedSoundBankCookedData& InSoundBankCookedData, const FWwiseLanguageCookedData* InLanguageOverride = nullptr);
- virtual FWwiseResourceUnloadFuture UnloadSoundBankAsync(FWwiseLoadedSoundBankFuture&& InSoundBank);
- virtual FWwiseSharedPlatformId SystemPlatform() const;
- virtual FWwiseLanguageCookedData SystemLanguage() const;
- TUniquePtr<FWwiseResourceLoaderImpl> ResourceLoaderImpl;
- };
|