UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Slate::Containers::TObservableArray< InElementType > Struct Template Reference

#include <ObservableArray.h>

Public Types

using ArrayType = TArray< InElementType >
 
using SizeType = typename ArrayType::SizeType
 
using ElementType = typename ArrayType::ElementType
 
using AllocatorType = typename ArrayType::AllocatorType
 
using RangedForIteratorType = typename ArrayType::RangedForIteratorType
 
using RangedForConstIteratorType = typename ArrayType::RangedForConstIteratorType
 
using ObservableArrayChangedArgsType = TObservableArrayChangedArgs< InElementType >
 

Public Member Functions

 DECLARE_MULTICAST_DELEGATE_OneParam (FArrayChangedDelegate, ObservableArrayChangedArgsType)
 
 TObservableArray ()=default
 
 TObservableArray (const ElementType *Ptr, SizeType Count)
 
 TObservableArray (std::initializer_list< ElementType > InitList)
 
template<typename InOtherAllocatorType >
 TObservableArray (const TArray< ElementType, InOtherAllocatorType > &Other)
 
template<typename InOtherAllocatorType >
 TObservableArray (TArray< ElementType, InOtherAllocatorType > &&Other)
 
 TObservableArray (const TObservableArray &)=delete
 
TObservableArrayoperator= (const TObservableArray &)=delete
 
 TObservableArray (TObservableArray &&Other)=delete
 
TObservableArrayoperator= (TObservableArray &&Other)=delete
 
 ~TObservableArray ()
 
FArrayChangedDelegateOnArrayChanged ()
 
SizeType Add (const ElementType &Item)
 
SizeType Add (ElementType &&Item)
 
template<typename... InArgTypes>
SizeType Emplace (InArgTypes &&... Args)
 
template<typename... InArgTypes>
void EmplaceAt (SizeType Index, InArgTypes &&... Args)
 
template<typename OtherElementType >
void Append (const TObservableArray< OtherElementType > &Source)
 
template<typename OtherElementType , typename OtherAllocatorType >
void Append (const TArray< OtherElementType, OtherAllocatorType > &Source)
 
template<typename OtherElementType , typename OtherAllocator >
void Append (TArray< OtherElementType, OtherAllocator > &&Source)
 
SizeType RemoveSingle (const ElementType &Item, EAllowShrinking AllowShrinking=EAllowShrinking::Default)
 
SizeType RemoveSingle (const ElementType &Item, bool bAllowShrinking)
 
SizeType RemoveSingleSwap (const ElementType &Item, EAllowShrinking AllowShrinking=EAllowShrinking::Default)
 
SizeType RemoveSingleSwap (const ElementType &Item, bool bAllowShrinking)
 
void RemoveAt (SizeType Index, EAllowShrinking AllowShrinking=EAllowShrinking::Default)
 
template<UE::CIntegral CountType>
void RemoveAt (SizeType Index, CountType NumToRemove, EAllowShrinking AllowShrinking=EAllowShrinking::Default)
 
void RemoveAt (SizeType Index, SizeType NumToRemove, bool bAllowShrinking)
 
void RemoveAtSwap (SizeType Index, EAllowShrinking AllowShrinking=EAllowShrinking::Default)
 
template<UE::CIntegral CountType>
void RemoveAtSwap (SizeType Index, CountType NumToRemove, EAllowShrinking AllowShrinking=EAllowShrinking::Default)
 
void RemoveAtSwap (SizeType Index, SizeType NumToRemove, bool bAllowShrinking)
 
void Swap (SizeType FirstIndexToSwap, SizeType SecondIndexToSwap)
 
void Reset (SizeType NewSize=0)
 
void Reserve (SizeType Number)
 
bool IsEmpty () const
 
int32 Num () const
 
bool IsValidIndex (SizeType Index) const
 
ElementTypeoperator[] (SizeType Index)
 
const ElementTypeoperator[] (SizeType Index) const
 
ElementTypeGetData ()
 
const ElementTypeGetData () const
 
template<typename ComparisonType >
bool Contains (const ComparisonType &Item) const
 
template<typename InPredicate >
SizeType ContainsByPredicate (InPredicate Pred) const
 
SizeType Find (const ElementType &Item) const
 
template<typename InPredicate >
ElementTypeFindByPredicate (InPredicate Pred)
 
template<typename InPredicate >
const ElementTypeFindByPredicate (InPredicate Pred) const
 
template<typename InPredicate >
SizeType IndexByPredicate (InPredicate Pred) const
 
template<typename InPredicate >
SizeType IndexOfByPredicate (InPredicate Pred) const
 
template<typename InOtherAllocatorType >
bool operator== (TArray< ElementType, InOtherAllocatorType > &OtherArray) const
 
bool operator== (const TObservableArray &OtherArray) const
 
RangedForIteratorType begin ()
 
RangedForConstIteratorType begin () const
 
RangedForIteratorType end ()
 
RangedForConstIteratorType end () const
 

Friends

template<typename InOtherAllocatorType >
bool operator== (TArray< ElementType, InOtherAllocatorType > &OtherArray, const TObservableArray &Self)
 

Member Typedef Documentation

◆ AllocatorType

◆ ArrayType

◆ ElementType

◆ ObservableArrayChangedArgsType

◆ RangedForConstIteratorType

◆ RangedForIteratorType

◆ SizeType

Constructor & Destructor Documentation

◆ TObservableArray() [1/7]

template<typename InElementType >
UE::Slate::Containers::TObservableArray< InElementType >::TObservableArray ( )
default

◆ TObservableArray() [2/7]

template<typename InElementType >
UE::Slate::Containers::TObservableArray< InElementType >::TObservableArray ( const ElementType Ptr,
SizeType  Count 
)
inlineexplicit

◆ TObservableArray() [3/7]

template<typename InElementType >
UE::Slate::Containers::TObservableArray< InElementType >::TObservableArray ( std::initializer_list< ElementType InitList)
inline

◆ TObservableArray() [4/7]

◆ TObservableArray() [5/7]

◆ TObservableArray() [6/7]

◆ TObservableArray() [7/7]

◆ ~TObservableArray()

Member Function Documentation

◆ Add() [1/2]

◆ Add() [2/2]

◆ Append() [1/3]

◆ Append() [2/3]

◆ Append() [3/3]

◆ begin() [1/2]

◆ begin() [2/2]

◆ Contains()

◆ ContainsByPredicate()

template<typename InElementType >
template<typename InPredicate >
SizeType UE::Slate::Containers::TObservableArray< InElementType >::ContainsByPredicate ( InPredicate  Pred) const
inline

◆ DECLARE_MULTICAST_DELEGATE_OneParam()

◆ Emplace()

template<typename InElementType >
template<typename... InArgTypes>
SizeType UE::Slate::Containers::TObservableArray< InElementType >::Emplace ( InArgTypes &&...  Args)
inline

◆ EmplaceAt()

template<typename InElementType >
template<typename... InArgTypes>
void UE::Slate::Containers::TObservableArray< InElementType >::EmplaceAt ( SizeType  Index,
InArgTypes &&...  Args 
)
inline

◆ end() [1/2]

◆ end() [2/2]

◆ Find()

◆ FindByPredicate() [1/2]

◆ FindByPredicate() [2/2]

template<typename InElementType >
template<typename InPredicate >
const ElementType * UE::Slate::Containers::TObservableArray< InElementType >::FindByPredicate ( InPredicate  Pred) const
inline

◆ GetData() [1/2]

◆ GetData() [2/2]

◆ IndexByPredicate()

template<typename InElementType >
template<typename InPredicate >
SizeType UE::Slate::Containers::TObservableArray< InElementType >::IndexByPredicate ( InPredicate  Pred) const
inline

◆ IndexOfByPredicate()

template<typename InElementType >
template<typename InPredicate >
SizeType UE::Slate::Containers::TObservableArray< InElementType >::IndexOfByPredicate ( InPredicate  Pred) const
inline

◆ IsEmpty()

◆ IsValidIndex()

template<typename InElementType >
bool UE::Slate::Containers::TObservableArray< InElementType >::IsValidIndex ( SizeType  Index) const
inline

◆ Num()

◆ OnArrayChanged()

◆ operator=() [1/2]

◆ operator=() [2/2]

◆ operator==() [1/2]

template<typename InElementType >
bool UE::Slate::Containers::TObservableArray< InElementType >::operator== ( const TObservableArray< InElementType > &  OtherArray) const
inline

◆ operator==() [2/2]

◆ operator[]() [1/2]

◆ operator[]() [2/2]

template<typename InElementType >
const ElementType & UE::Slate::Containers::TObservableArray< InElementType >::operator[] ( SizeType  Index) const
inline

◆ RemoveAt() [1/3]

template<typename InElementType >
template<UE::CIntegral CountType>
void UE::Slate::Containers::TObservableArray< InElementType >::RemoveAt ( SizeType  Index,
CountType  NumToRemove,
EAllowShrinking  AllowShrinking = EAllowShrinking::Default 
)
inline

◆ RemoveAt() [2/3]

◆ RemoveAt() [3/3]

template<typename InElementType >
void UE::Slate::Containers::TObservableArray< InElementType >::RemoveAt ( SizeType  Index,
SizeType  NumToRemove,
bool  bAllowShrinking 
)
inline

◆ RemoveAtSwap() [1/3]

template<typename InElementType >
template<UE::CIntegral CountType>
void UE::Slate::Containers::TObservableArray< InElementType >::RemoveAtSwap ( SizeType  Index,
CountType  NumToRemove,
EAllowShrinking  AllowShrinking = EAllowShrinking::Default 
)
inline

◆ RemoveAtSwap() [2/3]

◆ RemoveAtSwap() [3/3]

template<typename InElementType >
void UE::Slate::Containers::TObservableArray< InElementType >::RemoveAtSwap ( SizeType  Index,
SizeType  NumToRemove,
bool  bAllowShrinking 
)
inline

◆ RemoveSingle() [1/2]

template<typename InElementType >
SizeType UE::Slate::Containers::TObservableArray< InElementType >::RemoveSingle ( const ElementType Item,
bool  bAllowShrinking 
)
inline

◆ RemoveSingle() [2/2]

◆ RemoveSingleSwap() [1/2]

template<typename InElementType >
SizeType UE::Slate::Containers::TObservableArray< InElementType >::RemoveSingleSwap ( const ElementType Item,
bool  bAllowShrinking 
)
inline

◆ RemoveSingleSwap() [2/2]

template<typename InElementType >
SizeType UE::Slate::Containers::TObservableArray< InElementType >::RemoveSingleSwap ( const ElementType Item,
EAllowShrinking  AllowShrinking = EAllowShrinking::Default 
)
inline

◆ Reserve()

◆ Reset()

◆ Swap()

template<typename InElementType >
void UE::Slate::Containers::TObservableArray< InElementType >::Swap ( SizeType  FirstIndexToSwap,
SizeType  SecondIndexToSwap 
)
inline

Friends And Related Symbol Documentation

◆ operator==

template<typename InElementType >
bool operator== ( TArray< ElementType, InOtherAllocatorType > &  OtherArray,
const TObservableArray< InElementType > &  Self 
)
friend

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