Navigation
API > API/Plugins > API/Plugins/MovieRenderPipelineCore
A Movie Pipeline Executor is responsible for executing an array of Movie Pipelines, and (optionally) reporting progress back for the movie pipelines. The entire array is passed at once to allow the implementations to choose how to split up the work. By default we provide a local execution (UMoviePipelineLocalExecutor) which works on them serially, but you can create an implementation of this class, change the default in the Project Settings and use your own distribution logic. For example, you may want to distribute the work to multiple computers over a network, which may involve running command line options on each machine to sync the latest content from the project before the execution starts.
| Name | UMoviePipelineExecutorBase |
| Type | class |
| Header File | /Engine/Plugins/MovieScene/MovieRenderPipeline/Source/MovieRenderPipelineCore/Public/MoviePipelineExecutor.h |
| Include Path | #include "MoviePipelineExecutor.h" |
Syntax
UCLASS (MinimalAPI, Blueprintable, Abstract)
class UMoviePipelineExecutorBase : public UObject
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UMoviePipelineExecutorBase
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UMoviePipelineExecutorBase() |
MoviePipelineExecutor.h |
Structs
| Name | Remarks |
|---|---|
| FOutstandingRequest |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| DebugWidgetClass | TSubclassOf< UMovieRenderDebugWidget > | Optional widget for feedback during render | MoviePipelineExecutor.h |
|
| UserData | FString | Arbitrary data that can be associated with the executor. | MoviePipelineExecutor.h |
|
| ViewportInitArgs | UE::MoviePipeline::FViewportArgs | Some global initialization args that get passed to the UMoviePipeline before the call to Initialize() | MoviePipelineExecutor.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bAnyJobHadFatalError | bool | Set automatically when the error delegate gets broadcast (if fatal). | MoviePipelineExecutor.h | |
| ExternalSocket | FSocket * | The socket connection if we currently have one. | MoviePipelineExecutor.h | |
| OnExecutorErroredDelegate | FOnMoviePipelineExecutorErrored | Called when an individual job reports a warning/error. | MoviePipelineExecutor.h |
|
| OnExecutorErroredDelegateNative | FOnMoviePipelineExecutorErroredNative | For native C++ code. Called at the same time as the Blueprint/Python one. | MoviePipelineExecutor.h | |
| OnExecutorFinishedDelegate | FOnMoviePipelineExecutorFinished | Called when the Executor has finished all jobs. | MoviePipelineExecutor.h |
|
| OnExecutorFinishedDelegateNative | FOnMoviePipelineExecutorFinishedNative | For native C++ code. Called at the same time as the Blueprint/Python one. | MoviePipelineExecutor.h | |
| OutstandingRequests | TArray< FOutstandingRequest > | MoviePipelineExecutor.h | ||
| PostRenderActionType | EMoviePipelinePostRenderActionType | The type of action that will be taken after all renders in the queue finish. | MoviePipelineExecutor.h | |
| RecvMessageData | TSharedPtr< FArrayReader, ESPMode::ThreadSafe > | Message data we're currently in the process of receiving, if any | MoviePipelineExecutor.h | |
| RecvMessageDataRemaining | int32 | The number of bytes of incoming message data we're still waiting on before we have a complete message | MoviePipelineExecutor.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void CancelAllJobs() |
Abort the currently executing job and skip all other jobs. | MoviePipelineExecutor.h |
|
void CancelCurrentJob() |
Abort the currently executing job. | MoviePipelineExecutor.h |
|
void Execute
(
UMoviePipelineQueue* InPipelineQueue |
Execute the provided Queue. | MoviePipelineExecutor.h |
|
| Get the post-render action that will be taken when all the renders in the queue finish. | MoviePipelineExecutor.h |
|
|
| Get the current status message for this job. | MoviePipelineExecutor.h |
|
|
float GetStatusProgress () |
Get the current progress as last set by SetStatusProgress. | MoviePipelineExecutor.h |
|
bool GetSupportsPostRenderActions () |
Get whether this executor supports performing a post-render action. | MoviePipelineExecutor.h |
|
bool IsRendering () |
Report the current state of the executor. | MoviePipelineExecutor.h |
|
void OnBeginFrame () |
Called once at the beginning of each engine frame. | MoviePipelineExecutor.h |
|
FOnMoviePipelineExecutorErroredNative & OnExecutorErrored() |
MoviePipelineExecutor.h | ||
FOnMoviePipelineExecutorFinishedNative & OnExecutorFinished() |
Native C++ event to listen to for when this Executor has finished. | MoviePipelineExecutor.h | |
void SetMoviePipelineClass
(
UClass* InPipelineClass |
Specify which MoviePipeline class type should be created by this executor when processing jobs. | MoviePipelineExecutor.h |
|
void SetPostRenderAction
(
const EMoviePipelinePostRenderActionType PostRenderAction |
Set the post-render action that will be taken when all the renders in the queue finish. | MoviePipelineExecutor.h |
|
void SetStatusMessage
(
const FString& InStatus |
Set the status of this Executor. | MoviePipelineExecutor.h |
|
void SetStatusProgress
(
const float InProgress |
Set the progress of this Executor. | MoviePipelineExecutor.h |
|
void SetViewportInitArgs
(
const UE::MoviePipeline::FViewportArgs& InArgs |
MoviePipelineExecutor.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool ConnectSocket
(
const FString& InHostName, |
Attempts to connect a socket to the specified host and port. This is a blocking call. | MoviePipelineExecutor.h |
|
void DisconnectSocket() |
Disconnects the socket (if currently connected.) | MoviePipelineExecutor.h |
|
bool IsAnyJobErrored() |
MoviePipelineExecutor.h | ||
bool IsSocketConnected () |
Returns true if the socket is currently connected, false otherwise. | MoviePipelineExecutor.h |
|
| Sends a asynchronous HTTP request. | MoviePipelineExecutor.h |
|
|
bool SendSocketMessage
(
const FString& InMessage |
Sends a socket message if the socket is currently connected. | MoviePipelineExecutor.h |
|
Protected Virtual
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void CancelAllJobs_Implementation() |
MoviePipelineExecutor.h | ||
virtual void CancelCurrentJob_Implementation() |
MoviePipelineExecutor.h | ||
virtual void Execute_Implementation
(
UMoviePipelineQueue* InPipelineQueue |
MoviePipelineExecutor.h | ||
virtual EMoviePipelinePostRenderActionType GetPostRenderAction_Implementation() |
MoviePipelineExecutor.h | ||
virtual FString GetStatusMessage_Implementation() |
MoviePipelineExecutor.h | ||
virtual float GetStatusProgress_Implementation() |
MoviePipelineExecutor.h | ||
virtual bool GetSupportsPostRenderActions_Implementation() |
MoviePipelineExecutor.h | ||
virtual bool IsRendering_Implementation() |
MoviePipelineExecutor.h | ||
virtual void OnBeginFrame_Implementation() |
MoviePipelineExecutor.h | ||
virtual void OnExecutorErroredImpl
(
UMoviePipeline* ErroredPipeline, |
MoviePipelineExecutor.h |
|
|
virtual void OnExecutorFinishedImpl () |
This should be called when the Executor has finished executing all of the things it has been asked to execute. | MoviePipelineExecutor.h |
|
virtual void SetPostRenderAction_Implementation
(
const EMoviePipelinePostRenderActionType PostRenderAction |
MoviePipelineExecutor.h | ||
virtual void SetStatusMessage_Implementation
(
const FString& InMessage |
MoviePipelineExecutor.h | ||
virtual void SetStatusProgress_Implementation
(
const float InProgress |
MoviePipelineExecutor.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void BeginDestroy() |
MoviePipelineExecutor.h |