Class ReasoningModule
Namespace: Unity.MARS.Data.Reasoning
Syntax
public class ReasoningModule : ScriptableSettings<ReasoningModule>, IModuleBehaviorCallbacks, IModuleMarsUpdate, IModule, IModuleDependency<FunctionalityInjectionModule>, IUsesSlowTasks, IFunctionalitySubscriber<IProvidesSlowTasks>
Properties
ExtraTraitRequirements
Set of traits requirements that should also be used when setting up reasoning APIs that might not already be included in the MARS Session.
Declaration
public HashSet<TraitRequirement> ExtraTraitRequirements { get; }
Property Value
Type | Description |
---|---|
HashSet<TraitRequirement> |
Methods
AddReasoningAPI(IReasoningAPI)
Allows a reasoning API to be dynamically added to the scene
Declaration
public void AddReasoningAPI(IReasoningAPI reasoningAPI)
Parameters
Type | Name | Description |
---|---|---|
IReasoningAPI | reasoningAPI |
ChangeReasoningAPIInterval(IReasoningAPI)
Allows a reasoning API to change its interval at runtime
Declaration
public void ChangeReasoningAPIInterval(IReasoningAPI reasoningAPI)
Parameters
Type | Name | Description |
---|---|---|
IReasoningAPI | reasoningAPI | The reasoning API to update the interval for |
FindReasoningAPI<T>()
Declaration
public T FindReasoningAPI<T>()
where T : IReasoningAPI
Returns
Type | Description |
---|---|
T |
Type Parameters
Name | Description |
---|---|
T |
RemoveReasoningAPI(IReasoningAPI)
Removes a reasoning API from being processed in the scene
Declaration
public void RemoveReasoningAPI(IReasoningAPI reasoningAPI)
Parameters
Type | Name | Description |
---|---|---|
IReasoningAPI | reasoningAPI |
ResetReasoningAPIs()
Unload existing reasoning APIs and load new ones based on current scene requirements
Declaration
public void ResetReasoningAPIs()
Explicit Interface Implementations
IModuleMarsUpdate.OnMarsUpdate()
Called at fixed intervals while the MARS lifecycle is running
Declaration
void IModuleMarsUpdate.OnMarsUpdate()