libgdx API

com.badlogic.gdx.utils
Class PerformanceCounter

java.lang.Object
  extended by com.badlogic.gdx.utils.PerformanceCounter

public class PerformanceCounter
extends java.lang.Object

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 the task takes. Likewise for the load value, which is the percentage of the total time.

Author:
xoppa

Field Summary
 float current
          The current value, you can manually increase this using your own timing mechanism if needed, if you do so, you also need to update valid.
 FloatCounter load
          The load value of this counter
 java.lang.String name
          The name of this counter
 FloatCounter time
          The time value of this counter
 boolean valid
          Flag to indicate that the current value is valid, you need to set this to true if using your own timing mechanism
 
Constructor Summary
PerformanceCounter(java.lang.String name)
           
PerformanceCounter(java.lang.String name, int windowSize)
           
 
Method Summary
 void 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.
 java.lang.String toString()
          
 StringBuilder toString(StringBuilder sb)
          Creates a string in the form of "name [time: value, load: value]"
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

time

public final FloatCounter time
The time value of this counter


load

public final FloatCounter load
The load value of this counter


name

public final java.lang.String name
The name of this counter


current

public float current
The current value, you can manually increase this using your own timing mechanism if needed, if you do so, you also need to update valid.


valid

public boolean valid
Flag to indicate that the current value is valid, you need to set this to true if using your own timing mechanism

Constructor Detail

PerformanceCounter

public PerformanceCounter(java.lang.String name)

PerformanceCounter

public PerformanceCounter(java.lang.String name,
                          int windowSize)
Method Detail

tick

public void tick()
Updates the time and load counters and resets the time. Call start() 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. Call start() 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. Call stop() when done.


stop

public void stop()
Stop counting, call this method right after you performed the task you want to keep track of. Call start() again when you perform more of that task.


reset

public void reset()
Resets this performance counter to its defaults values.


toString

public java.lang.String toString()

Overrides:
toString in class java.lang.Object

toString

public StringBuilder toString(StringBuilder sb)
Creates a string in the form of "name [time: value, load: value]"


libgdx API

Copyright 2010 Mario Zechner (contact@badlogicgames.com), Nathan Sweet (admin@esotericsoftware.com)