Package arc.util
Class PerformanceCounter
java.lang.Object
arc.util.PerformanceCounter
Class to keep track of the time and load (percentage of total time) a specific task takes. Call
start()
just before
starting the task and stop()
right after. You can do this multiple times if required. Every render or update call
tick()
to update the values. The time
FloatCounter
provides access to the minimum, maximum, average,
total and current time (in seconds) the task takes. Likewise for the load
value, which is the percentage of the total time.-
Field Summary
Modifier and TypeFieldDescriptionfloat
The current value in seconds, you can manually increase this using your own timing mechanism if needed, if you do so, you also need to updatevalid
.final FloatCounter
The load value of this counterfinal String
The name of this counterfinal FloatCounter
The time value of this counter (seconds)boolean
Flag to indicate that the current value is valid, you need to set this to true if using your own timing mechanism -
Constructor Summary
ConstructorDescriptionPerformanceCounter
(String name) PerformanceCounter
(String name, int windowSize) -
Method Summary
Modifier and TypeMethodDescriptionvoid
reset()
Resets this performance counter to its defaults values.void
start()
Start counting, call this method just before performing the task you want to keep track of.void
stop()
Stop counting, call this method right after you performed the task you want to keep track of.void
tick()
Updates the time and load counters and resets the time.void
tick
(float delta) Updates the time and load counters and resets the time.toString()
Creates a string in the form of "name [time: value, load: value]"
-
Field Details
-
time
The time value of this counter (seconds) -
load
The load value of this counter -
name
The name of this counter -
current
public float currentThe current value in seconds, you can manually increase this using your own timing mechanism if needed, if you do so, you also need to updatevalid
. -
valid
public boolean validFlag to indicate that the current value is valid, you need to set this to true if using your own timing mechanism
-
-
Constructor Details
-
PerformanceCounter
-
PerformanceCounter
-
-
Method Details
-
tick
public void tick()Updates the time and load counters and resets the time. Callstart()
to begin a new count. The values are only valid after at least two calls to this method. -
tick
public void tick(float delta) Updates the time and load counters and resets the time. Callstart()
to begin a new count.- Parameters:
delta
- The time since the last call to this method
-
start
public void start()Start counting, call this method just before performing the task you want to keep track of. Callstop()
when done. -
stop
public void stop()Stop counting, call this method right after you performed the task you want to keep track of. Callstart()
again when you perform more of that task. -
reset
public void reset()Resets this performance counter to its defaults values. -
toString
-
toString
Creates a string in the form of "name [time: value, load: value]"
-