Navigation
Unreal Engine C++ API Reference > Editor > KismetCompiler
References
Module | KismetCompiler |
Header | /Engine/Source/Editor/KismetCompiler/Public/KismetCompilerMisc.h |
Include | #include "KismetCompilerMisc.h" |
Syntax
class FKismetCompilerUtilities
Remarks
This is a loose collection of utilities used when 'compiling' a new UClass from a K2 graph.
Functions
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
bool | CheckFunctionCompiledStatementsThreadSafety
(
const UEdGraphNode* InNode, |
Helper function used by CheckFunctionThreadSafety. Split out to allow the ability to examine individual compiled statement lists (e.g. for the ubergraph) |
![]() ![]() |
bool | CheckFunctionThreadSafety
(
const FKismetFunctionContext& InContext, |
Check the passed-in function to verify its thread safety. This makes sure that it only uses/calls thread-safe functions/nodes. |
![]() ![]() |
FFieldVariant | CheckPropertyNameOnScope
(
UStruct* Scope, |
Checks that the property name isn't taken in the given scope (used by CreatePropertyOnScope()) |
![]() ![]() |
void | CompileDefaultProperties
(
UClass* Class |
|
![]() ![]() |
void | ConsignToOblivion
(
UClass* OldClass, |
Rename a class and it's CDO into the transient package, and clear RF_Public on both of them. |
![]() ![]() |
void | CreateObjectAssignmentStatement
(
FKismetFunctionContext& Context, |
Create Kismet assignment statement with proper object <-> interface cast |
![]() ![]() |
FProperty * | CreatePrimitiveProperty
(
FFieldVariant PropertyScope, |
Helper function for creating property for primitive types. |
![]() ![]() |
FProperty * | CreatePropertyOnScope
(
UStruct* Scope, |
Creates a property named PropertyName of type PropertyType in the Scope or returns NULL if the type is unknown, but does not link that property in |
![]() ![]() |
void | DetectValuesReturnedByRef
(
const UFunction* Func, |
Generate an error for non-const output parameters |
![]() ![]() |
ConvertibleSignatureMatchResult | DoSignaturesHaveConvertibleFloatTypes
(
const UFunction* SourceFunction, |
Similar to UFunction::IsSignatureCompatibleWith, but also checks if the function signatures are convertible. |
![]() ![]() |
FProperty * | FindNamedPropertyInScope
(
UStruct* Scope, |
Finds a property by name, starting in the specified scope, returning NULL if it's not found. |
![]() ![]() |
const UFunction * | FindOverriddenImplementableEvent
(
const FName& EventName, |
Return function, that overrides BlueprintImplementableEvent with given name in given class (super-classes are not considered) |
![]() ![]() |
FProperty * | FindPropertyInScope
(
UStruct* Scope, |
Finds a property by name, starting in the specified scope; Validates property type and returns NULL along with emitting an error if there is a mismatch. |
![]() ![]() |
TArray< TSet< UEdGraphNode * > > | FindUnsortedSeparateExecutionGroups
(
const TArray< UEdGraphNode* >& Nodes |
Find groups of nodes, that can be executed separately. |
![]() ![]() |
UEdGraphPin * | GenerateAssignmentNodes
(
FKismetCompilerContext& CompilerContext, |
Create 'set var by name' nodes and hook them up - used to set values when components are added or actor are created at run time. |
![]() ![]() |
TTuple< UEdGraphPin *, UEdGraphPin * > | GenerateBroadcastFieldNotificationNode
(
FKismetCompilerContext& CompilerContext, |
Create node to broadcast a FieldNotification value changed |
![]() ![]() |
TTuple< UEdGraphPin *, UEdGraphPin * > | GenerateFieldNotificationSetNode
(
FKismetCompilerContext& CompilerContext, |
Create node that replace regular setter and use the SetPropertyValueAndBroadcast. |
![]() ![]() |
bool | IsIntermediateFunctionGraphTrivial
(
FName FunctionName, |
|
![]() ![]() |
bool | IsMissingMemberPotentiallyLoading
(
const UBlueprint* SelfBlueprint, |
Intended to avoid errors that come from checking for external member (function, variable, etc.) dependencies. |
![]() ![]() |
bool | IsPropertyUsesFieldNotificationSetValueAndBroadcast
(
const FProperty* Property |
|
![]() ![]() |
bool | IsStatementReducible
(
EKismetCompiledStatementType StatementType |
|
![]() ![]() |
bool | IsTypeCompatibleWithProperty
(
UEdGraphPin* SourcePin, |
Tests to see if a pin is schema compatible with a property. |
![]() ![]() |
void | LinkAddedProperty
(
UStruct* Structure, |
|
![]() ![]() |
void | RemoveObjectRedirectorIfPresent
(
UObject* Package, |
|
![]() ![]() |
void | UpdateBlueprintSkeletonStubClassAfterFailedCompile
(
UBlueprint* Blueprint, |
|
![]() ![]() |
void | UpdateDependentBlueprints
(
UBlueprint* BP |
Add this BP to any BPs that it in |
![]() ![]() |
void | ValidateEnumProperties
(
const UObject* DefaultObject, |
Checks if enum variables from given object store proper indexes |
![]() ![]() |
void | ValidateProperEndExecutionPath
(
FKismetFunctionContext& Context |
Checks if each execution path ends with a Return node |
![]() ![]() |
bool | ValidateSelfCompatibility
(
const UEdGraphPin* Pin, |
Checks if the specified pin can default to self |
Constants
Name | Description |
---|---|
ConsignToOblivionCounter | Counter to ensure unique names in the transient package, to avoid GC collection issues with classes and their CDOs |