UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FTextureStreamOut Class Reference

#include <TextureStreamOut.h>

+ Inheritance diagram for FTextureStreamOut:

Public Member Functions

 FTextureStreamOut (const UTexture *InTexture, FTextureMipAllocator *InMipAllocator)
 
 ~FTextureStreamOut ()
 
void AllocateNewMips (const FContext &Context)
 
void UploadNewMips (const FContext &Context)
 
void FinalizeNewMips (const FContext &Context)
 
void Cancel (const FContext &Context)
 
- Public Member Functions inherited from TRenderAssetUpdate< FTextureUpdateContext >
 TRenderAssetUpdate (const UStreamableRenderAsset *InAsset)
 
void PushTask (const FContext &Context, EThreadType InTaskThread, const FCallback &InTaskCallback, EThreadType InCancelationThread, const FCallback &InCancelationCallback)
 
EThreadType GetRelevantThread () const final override
 
- Public Member Functions inherited from FRenderAssetUpdate
UE_API FRenderAssetUpdate (const UStreamableRenderAsset *InAsset)
 
UE_API void Tick (EThreadType InCurrentThread)
 
bool IsCompleted () const
 
virtual void Abort ()
 
virtual bool CanAbandon () const
 
virtual void OnAbandoned ()
 
bool IsCancelled () const
 
bool IsSuccessfullyFinished () const
 
UE_API ETaskState DoLock ()
 
UE_API void DoUnlock (ETaskState PreviousTaskState)
 
bool IsLocked () const
 
FReturnedRefCountValue AddRef () const final override
 
UE_API uint32 Release () const final override
 
uint32 GetRefCount () const final override
 
- Public Member Functions inherited from IRefCountedObject
virtual ~IRefCountedObject ()
 

Protected Member Functions

bool DoAllocateNewMips (const FContext &Context)
 
bool DoUploadNewMips (const FContext &Context)
 
bool DoFinalizeNewMips (const FContext &Context)
 
EThreadType GetMipAllocatorThread (FTextureMipAllocator::ETickState TickState) const
 
EThreadType GetCancelThread () const
 
- Protected Member Functions inherited from TRenderAssetUpdate< FTextureUpdateContext >
ETaskState TickInternal (EThreadType InCurrentThread, bool bCheckForSuspension) final override
 
void ClearCallbacks ()
 
- Protected Member Functions inherited from FRenderAssetUpdate
virtual UE_API ~FRenderAssetUpdate ()
 
void MarkAsCancelled ()
 
void MarkAsSuccessfullyFinished ()
 
UE_API void ScheduleGTTask ()
 
UE_API void ScheduleRenderTask ()
 
UE_API void ScheduleAsyncTask ()
 

Protected Attributes

TUniquePtr< FTextureMipAllocatorMipAllocator
 
FTextureUpdateSyncOptions SyncOptions
 
- Protected Attributes inherited from TRenderAssetUpdate< FTextureUpdateContext >
EThreadType TaskThread
 
FCallback TaskCallback
 
EThreadType CancelationThread
 
FCallback CancelationCallback
 
- Protected Attributes inherited from FRenderAssetUpdate
const FStreamableRenderResourceState ResourceState
 
const int32 CurrentFirstLODIdx = INDEX_NONE
 
const int32 PendingFirstLODIdx = INDEX_NONE
 
FCriticalSection CS
 
int32 ScheduledGTTasks
 
int32 ScheduledRenderTasks
 
int32 ScheduledAsyncTasks
 
const UStreamableRenderAssetStreamableAsset = nullptr
 
FThreadSafeCounter TaskSynchronization
 
bool bIsCancelled
 
bool bDeferExecution
 
bool bSuccess
 
volatile ETaskState TaskState
 

Additional Inherited Members

- Public Types inherited from TRenderAssetUpdate< FTextureUpdateContext >
typedef FTextureUpdateContext FContext
 
typedef TFunction< void(const FContext &Context)> FCallback
 
- Public Types inherited from FRenderAssetUpdate
enum  EThreadType {
  TT_None , TT_Render , TT_Async , TT_GameThread ,
  TT_GameRunningAsync
}
 
enum  ETaskState {
  TS_Done , TS_Suspended , TS_InProgress , TS_Locked ,
  TS_Init
}
 
- Protected Types inherited from FRenderAssetUpdate
typedef FAutoDeleteAsyncTask< FMipUpdateTaskFAsyncMipUpdateTask
 

Detailed Description

FTextureStreamOut implements a generic framework to stream out using FTextureMipAllocator.

Constructor & Destructor Documentation

◆ FTextureStreamOut()

FTextureStreamOut::FTextureStreamOut ( const UTexture InTexture,
FTextureMipAllocator InMipAllocator 
)

◆ ~FTextureStreamOut()

FTextureStreamOut::~FTextureStreamOut ( )

Member Function Documentation

◆ AllocateNewMips()

void FTextureStreamOut::AllocateNewMips ( const FContext Context)

◆ Cancel()

void FTextureStreamOut::Cancel ( const FContext Context)

◆ DoAllocateNewMips()

bool FTextureStreamOut::DoAllocateNewMips ( const FContext Context)
protected

◆ DoFinalizeNewMips()

bool FTextureStreamOut::DoFinalizeNewMips ( const FContext Context)
protected

◆ DoUploadNewMips()

bool FTextureStreamOut::DoUploadNewMips ( const FContext Context)
protected

◆ FinalizeNewMips()

void FTextureStreamOut::FinalizeNewMips ( const FContext Context)

Release the mip allocator.

◆ GetCancelThread()

FRenderAssetUpdate::EThreadType FTextureStreamOut::GetCancelThread ( ) const
protected

◆ GetMipAllocatorThread()

FRenderAssetUpdate::EThreadType FTextureStreamOut::GetMipAllocatorThread ( FTextureMipAllocator::ETickState  TickState) const
protected

◆ UploadNewMips()

void FTextureStreamOut::UploadNewMips ( const FContext Context)

Member Data Documentation

◆ MipAllocator

TUniquePtr<FTextureMipAllocator> FTextureStreamOut::MipAllocator
protected

◆ SyncOptions

FTextureUpdateSyncOptions FTextureStreamOut::SyncOptions
protected

The documentation for this class was generated from the following files: