UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Shader::FPreshaderStack Class Reference

#include <PreshaderTypes.h>

Public Member Functions

int32 Num () const
 
void CheckEmpty () const
 
void PushValue (const FValue &InValue)
 
void PushValue (const FPreshaderValue &InValue)
 
void PushValue (const FPreshaderType &InType, TArrayView< const FValueComponent > InComponents)
 
TArrayView< FValueComponentPushEmptyValue (const FPreshaderType &InType)
 
FValueComponentPushEmptyValue (EValueType InType, int32 NumComponents)
 
FPreshaderValue PopValue ()
 
FPreshaderValue PeekValue (int32 Offset=0)
 
const FPreshaderTypePeekType ()
 
FValueComponentPeekComponents (int32 NumComponents)
 
void PopResult (FPreshaderValue &OutValue)
 
void OverrideTopType (EValueType ValueType)
 
void MergeTopTwoValues (EValueType ValueType, int32 ComponentsConsumed)
 
void AdjustComponentCount (int32 NumComponentChange)
 
void Reset ()
 

Member Function Documentation

◆ AdjustComponentCount()

void UE::Shader::FPreshaderStack::AdjustComponentCount ( int32  NumComponentChange)
inline

◆ CheckEmpty()

void UE::Shader::FPreshaderStack::CheckEmpty ( ) const
inline

◆ MergeTopTwoValues()

void UE::Shader::FPreshaderStack::MergeTopTwoValues ( EValueType  ValueType,
int32  ComponentsConsumed 
)
inline

Merge top two values (after an in place binary operation)

◆ Num()

int32 UE::Shader::FPreshaderStack::Num ( ) const
inline

◆ OverrideTopType()

void UE::Shader::FPreshaderStack::OverrideTopType ( EValueType  ValueType)
inline

Override top value type (after an in place unary operation)

◆ PeekComponents()

FValueComponent * UE::Shader::FPreshaderStack::PeekComponents ( int32  NumComponents)
inline

◆ PeekType()

const FPreshaderType & UE::Shader::FPreshaderStack::PeekType ( )
inline

Utility functions used for in-place swizzle operation

◆ PeekValue()

FPreshaderValue UE::Shader::FPreshaderStack::PeekValue ( int32  Offset = 0)

◆ PopResult()

void UE::Shader::FPreshaderStack::PopResult ( FPreshaderValue OutValue)

Pops the final result from the stack, with reduced overhead relative to PopValue – must be zero or one items left!

◆ PopValue()

FPreshaderValue UE::Shader::FPreshaderStack::PopValue ( )

Returned values are invalidated when anything is pushed onto the stack

◆ PushEmptyValue() [1/2]

TArrayView< FValueComponent > UE::Shader::FPreshaderStack::PushEmptyValue ( const FPreshaderType InType)

◆ PushEmptyValue() [2/2]

FValueComponent * UE::Shader::FPreshaderStack::PushEmptyValue ( EValueType  InType,
int32  NumComponents 
)

◆ PushValue() [1/3]

void UE::Shader::FPreshaderStack::PushValue ( const FPreshaderType InType,
TArrayView< const FValueComponent InComponents 
)

◆ PushValue() [2/3]

void UE::Shader::FPreshaderStack::PushValue ( const FPreshaderValue InValue)

◆ PushValue() [3/3]

void UE::Shader::FPreshaderStack::PushValue ( const FValue InValue)

◆ Reset()

void UE::Shader::FPreshaderStack::Reset ( )
inline

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