123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- #pragma once
- #include "Serialization/BulkData.h"
- #include "UObject/Object.h"
- #include "AkAudioType.h"
- #include "AkDeprecated.generated.h"
- UCLASS()
- class AKAUDIO_API UAkAssetData : public UObject
- {
- GENERATED_BODY()
- FByteBulkData Data;
- void Serialize(FArchive& Ar) override
- {
- Super::Serialize(Ar);
- Data.Serialize(Ar, this);
- }
- };
- UCLASS()
- class AKAUDIO_API UAkAssetPlatformData : public UObject
- {
- GENERATED_BODY()
- #if WITH_EDITORONLY_DATA
- UPROPERTY(transient, VisibleAnywhere, Category = "UAkAssetData")
- TMap<FString, UAkAssetData*> AssetDataPerPlatform;
- #endif
- UPROPERTY(transient)
- UAkAssetData* CurrentAssetData = nullptr;
- void Serialize(FArchive& Ar) override
- {
- Super::Serialize(Ar);
- #if WITH_EDITORONLY_DATA
- Ar << AssetDataPerPlatform;
- #endif
- }
- };
- struct AKAUDIO_API FAkMediaDataChunk
- {
- FByteBulkData Data;
- bool IsPrefetch = false;
- void Serialize(FArchive& Ar, UObject* Owner)
- {
- Ar << IsPrefetch;
- Data.Serialize(Ar, Owner);
- }
- };
- UCLASS()
- class AKAUDIO_API UAkMediaAssetData : public UObject
- {
- GENERATED_BODY()
- TIndirectArray<FAkMediaDataChunk> DataChunks;
- void Serialize(FArchive& Ar) override
- {
- Super::Serialize(Ar);
- int32 numChunks = DataChunks.Num();
- Ar << numChunks;
- if (Ar.IsLoading())
- {
- DataChunks.Empty();
- for (int32 i = 0; i < numChunks; ++i)
- {
- DataChunks.Add(new FAkMediaDataChunk());
- }
- }
- for (int32 i = 0; i < numChunks; ++i)
- {
- DataChunks[i].Serialize(Ar, this);
- }
- }
- };
- UCLASS()
- class AKAUDIO_API UAkMediaAsset : public UObject
- {
- GENERATED_BODY()
- UPROPERTY(transient, VisibleAnywhere, Category = "AkMediaAsset")
- TMap<FString, UAkMediaAssetData*> MediaAssetDataPerPlatform;
- void Serialize(FArchive& Ar) override
- {
- Super::Serialize(Ar);
- Ar << MediaAssetDataPerPlatform;
- }
- };
- UCLASS()
- class AKAUDIO_API UAkLocalizedMediaAsset : public UAkMediaAsset
- {
- GENERATED_BODY()
- };
- UCLASS()
- class AKAUDIO_API UAkExternalMediaAsset : public UAkMediaAsset
- {
- GENERATED_BODY()
- };
- UCLASS()
- class AKAUDIO_API UAkFolder : public UAkAudioType
- {
- GENERATED_BODY()
- #if WITH_EDITORONLY_DATA
- virtual FWwiseObjectInfo* GetInfoMutable() override { return nullptr; }
- #endif
- };
|