Microsoft.MixedReality.WorldLocking.Core Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Classes
AlignmentManager |
Unity level implementation of aligning Unity's coordinate system |
AlignSubtree |
Script to use an independent AlignmentManager to align a specific subtree, independent of the rest of the scene. |
AnchorManager |
Encapsulation of spongy world (raw input) state. Its primary duty is the creation and maintenance of the graph of (spongy) anchors built up over the space traversed by the camera. |
AnchorManagerARCore | |
AnchorManagerNull | |
AnchorManagerWSA |
Encapsulation of spongy world (raw input) state. Its primary duty is the creation and maintenance of the graph of (spongy) anchors built up over the space traversed by the camera. |
AttachmentPoint |
Implementation of the IAttachmentPoint interface. Provides implementations, as well as a binding to the update delegates. |
ConversionExt |
Provide string formatting for id types. |
Diagnostics |
Writer of diagnostics for postmortem analysis. |
EngineException |
Thin layer on exceptions for engine generated exceptions. |
Fragment |
Fragment class is a container for attachment points in the same WorldLocking Fragment. It manages their update and adjustment, including merging in the attachment points from another fragment. |
HeadPoseTrackerCamera | |
HeadPoseTrackerXR | |
Orienter |
The Orienter class implements IOrienter. |
OrienterThreeBody |
Derived class which supports computing implicit rotations in full 3-DOF (6-DOF w/ position). |
Plugin |
Encapsulate FrozenWorldPlugin.dll with a Unity-friendly interface This class contains no significant logic, only translation between the low-level C-style interface of the library and corresponding high-level C#/Unity data structures and calling paradigms Though the library itself is implemented as singleton, this class implements constructor and Dispose function, handling the initialize/destroy functions of the engine, allowing stable loading/unloading cycles of the FrozenWorld component within the UnityEditor as they happen during typical application development. Though this class has no significant internal state and most methods could technically be declared static, they are intentionally implemented as regular methods to ensure that the constructor has been called before any other interaction with the library. |
Plugin.Deserializer |
Class to handle deserialization of frozen world state |
Plugin.MetricsAccessor | |
Plugin.Serializer |
Class to capture and serialize frozen world state to storage. |
PluginNoop | |
PluginNoop.Deserializer |
Class to handle deserialization of frozen world state |
PluginNoop.Serializer |
Class to capture and serialize frozen world state to storage. |
PoseExtensions |
Extensions for Poses to enable basic transform math. |
ResourceMirror |
Class to synchronize a list of resources with associated source data (items). |
SharedDiagnosticsSettings |
The SharedSettings boxes the Settings into a sharable reference. |
SharedManagerSettings |
Shareable (reference type) version of Settings (value struct). |
SpacePin |
Component helper for pinning the world locked space at a single reference point. |
SpacePinOrientable |
A component derived from SpacePin which differs only in that, rather than using an explicit rotation passed in, an implicit rotation is calculated based on the relative positions of all active SpacePinOrientables. |
SpongyAnchor |
Wrapper class for Unity spatial anchors, facilitating creation and persistence. |
SpongyAnchorARCore | |
SpongyAnchorARF |
Wrapper class for Unity WorldAnchor, facilitating creation and persistence. |
SpongyAnchorNull |
Wrapper class for a no-op spatial, platform-free anchor. |
SpongyAnchorWSA |
Wrapper class for Unity WorldAnchor, facilitating creation and persistence. |
SpongyAnchorXR |
Wrapper class for Unity XRAnchor, facilitating creation and persistence. |
TransformExtensions |
Conversion function between a pose and a transform. |
WorldLockingContext |
The central component for providing WorldLocking functionality to a scene |
WorldLockingContextEditor |
Custom editor for the collections of settings managed by the WorldLockingManager. |
WorldLockingManager |
Ultimate manager of World Locking. WorldLockingManager supplies access to the sub-managers, IAnchorManager, IFragmentManager, and IAttachmentPointManager. |
Structs
AnchorEdge |
Simple struct representing a non-directional edge between two anchors. |
AnchorFragmentPose |
Simple struct associating a FragmentPose with an AnchorId. |
AnchorManager.SpongyAnchorWithId | |
AnchorPose |
Simple struct for passing id,pose tuples, to avoid C# version dependency (e.g. ValueTuple) |
AnchorRelevance |
Simple struct for relevance by anchor id. |
AnchorSettings |
Settings related to management of the internal anchor graph. |
Diagnostics.Record |
One record (chunk) of data. |
DiagnosticsSettings |
Client tune-able settings for the diagnostics. Set through the WorldLockingManager. |
FragmentPose |
Simple struct for passing id,pose tuples, to avoid C# version dependency (e.g. ValueTuple) |
LinkageSettings |
Explicitly set required Transform objects. |
ManagerSettings |
Manager settings. |
Orienter.WeightedRotation |
An object whose rotation needs to be computed, and the weight of its rotation. |
Interfaces
IAlignmentManager |
Manage pinning the world-locked space to user defined coordinate frame at a discrete set of points in the world. |
IAnchorManager |
Create and persist a network of anchors around the camera as it moves around, and feed them into the plugin. |
IAttachmentPoint |
Opaque handle to an attachment point. Create one of these to enable WorldLocking to adjust an attached object as corrections to the world locked space optimization are made. |
IAttachmentPointManager |
Interface for application creation and manipulation of attachment points. In particular, the creation and release of attachment points must be conducted through the IAttachmentPointManager. |
IFragmentManager |
Interface for managing fragments. This mostly comprises the bookkeeping of managing IAttachmentPoint associations, and the intimately related application of refit operations. |
IHeadPoseTracker |
Interface for retrieving the current head pose. |
IMetricsAccessor | |
IOrientable |
Base class for a thing whose orientation can be inferred from the positions of a collection of IOrientables. |
IOrienter |
An object capable of computing self-consistent rotations for IOrientables based on their positions. |
IPlugin | |
IPluginDeserializer | |
IPluginSerializer |
Enums
AnchorId |
Numerical identifier for individual anchors within the FrozenWorld. Assigned by the client when defining new spongy anchors. Unique within a running session. Persistent as part of serialized state. |
AnchorSettings.AnchorSubsystem | |
AttachmentPointStateType |
The states an attachment point can be in. |
FragmentId |
Numerical identifier for frozen fragments. Assigned by engine. Persistent as part of serialized state. |
SpacePin.ModelPositionSourceEnum |
Choice of what to use for modeling position. |
Delegates
AdjustLocationDelegate |
Notification that a correction in the world locked space has been computed and should be applied to this object. |
AdjustStateDelegate |
Notification from the system that the state of the fragment containing the attachment point has changed. The client can take action to hide objects in disconnected space if desired. |
PostAlignmentLoadedDelegate | |
RefitNotificationDelegate |
Delegate type for notification of refit operations. |
ResourceMirror.CompareToResource<ItemType,ResourceType> |
Function to compare a source item with a resource. It should return: -1 if resource is associated with a smaller item than item. 1 if resource is associated with a larger item than item. 0 if resource is associated with item. |
ResourceMirror.CreateResource<ItemType,ResourceType> |
Callback for creating a new instance of a resource matching a specific item. This will be called for each item in Sync's currentItems list which doesn't have a matching resource in Sync's resources list. |
ResourceMirror.DestroyResource<ResourceType> |
Callback to release resources. This will be called for each resource in Sync's resource list for which there is no corresponding source data in Sync's currentItems. |
ResourceMirror.UpdateResource<ItemType,ResourceType> |
Callback to update existing resources. This will be called for each item and its associated resource in the Sync's currentItems and resources lists. |