123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- /*******************************************************************************
- The content of this file includes portions of the proprietary AUDIOKINETIC Wwise
- Technology released in source code form as part of the game integration package.
- The content of this file may not be used without valid licenses to the
- AUDIOKINETIC Wwise Technology.
- Note that the use of the game engine is subject to the Unreal(R) Engine End User
- License Agreement at https://www.unrealengine.com/en-US/eula/unreal
-
- License Usage
-
- Licensees holding valid licenses to the AUDIOKINETIC Wwise Technology may use
- this file in accordance with the end user license agreement provided with the
- software or, alternatively, in accordance with the terms contained
- in a written agreement between you and Audiokinetic Inc.
- Copyright (c) 2023 Audiokinetic Inc.
- *******************************************************************************/
- #pragma once
- #include "AkInclude.h"
- #include "AkUnrealHelper.generated.h"
- namespace AkUnrealHelper
- {
- template <typename T>
- struct TMallocDelete
- {
- DECLARE_INLINE_TYPE_LAYOUT(TMallocDelete, NonVirtual);
- TMallocDelete() = default;
- TMallocDelete(const TMallocDelete&) = default;
- TMallocDelete& operator=(const TMallocDelete&) = default;
- ~TMallocDelete() = default;
- template <
- typename U,
- typename = decltype(ImplicitConv<T*>((U*)nullptr))
- >
- TMallocDelete(const TMallocDelete<U>&)
- {
- }
- template <
- typename U,
- typename = decltype(ImplicitConv<T*>((U*)nullptr))
- >
- TMallocDelete& operator=(const TMallocDelete<U>&)
- {
- return *this;
- }
- void operator()(T* Ptr) const
- {
- FMemory::Free(Ptr);
- }
- };
- WWISESOUNDENGINE_API void SetHelperFunctions(
- FString(*GetWwisePluginDirectoryImpl)(),
- FString(*GetWwiseProjectPathImpl)(),
- FString(*GetSoundBankDirectoryImpl)(),
- FString(*GetStagePathImpl)()
- );
- WWISESOUNDENGINE_API FString GetWwisePluginDirectory();
- WWISESOUNDENGINE_API FString GetWwiseProjectPath();
- WWISESOUNDENGINE_API FString GetSoundBankDirectory();
- WWISESOUNDENGINE_API void TrimPath(FString& Path);
- WWISESOUNDENGINE_API FString GetProjectDirectory();
- WWISESOUNDENGINE_API FString GetThirdPartyDirectory();
- WWISESOUNDENGINE_API FString GetContentDirectory();
- WWISESOUNDENGINE_API FString GetExternalSourceDirectory();
- WWISESOUNDENGINE_API FString GetWwiseProjectDirectoryPath();
- WWISESOUNDENGINE_API FString GetWwiseSoundBankInfoCachePath();
- WWISESOUNDENGINE_API FString FormatFolderPath(FString folderPath);
- WWISESOUNDENGINE_API bool MakePathRelativeToWwiseProject(FString& AbsolutePath);
- WWISESOUNDENGINE_API const TCHAR* GetResultString(AKRESULT InResult);
- extern WWISESOUNDENGINE_API const TCHAR* MediaFolderName;
- extern WWISESOUNDENGINE_API const FGuid InitBankID;
- #if WITH_EDITOR
- WWISESOUNDENGINE_API FString GuidToBankName(const FGuid& Guid);
- WWISESOUNDENGINE_API FGuid BankNameToGuid(const FString& BankName);
- #endif
- }
- USTRUCT(BlueprintType, Meta = (Category = "Wwise|Types", DisplayName = "AkUint64"))
- struct FAkUInt64Wrapper
- {
- GENERATED_BODY()
- public:
- UPROPERTY(EditAnywhere, Category = "Value", DisplayName = "UInt64 Value")
- uint64 UInt64Value = 0;
- };
- USTRUCT(BlueprintType, Meta = (Category = "Wwise|Types", DisplayName = "AkUInt32"))
- struct FAkUInt32Wrapper
- {
- GENERATED_BODY()
- public:
- UPROPERTY(EditAnywhere, Category = "Value", DisplayName = "UInt32 Value")
- uint32 UInt32Value = 0;
- };
- USTRUCT(BlueprintType, Meta = (Category = "Wwise|Types", DisplayName = "AkOutputDeviceID"))
- struct FAkOutputDeviceID : public FAkUInt64Wrapper
- {
- GENERATED_BODY()
- };
- USTRUCT(BlueprintType, Meta = (Category = "Wwise|Types", DisplayName = "AkUniqueID"))
- struct FAkUniqueID : public FAkUInt32Wrapper
- {
- GENERATED_BODY()
- };
|