Interface IPipelineWorker
An interface to define an element of a pipeline with its lifecycle methods and Inputs.
Namespace: Holoride.ElasticSDK
Assembly: Holoride.ElasticSDK.Library.Runtime.dll
Syntax
[PublicAPI]
public interface IPipelineWorkerProperties
CurrentGenerationContext
Gets or sets the current generation context.
Declaration
GenerationContext CurrentGenerationContext { get; set; }Property Value
| Type | Description | 
|---|---|
| GenerationContext | 
GenerationSettings
Gets the immutable data that cannot be changed during the whole generation loop.
Declaration
GenerationSettings GenerationSettings { get; }Property Value
| Type | Description | 
|---|---|
| GenerationSettings | 
GenerationState
Gets the current state of the generation process and will be updated over time.
Declaration
GenerationState GenerationState { get; }Property Value
| Type | Description | 
|---|---|
| GenerationState | 
HasMissingMandatoryInputInHierarchy
Gets a value indicating whether this worker has any missing mandatory input in hierarchy.
Declaration
bool HasMissingMandatoryInputInHierarchy { get; }Property Value
| Type | Description | 
|---|---|
| bool | 
Inputs
Gets the input IPipelineWorkers to be processed before this worker.
Declaration
IEnumerable<IPipelineWorker> Inputs { get; }Property Value
| Type | Description | 
|---|---|
| IEnumerable<IPipelineWorker> | 
IsGatheringResources
Gets or sets a value indicating whether this node is gathering resources.
Declaration
bool IsGatheringResources { get; set; }Property Value
| Type | Description | 
|---|---|
| bool | 
IsProcessing
Gets or sets a value indicating whether this node is processing.
Declaration
bool IsProcessing { get; set; }Property Value
| Type | Description | 
|---|---|
| bool | 
MissingMandatoryInputs
Gets all missing mandatory inputs.
Declaration
IReadOnlyCollection<string> MissingMandatoryInputs { get; }Property Value
| Type | Description | 
|---|---|
| IReadOnlyCollection<string> | 
Pipeline
Gets or sets the pipeline this worker currently belongs to. A worker can always only belong to a single pipeline.
Declaration
Pipeline Pipeline { get; set; }Property Value
| Type | Description | 
|---|---|
| Pipeline | 
Methods
AddInput(string, IPipelineWorker)
Adds an input PipelineWorker.
Declaration
void AddInput(string id, IPipelineWorker pipelineWorker)Parameters
| Type | Name | Description | 
|---|---|---|
| string | id | The id of the input. | 
| IPipelineWorker | pipelineWorker | The PipelineWorker to set as an input. | 
AddMissingMandatoryInput(string)
Adds a missing input.
Declaration
void AddMissingMandatoryInput(string id)Parameters
| Type | Name | Description | 
|---|---|---|
| string | id | The id of the missing input. | 
CallCleanUp()
Cleans up this node.
Declaration
[Obsolete("Use Dispose() instead.")]
void CallCleanUp()CallGatherResourcesAsync(GenerationContext, IProgress<float>, CancellationToken)
Gathers the resources required for this node in order to be processed.
Declaration
UniTask<LoadResourceResult> CallGatherResourcesAsync(GenerationContext context, IProgress<float> onProgressUpdate = null, CancellationToken cancellationToken = default)Parameters
| Type | Name | Description | 
|---|---|---|
| GenerationContext | context | Contains the immutable meta-information of a single update iteration. | 
| IProgress<float> | onProgressUpdate | The feedback function passing the (down)loading progress [0, 1]. | 
| CancellationToken | cancellationToken | The token to monitor for cancellation requests. | 
Returns
| Type | Description | 
|---|---|
| Cysharp.Threading.Tasks.UniTask<T><LoadResourceResult> | 
CallInit()
Initializes this node.
Declaration
void CallInit()CallInitResources()
Initializes the resources required for this node in order to be processed.
Declaration
void CallInitResources()CallProcessAsync(GenerationContext, IProgress<float>, CancellationToken)
The default process function that is called for every CompositingNode.
Declaration
UniTask CallProcessAsync(GenerationContext context, IProgress<float> onProgressUpdate = null, CancellationToken cancellationToken = default)Parameters
| Type | Name | Description | 
|---|---|---|
| GenerationContext | context | Contains the immutable meta-information of a single update iteration. | 
| IProgress<float> | onProgressUpdate | Called with relative progress in [0, 1]. May be called from another thread. | 
| CancellationToken | cancellationToken | The token to monitor for cancellation requests. | 
Returns
| Type | Description | 
|---|---|
| Cysharp.Threading.Tasks.UniTask | 
GetInput(string)
Gets an input PipelineWorker.
Declaration
IPipelineWorker GetInput(string id)Parameters
| Type | Name | Description | 
|---|---|---|
| string | id | The id of the input. | 
Returns
| Type | Description | 
|---|---|
| IPipelineWorker | The corresponding input PipelineWorker. |