Navigation
API > API/Plugins > API/Plugins/ExternalSource
Inheritance Hierarchy
- FSharedFromThisBase
- TSharedFromThis
- FExternalSource
- FDirectLinkExternalSource
References
| Module | ExternalSource |
| Header | /Engine/Plugins/Enterprise/DatasmithImporter/Source/ExternalSource/Public/ExternalSource.h |
| Include | #include "ExternalSource.h" |
Syntax
class FExternalSource : public TSharedFromThis< FExternalSource >
Remarks
Class allowing to load a IDatasmithScene from a source URI.
Variables
| Type | Name | Description | |
|---|---|---|---|
| OnExternalSourceChangedDelegate | OnExternalSourceChanged | Delegate called on main thread every time the loaded data is updated. |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FExternalSource
(
const FSourceUri& InSourceUri |
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| TFuture< TSharedPtr< IDatasmithScene > > | AsyncLoad () |
Load the external source asynchronously, the returned TFuture gives a valid IDatasmithSceneTSharedPtr if successful. | |
| void | Cancel any pending AsyncLoad() operation, pending TFuture will return invalid TSharedPtr. | ||
| void | Interrupt async task notification and clear all registered delegates. | ||
| const TSharedPtr< IDatasmithTranslator > & | DISCLAIMER: The translator is exposed here as a temporary workaround in order to set the import option before the load and load assets with bulk data (StaticMeshes/LoadLevelSequence/etc.). | ||
| FExternalSourceCapabilities | |||
| TSharedPtr< IDatasmithScene > | Return the DatasmithScene if it is loaded, return an invalid TSharedPtr otherwise. | ||
| FString | As long as UFactory does not offer a way to import FExternalSource directly, we must rely on using filepaths, even for source that are not on the file system. | ||
| FString | GetSceneName () |
Return the name of the scene that will be loaded. | |
| FMD5Hash | Gives the hash of the source, only returns a valid hash after loading the scene. | ||
| FString | |||
| const FSourceUri & | GetSourceUri () |
||
| bool | True when the ExternalSource is currently loading the source asynchronously. | ||
| bool | IsAvailable () |
Return true if the resource pointed by this ExternalSource is available for being loaded. | |
| bool | IsOutOfSync () |
Return true if the loaded scene is out-of-sync and needs to be reloaded. | |
| TSharedPtr< IDatasmithScene > | Load () |
Load the external source and return a valid IDatasmithSceneTSharedPtr if successful. | |
| TSharedPtr< IDatasmithScene > | LoadImpl () |
Synchronously load the DatasmithScene. | |
| void | SetSceneName
(
const TCHAR* SceneName |
Override the name of the scene that will be loaded. | |
| bool | Starts an async task for loading the DatasmithScene. | ||
| bool | TranslatorLoadScene
(
const TSharedRef< IDatasmithScene >& Scene |
Loads a scene from the translator and starts a new translator load lifecycle. | |
| void | Broadcast OnExternalSourceChanged delegates and set pending TPromises. | ||
| TSharedPtr< IDatasmithScene > | TryLoad () |
Attempt to load the FExternalSource according to its supported capabilities. |
Typedefs
| Name | Description |
|---|---|
| FOptionalScenePromise |