Class InputMetadataRebindabilityProvider
Answers rebindability from one or more actions-asset metadata sidecars.
Implements
Inherited Members
Namespace: Scylla.Input
Assembly: ScyllaInput.dll
Syntax
public sealed class InputMetadataRebindabilityProvider : IInputRebindabilityProvider
Remarks
Records are indexed by the sidecar's QualifiedName, which is written
Map/Action and so is already the pair the rebind manager asks with. Indexing by
the record's ActionID would not work: that is the authoring GUID, while at run
time an action is identified by its map's name and its own.
Several sidecars can be added, one per registered actions asset. A qualified name claimed twice keeps the first entry, matching how a map name claimed twice resolves for the registered assets themselves once the override has settled.
Properties
Count
Gets how many annotated actions the provider knows about.
Declaration
public int Count { get; }
Property Value
| Type | Description |
|---|---|
| int |
Methods
Add(ScyllaInputActionsMetadata)
Adds every action annotation a sidecar carries.
Declaration
public int Add(ScyllaInputActionsMetadata metadata)
Parameters
| Type | Name | Description |
|---|---|---|
| ScyllaInputActionsMetadata | metadata | The sidecar to read. Ignored when |
Returns
| Type | Description |
|---|---|
| int | How many records were added. |
Remarks
Records that say nothing beyond the default are skipped, so the lookup holds only the actions a project actually restricted.
GetRebindability(string, string)
Returns how the named action may be rebound.
Declaration
public InputRebindability GetRebindability(string mapID, string actionID)
Parameters
| Type | Name | Description |
|---|---|---|
| string | mapID | The action map's name. |
| string | actionID | The action's name within that map. |
Returns
| Type | Description |
|---|---|
| InputRebindability | The action's rebindability, or Rebindable when the provider has nothing recorded for it. |