class OVRMetricsSystem(metrics: List<OVRMetric> = emptyList(), overlayMessages: Map<String, () -> String> = emptyMap()) : SystemBase
OVRMetricsSystem
(
metrics
, overlayMessages
)
|
Signature
constructor(metrics: List<OVRMetric> = emptyList(), overlayMessages: Map<String, () -> String> = emptyMap()) Parameters metrics: ListoverlayMessages: MapReturns OVRMetricsSystem |
defineIntervalInMillis
: Long
[Get] |
Signature
val defineIntervalInMillis: Long = 5000 |
executeCount
: Long
[Get] |
The number of times this system's SystemBase.execute method has been called by the system manager. Incremented automatically before each execution cycle. Useful for performance monitoring.
Signature
var executeCount: Long |
isDisabled
: Boolean
[Get][Set] |
Signature
var isDisabled: Boolean |
isMetricsDefined
: Boolean
[Get][Set] |
Signature
var isMetricsDefined: Boolean |
lastTimeInMillis
: Long
[Get][Set] |
Signature
var lastTimeInMillis: Long |
overlayMessageKeys
: Set
[Get] |
Returns an immutable copy of the currently registered overlay message keys.
Signature
val overlayMessageKeys: Set<String> |
registeredMetrics
: List
[Get] |
Returns an immutable copy of the currently registered metrics.
Signature
val registeredMetrics: List<OVRMetric> |
submitIntervalInMillis
: Long
[Get] |
Signature
val submitIntervalInMillis: Long = 1000 |
systemManager
: SystemManager
[Get][Set] |
The SystemManager that this system is registered with. Provides access to other systems and the scene. Initialized during system registration.
Signature
lateinit var systemManager: SystemManager |
associateSystemManager
(
systemManager
)
|
Associates this system with a SystemManager. Called during registration. Throws RuntimeException if the system is already associated — each system instance can only belong to one manager.
Signature
fun associateSystemManager(systemManager: SystemManager) Parameters |
delete
(
entity
)
|
Called when an SystemBase.delete is removed from the scene. Override to clean up any per-entity state this system maintains, such as cached components, tracking maps, or native resource handles.
Signature
open fun delete(entity: Entity) Parameters entity: Entity |
destroy
()
|
Called during system shutdown to release all resources held by this system. Override to dispose of native handles, close streams, and clear any global state accumulated during the session.
Signature
open fun destroy() |
equals
(
other
)
|
Checks if this system is equal to another object. Two systems are considered equal if they are the same instance or share the same Kotlin class, regardless of configuration state.
Signature
open operator override fun equals(other: Any?): Boolean Parameters other: Any?
The object to compare with.
Returns Boolean
True if the other object is the same system instance or the same system class.
|
execute
()
|
Called each frame by the SystemManager to perform this system's per-tick logic. Override to query entities with relevant components and apply updates.
Signature
open override fun execute() |
getDependencies
()
|
Returns the execution ordering dependencies for this system. Override to declare which other systems must run before or after this one using SystemDependencies.
Signature
open fun getDependencies(): SystemDependencies? Returns SystemDependencies?
The dependency configuration, or null if this system has no ordering constraints.
|
getScene
()
| |
hashCode
()
|
Returns the hash code of this system, based on its Kotlin class identity. Consistent with the SystemBase.equals implementation — systems of the same class produce the same hash code.
Signature
open override fun hashCode(): Int Returns Int
The hash code derived from this system's Kotlin class.
|
registerMetric
(
metric
)
|
Registers a new metric at runtime. If metrics have already been defined with OVRMetricsTool, they will be redefined to include the new metric.
Signature
fun registerMetric(metric: OVRMetric) Parameters |
registerMetrics
(
newMetrics
)
|
Registers multiple metrics at runtime. If metrics have already been defined with OVRMetricsTool, they will be redefined to include the new metrics.
Signature
fun registerMetrics(newMetrics: List<OVRMetric>) Parameters newMetrics: List
The metrics to register
|
registerOverlayMessage
(
key
, message
)
|
Registers a new overlay message at runtime with a unique key. The message will be displayed in subsequent overlay updates. If a message with the same key already exists, it will be replaced.
Signature
fun registerOverlayMessage(key: String, message: () -> String) Parameters key: String
A unique identifier for this overlay message
message: Function0
A function that returns the message string to display
|
unregisterMetric
(
name
)
|
Unregisters a metric by its name at runtime. If metrics have already been defined with OVRMetricsTool, they will be redefined without the removed metric.
Signature
fun unregisterMetric(name: String): Boolean Parameters name: String
The name of the metric to unregister (matches OVRMetricDefinition.Name)
Returns Boolean
true if the metric was found and removed, false otherwise
|
unregisterOverlayMessage
(
key
)
|
Unregisters an overlay message by its key.
Signature
fun unregisterOverlayMessage(key: String): Boolean Parameters key: String
The key of the overlay message to unregister
Returns Boolean
true if the message was found and removed, false otherwise
|