10UCLASS(Abstract, Blueprintable, BlueprintType, EditInlineNew, DefaultToInstanced)
16 UFUNCTION(BlueprintCallable, Category =
"Flow")
17 bool StartFlow(UObject* InFlowOwner);
19 UFUNCTION(BlueprintCallable, Category =
"Flow")
22 UFUNCTION(BlueprintCallable, Category =
"Flow")
25 UFUNCTION(BlueprintPure, Category =
"Flow")
26 FORCEINLINE
bool IsRunning()
const
31 UFUNCTION(BlueprintPure, Category =
"Flow")
32 FORCEINLINE UObject* GetFlowOwner()
const
34 return FlowOwner.Get();
38 UFUNCTION(BlueprintCallable, Category =
"Flow", meta = (BlueprintProtected =
"true"))
41 virtual
void HandleFlowStarted(UObject* InFlowOwner) { }
45 UFUNCTION(BlueprintImplementableEvent, Category =
"Flow", meta = (DisplayName =
"On Flow Started"))
46 void ReceiveFlowStarted(UObject* InFlowOwner);
48 UFUNCTION(BlueprintImplementableEvent, Category = "Flow", meta = (DisplayName = "On Flow
Finished"))
49 void ReceiveFlowFinished();
51 UFUNCTION(BlueprintImplementableEvent, Category = "Flow", meta = (DisplayName = "On Flow Reset"))
52 void ReceiveFlowReset();
56 TWeakObjectPtr<UObject> FlowOwner;
59 bool bIsRunning = false;