Language
Edit

DataConsumerImageTextureFromUrl Class

Definition

An abstract data consumer that will fetch any supported image type from a URL and create a Texture.

[UnityEngine.AddComponentMenu("MRTK/Data Binding/Consumers/Data Consumer Image Texture From Url")]
[System.Serializable]
public abstract class DataConsumerImageTextureFromUrl : MixedReality.Toolkit.Data.DataConsumerGOBase
[<UnityEngine.AddComponentMenu("MRTK/Data Binding/Consumers/Data Consumer Image Texture From Url")>]
[<System.Serializable>]
type DataConsumerImageTextureFromUrl = class
    inherit DataConsumerGOBase
Public MustInherit Class DataConsumerImageTextureFromUrl
Inherits DataConsumerGOBase
Inheritance
UnityEngine.MonoBehaviour
DataConsumerImageTextureFromUrl
Derived
Attributes
UnityEngine.AddComponentMenuAttribute SerializableAttribute

Remarks

This can be used as a base implementation for updating sprites, quads or any other element that expects an image texture

There are 2 methods to implement:

protected abstract void InitializeForComponent(Component component); protected abstract void PlaceImageTexture(Texture imageTexture);

Constructors

Name Description
DataConsumerImageTextureFromUrl()

Fields

Name Description
_attached (Inherited from DataConsumerGOBase)
_componentsToManage (Inherited from DataConsumerGOBase)
_dataController (Inherited from DataConsumerGOBase)
_dataSourcesByType (Inherited from DataConsumerGOBase)
_externalAttached (Inherited from DataConsumerGOBase)
_fetchInProgress
_frameDelayCountdown
_isQuitting (Inherited from DataConsumerGOBase)
_random
_resolvedToLocalKeyPathLookup (Inherited from DataConsumerGOBase)
_waitingUrlToFetch
FramesPerMillisecond
ignoreKeyPathPrefix

For items in collections, it can be useful to ignore the prefix prepended to local key paths, such as when it is used to look up theme data in a separate IDataSource.

(Inherited from DataConsumerGOBase)

Properties

Name Description
AutoAttachAndDetach

If true, will ensure that the attachment happens only once, and will not be detached. This is useful to optimize items that will never be recycled. This optimization is disabled automatically for collections.

(Inherited from DataConsumerGOBase)
DataController (Inherited from DataConsumerGOBase)
DataSources

Note that runtime changes to this will not be reflected in the serialized data for this component.

(Inherited from DataConsumerGOBase)
DataSourceTypes

Data source types used to identify an appropriate data source for automatic attachment. If no type is provided, the first data source found in parents will be used.

(Inherited from DataConsumerGOBase)
IsFixedHierarchyWillUseCachedValues

If true, indicates the hierarchy and managed components in this object will not change. This will use the cached types and component references to scan for after they are attained a first time. This avoids an extensive amount of UnityEngine.GameObject.GetComponent``1 in each Attach(Dictionary<String,IDataSource>, IDataController, String), which is super expensive especially for DataConsumerText.

(Inherited from DataConsumerGOBase)
ResolvedKeyPathPrefix (Inherited from DataConsumerGOBase)

Methods

Name Description
AddKeyPathListener(String, IDataSource)

Add a key path to the data source so that this object will be notified when it has changed.

(Inherited from DataConsumerGOBase)
AddKeyPaths(HashSet<Component>)

Once components have been identified, add keypaths for them.

(Inherited from DataConsumerGOBase)
AddVariableKeyPathsForAllComponents(ISet<Component>) (Inherited from DataConsumerGOBase)
AddVariableKeyPathsForComponent(Component)

Add variable key paths for a component.

Attach(Dictionary<String,IDataSource>, IDataController, String)

Prepare this data consumer for use and attach to the provided external resources.

(Inherited from DataConsumerGOBase)
AttachAllResources(Dictionary<String,IDataSource>, IDataController, String) (Inherited from DataConsumerGOBase)
AttachDataConsumer()

Perform any attach logic here that is specific to this data consumer.

(Inherited from DataConsumerGOBase)
AttachDataSources(Dictionary<String,IDataSource>) (Inherited from DataConsumerGOBase)
CheckAndUpdateAttach(Dictionary<String,IDataSource>, IDataController, String) (Inherited from DataConsumerGOBase)
CheckForWaitingUrlToFetch()
ComponentMeetsAllQualifications(Component) (Inherited from DataConsumerGOBase)
DataChangeSetBegin(IDataSource)

Mark beginning of a related set of data changes.

(Inherited from DataConsumerGOBase)
DataChangeSetEnd(IDataSource)

Mark beginning of a related set of data changes.

(Inherited from DataConsumerGOBase)
Detach()

Detach this data consumer and prepare to return to object pool.

(Inherited from DataConsumerGOBase)
DetachDataConsumer()

Perform any detach logic here that is specific to this data consumer.

FetchImageTexture(String)
FindComponentsOnGameObject(GameObject, Type) (Inherited from DataConsumerGOBase)
FindComponentsToManage()

Populate the caches of components that are being managed by this DataConsumer, based on the GetComponentTypes() provided. Separation of this method from the FindVariablesToManage() allows for calling this in Awake before the data sources may be present/ready if desired.

(Inherited from DataConsumerGOBase)
FindDataSources(String[], Dictionary<String,IDataSource>)

If no data source is provided directly, search through this object and its parents in game object hierarchy for the data source to use with this data consumer.

(Inherited from DataConsumerGOBase)
FindDataSourcesInParents(String[], Dictionary<String,IDataSource>)

Search through this object and its parents in game object hierarchy for the data source to use with this data consumer.

(Inherited from DataConsumerGOBase)
FindDataSourcesInSingleton(String[], Dictionary<String,IDataSource>)

Search through this object and its parents in game object hierarchy for the data source to use with this data consumer.

(Inherited from DataConsumerGOBase)
FindNearestDataController(IDataController)

If no data source is provided directly, search through this object and its parents in game object hierarchy for the data source to use with this data consumer.

(Inherited from DataConsumerGOBase)
FindUnmanagedComponentsInChildren(GameObject, Type) (Inherited from DataConsumerGOBase)
GetBestDataSource(String) (Inherited from DataConsumerGOBase)
GetBestDataSourceForKeyPath(String, String, String) (Inherited from DataConsumerGOBase)
GetComponentTypes()

Get the component types.

(Inherited from DataConsumerGOBase)
InitializeDataConsumer()

Perform any one time initialization here that is specific to this data consumer.

(Inherited from DataConsumerGOBase)
InitializeForComponent(Component)

Initialize any state specific to each managed component found.

IsAttached()

Tell whether attached to a DataSource.

(Inherited from DataConsumerGOBase)
IsSameDataController(IDataController) (Inherited from DataConsumerGOBase)
IsSameDataSources(Dictionary<String,IDataSource>) (Inherited from DataConsumerGOBase)
IsSameKeyPathPrefix(String) (Inherited from DataConsumerGOBase)
ManageChildren()

Report whether this data consumer should manage components on child game objects

NotifyDataChanged(IDataSource, String, Object, DataChangeType)

Notification of a data change.

(Inherited from DataConsumerGOBase)
NotifyThisConsumerKeypathsAdded() (Inherited from DataConsumerGOBase)
OnDisable()

A Unity event function that is called when the script component has been disabled.

(Inherited from DataConsumerGOBase)
OnEnable()

A Unity event function that is called when the script component has been enabled.

(Inherited from DataConsumerGOBase)
PlaceImageTexture(Texture2D)

Place the fetched image texture.

ProcessDataChanged(IDataSource, String, String, Object, DataChangeType) UnityEngine.MonoBehaviour.ProcessDataChanged(MixedReality.Toolkit.Data.IDataSource,System.String,System.String,System.Object,MixedReality.Toolkit.Data.DataChangeType)
SelfAttach()

Self attach is used when this Component is not being attached by another DataConsumer as would happen when DataConsumerCollection is instantiating prefabs and adding them to its collection.

(Inherited from DataConsumerGOBase)
ShouldIncludeInactiveComponentsInChildren()

Get whether or not to inactive child components should be included.

(Inherited from DataConsumerGOBase)

Applies to