IStreamingManager

Pure virtual base class of a streaming manager.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Public/ContentStreaming.h

Include

#include "ContentStreaming.h"

Syntax

struct IStreamingManager

Remarks

Pure virtual base class of a streaming manager.

Variables

Name Description

Protected variable

int32

 

NumWantingResources

Number of resources that currently wants to be streamed in.

Protected variable

int32

 

NumWantingResourcesCounter

The current counter for NumWantingResources.

Constructors

Name Description

Public function

IStreamingManager()

Destructors

Name Description

Public function Virtual

~IStreamingManager()

Virtual destructor

Functions

Name Description

Public function

void

 

AddLevel

(
    ULevel* Level
)

Adds a ULevel that has already prepared StreamingData to the streaming manager.

Public function

void

 

AddViewInformation

(
    const FVector& ViewOrigin,
    float ScreenSize,
    float FOVScreenSize,
    float BoostFactor,
    bool bOverrideLocation,
    float Duration,
    TWeakObjectPtr< AActor > InActorToB...
)

Adds the passed in view information to the static array.

Protected function Static

void

 

AddViewInfoToArray

(
    TArray< FStreamingViewInfo >& View...,
    const FVector& ViewOrigin,
    float ScreenSize,
    float FOVScreenSize,
    float BoostFactor,
    bool bOverrideLocation,
    float Duration,
    TWeakObjectPtr< AActor > InActorToB...
)

Adds the passed in view information to the static array.

Public function

void

 

AddViewSlaveLocation

(
    const FVector& SlaveLocation,
    float BoostFactor,
    bool bOverrideLocation,
    float Duration
)

Queue up view "slave" locations to the streaming system.

Public function

int32

 

BlockTillAllRequestsFinished

(
    float TimeLimit,
    bool bLogResults
)

Blocks till all pending requests are fulfilled.

Public function

void

 

CancelForcedResources()

Cancels the timed Forced resources (i.e used the Kismet action "Stream In Textures").

Public function Virtual

bool

 

Exec

(
    UWorld* InWorld,
    const TCHAR* Cmd,
    FOutputDevice& Ar
)

Allows the streaming manager to process exec commands.

Public function Static

FStreamingMa...

 

Get()

Public function Static

FStreamingMa...

 

Get_Concurrent()

Same as get but could fail if state not allocated or shutdown.

Public function Const

int32

 

GetNumViews()

Returns the number of view infos.

Public function Virtual Const

int32

 

GetNumWantingResources()

Returns the number of resources that currently wants to be streamed in.

Public function Virtual Const

int32

 

GetNumWantingResourcesID()

Returns the current ID for GetNumWantingResources().

Public function Const

const FStrea...

 

GetViewInformation

(
    int32 ViewIndex
)

Returns the view info by the specified index.

Public function Static

bool

 

HasShutdown()

Checks if the streaming manager has already been shut down.

Public function Virtual

void

 

NotifyActorDestroyed

(
    AActor* Actor
)

Called when a spawned actor is destroyed.

Public function

void

 

NotifyLevelChange()

Notifies manager of "level" change.

Public function

void

 

NotifyLevelOffset

(
    ULevel* Level,
    const FVector& Offset
)

Notifies manager that level primitives were shifted

Public function Virtual

void

 

NotifyPrimitiveDetached

(
    const UPrimitiveComponent* Pri...
)

Called when a primitive is detached from an actor or another component.

Public function Virtual

void

 

NotifyPrimitiveUpdated

(
    const UPrimitiveComponent* Pri...
)

Called when a primitive streaming data needs to be updated.

Public function Virtual

void

 

NotifyPrimitiveUpdated_Concurrent

(
    const UPrimitiveComponent* Pri...
)

Called when a primitive streaming data needs to be updated in the last stage of the frame.

Public function Virtual

void

 

PropagateLightingScenarioChange()

Propagates a change to the active lighting scenario.

Public function

void

 

RemoveLevel

(
    ULevel* Level
)

Removes a ULevel from the streaming manager.

Public function

void

 

RemoveStreamingViews

(
    ERemoveStreamingViews RemovalType
)

Removes streaming views from the streaming manager.

Protected function Static

void

 

RemoveViewInfoFromArray

(
    TArray< FStreamingViewInfo >& View...,
    const FVector& ViewOrigin
)

Remove view infos with the same location from the given array.

Public function

void

 

SetDisregardWorldResourcesForFrames

(
    int32 NumFrames
)

Don't stream world resources for the next NumFrames.

Protected function

void

 

SetupViewInfos

(
    float DeltaTime
)

Sets up the CurrentViewInfos array based on PendingViewInfos, LastingViewInfos and SlaveLocations.

Public function Static

void

 

Shutdown()

Public function Virtual

int32

 

StreamAllResources

(
    float TimeLimit
)

Streams in/out all resources that wants to and blocks until it's done.

Public function Virtual

void

 

Tick

(
    float DeltaTime,
    bool bProcessEverything
)

Calls UpdateResourceStreaming(), and does per-frame cleaning.

Public function

void

 

UpdateResourceStreaming

(
    float DeltaTime,
    bool bProcessEverything
)

Updates streaming, taking into account all current view infos.

Classes

Name

Description

Protected struct

FSlaveLocation

Constants

Name

Description

bPendingRemoveViews

Set when Tick() has been called.

CurrentViewInfos

Current collection of views that need to be taken into account for streaming.

LastingViewInfos

Views that stick around for a while. Override views are ignored if no movie is playing.

PendingViewInfos

Pending views. Emptied every frame.

SlaveLocations

Collection of view locations that will be added at the next call to AddViewInformation.

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback