UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FSlateCachedElementData Struct Reference

#include <DrawElements.h>

Public Member Functions

void Empty ()
 
FSlateCachedElementsHandle AddCache (const SWidget *Widget)
 
SLATECORE_API void ValidateWidgetOwner (TSharedPtr< FSlateCachedElementList > List, const SWidget *CurrentWidget)
 
template<EElementType ElementType>
TSlateDrawElement< ElementType > & AddCachedElement (FSlateCachedElementsHandle &CacheHandle, const FSlateClippingManager &ParentClipManager, const SWidget *CurrentWidget)
 
FSlateRenderBatchAddCachedRenderBatch (FSlateRenderBatch &&NewBatch, int32 &OutIndex)
 
void RemoveCachedRenderBatches (const TArray< int32 > &CachedRenderBatchIndices)
 
FSlateCachedClipStateFindOrAddCachedClipState (const FSlateClippingState *RefClipState)
 
void CleanupUnusedClipStates ()
 
const TSparseArray< FSlateRenderBatch > & GetCachedBatches () const
 
const TArray< TSharedPtr< FSlateCachedElementList > > & GetCachedElementLists () const
 
void AddReferencedObjects (FReferenceCollector &Collector)
 
TArrayView< FSlateCachedElementList *const > GetListsWithNewData () const
 

Static Public Member Functions

static const FSlateClippingStateGetClipStateFromParent (const FSlateClippingManager &ParentClipManager)
 

Friends

class FSlateElementBatcher
 
struct FSlateCachedElementsHandle
 

Detailed Description

Top level class responsible for cached elements within a particular invalidation root. Equivalent to the plain FSlateBatchData in that it manages multiple renderbatches, element lists (Per widget), & new element lists (Per invalidated widgets).

Note: Just as each window may have multiple invalidation roots, each window element list may have multiple 'FSlateCachedElementData' for each root

Member Function Documentation

◆ AddCache()

FSlateCachedElementsHandle FSlateCachedElementData::AddCache ( const SWidget Widget)

Create a new CachedElementList, occurs when adding a cached element whose top level draw widget is not already part of some cache

◆ AddCachedElement()

template<EElementType ElementType>
TSlateDrawElement< ElementType > & FSlateCachedElementData::AddCachedElement ( FSlateCachedElementsHandle CacheHandle,
const FSlateClippingManager ParentClipManager,
const SWidget CurrentWidget 
)
inline

◆ AddCachedRenderBatch()

FSlateRenderBatch & FSlateCachedElementData::AddCachedRenderBatch ( FSlateRenderBatch &&  NewBatch,
int32 OutIndex 
)

◆ AddReferencedObjects()

void FSlateCachedElementData::AddReferencedObjects ( FReferenceCollector Collector)

◆ CleanupUnusedClipStates()

void FSlateCachedElementData::CleanupUnusedClipStates ( )

◆ Empty()

void FSlateCachedElementData::Empty ( )

Reset all cached data, except num elements, call EmptyCachedNumElements for that

◆ FindOrAddCachedClipState()

FSlateCachedClipState & FSlateCachedElementData::FindOrAddCachedClipState ( const FSlateClippingState RefClipState)

◆ GetCachedBatches()

const TSparseArray< FSlateRenderBatch > & FSlateCachedElementData::GetCachedBatches ( ) const
inline

◆ GetCachedElementLists()

const TArray< TSharedPtr< FSlateCachedElementList > > & FSlateCachedElementData::GetCachedElementLists ( ) const
inline

◆ GetClipStateFromParent()

const FSlateClippingState * FSlateCachedElementData::GetClipStateFromParent ( const FSlateClippingManager ParentClipManager)
static

◆ GetListsWithNewData()

TArrayView< FSlateCachedElementList *const > FSlateCachedElementData::GetListsWithNewData ( ) const
inline

◆ RemoveCachedRenderBatches()

void FSlateCachedElementData::RemoveCachedRenderBatches ( const TArray< int32 > &  CachedRenderBatchIndices)

◆ ValidateWidgetOwner()

void FSlateCachedElementData::ValidateWidgetOwner ( TSharedPtr< FSlateCachedElementList List,
const SWidget CurrentWidget 
)

Friends And Related Symbol Documentation

◆ FSlateCachedElementsHandle

◆ FSlateElementBatcher


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