Class MARSDatabase
The central store for world data and traits in MARS.
Syntax
public class MARSDatabase : object, IModuleMarsUpdate, IModule, IUsesCameraOffset, IFunctionalitySubscriber<IProvidesCameraOffset>, IUsesCameraPose, IFunctionalitySubscriber<IProvidesCameraPose>
Fields
MinimumPassingConditionRating
So that conditions which barely pass have a more than negligible effect on the total
match rating, we have a minimum value that a passing condition should be rated
Declaration
public const float MinimumPassingConditionRating = null
Field Value
MinimumRatingMinusOne
Used in linear interpolation going from 1 to the minimum rating in place of (to - from)
Declaration
public const float MinimumRatingMinusOne = null
Field Value
Properties
bodyData
Declaration
public MARSTrackableDataProvider<IMarsBody> bodyData { get; protected set; }
Property Value
faceData
Declaration
public MARSTrackableDataProvider<IMRFace> faceData { get; protected set; }
Property Value
markerData
Declaration
public MARSTrackableDataProvider<MRMarker> markerData { get; protected set; }
Property Value
planeData
Declaration
public MARSTrackableDataProvider<MRPlane> planeData { get; protected set; }
Property Value
referencePointData
Declaration
public MARSTrackableDataProvider<MRReferencePoint> referencePointData { get; protected set; }
Property Value
synthesizedObjectData
Declaration
public MARSDataProvider<SynthesizedObject> synthesizedObjectData { get; protected set; }
Property Value
Methods
Clear()
Declaration
IsSetQueryDataDirty(QueryMatchID)
Declaration
public bool IsSetQueryDataDirty(QueryMatchID queryMatchId)
Parameters
Returns
MarkDataUsedForUpdates(Int32, QueryMatchID, Exclusivity)
Declaration
public void MarkDataUsedForUpdates(int dataID, QueryMatchID queryMatchID, Exclusivity exclusivity)
Parameters
MarkSetDataUsedForUpdates(QueryMatchID, HashSet<Int32>)
Declaration
public void MarkSetDataUsedForUpdates(QueryMatchID queryMatchId, HashSet<int> data)
Parameters
OnBehaviorDestroy()
(Obsolete) callback is no longer used
Declaration
public void OnBehaviorDestroy()
OnBehaviorDisable()
(Obsolete) callback is no longer used
Declaration
public void OnBehaviorDisable()
OnMarsUpdate()
Called at fixed intervals while the MARS lifecycle is running
Declaration
public void OnMarsUpdate()
Implements
QueryDataDirty(QueryMatchID)
Declaration
public bool QueryDataDirty(QueryMatchID queryMatchID)
Parameters
Returns
RateConditionMatches<T>(ICondition<T>[], MARSTraitDataProvider<T>, List<Dictionary<Int32, Single>>)
Declaration
public bool RateConditionMatches<T>(ICondition<T>[] conditions, MARSTraitDataProvider<T> traitProvider, List<Dictionary<int, float>> preAllocatedRatingStorage)
Parameters
Returns
Type Parameters
TryUpdateQueryMatchData(Int32, ProxyConditions, ProxyTraitRequirements, QueryResult)
See if the value for a given data ID still meets a set of Conditions
Declaration
public bool TryUpdateQueryMatchData(int dataID, ProxyConditions conditions, ProxyTraitRequirements requirements, QueryResult result)
Parameters
Type |
Name |
Description |
Int32 |
dataID |
The id of the data value to check
|
ProxyConditions |
conditions |
The conditions to evaluate against
|
ProxyTraitRequirements |
requirements |
Trait requirements for meeting the condition
|
QueryResult |
result |
The Query result to fill out with updated values
|
Returns
Type |
Description |
Boolean |
True if the query data still matches, false otherwise
|
TryUpdateSetQueryMatchData(SetMatchData, Relations, SetQueryResult, Boolean)
Declaration
public bool TryUpdateSetQueryMatchData(SetMatchData data, Relations relations, SetQueryResult result, bool failOnNonRequiredChildren = false)
Parameters
Returns
UnmarkDataUsedForUpdates(QueryMatchID)
Declaration
public void UnmarkDataUsedForUpdates(QueryMatchID queryMatchID)
Parameters
UnmarkPartialSetDataUsedForUpdates(QueryMatchID, ICollection<IMRObject>)
Declaration
public void UnmarkPartialSetDataUsedForUpdates(QueryMatchID queryMatchId, ICollection<IMRObject> childrenToUnmark)
Parameters
UnmarkSetDataUsedForUpdates(QueryMatchID)
Declaration
public void UnmarkSetDataUsedForUpdates(QueryMatchID queryMatchId)
Parameters