Build 1.0_r1(from source)

android.util
Class TimingLogger

java.lang.Object
  extended by android.util.TimingLogger

public class TimingLogger
extends Object

A utility class to help log timings splits throughout a method call. Typical usage is: TimingLogger timings = new TimingLogger(TAG, "methodA"); ... do some work A ... timings.addSplit("work A"); ... do some work B ... timings.addSplit("work B"); ... do some work C ... timings.addSplit("work C"); timings.dumpToLog(); The dumpToLog call would add the following to the log: D/TAG ( 3459): methodA: begin D/TAG ( 3459): methodA: 9 ms, work A D/TAG ( 3459): methodA: 1 ms, work B D/TAG ( 3459): methodA: 6 ms, work C D/TAG ( 3459): methodA: end, 16 ms


Field Summary
(package private)  ArrayList<String> mSplitLabels
          Stores the labels for each split.
(package private)  ArrayList<Long> mSplits
          Stores the time of each split.
 
Constructor Summary
TimingLogger(String tag, String label)
          Create and initialize a TimingLogger object that will log using the specific tag.
 
Method Summary
 void addSplit(String splitLabel)
          Add a split for the current time, labeled with splitLabel.
 void dumpToLog()
          Dumps the timings to the log using Log.d().
 void reset()
          Clear and initialize a TimingLogger object that will log using the tag and label that was specified previously, either via the constructor or a call to reset(tag, label).
 void reset(String tag, String label)
          Clear and initialize a TimingLogger object that will log using the specific tag.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mSplits

ArrayList<Long> mSplits
Stores the time of each split.


mSplitLabels

ArrayList<String> mSplitLabels
Stores the labels for each split.

Constructor Detail

TimingLogger

public TimingLogger(String tag,
                    String label)
Create and initialize a TimingLogger object that will log using the specific tag. If the Log.isLoggable is not enabled to at least the Log.VERBOSE level for that tag at creation time then the addSplit and dumpToLog call will do nothing.

Parameters:
tag - the log tag to use while logging the timings
label - a string to be displayed with each log
Method Detail

reset

public void reset(String tag,
                  String label)
Clear and initialize a TimingLogger object that will log using the specific tag. If the Log.isLoggable is not enabled to at least the Log.VERBOSE level for that tag at creation time then the addSplit and dumpToLog call will do nothing.

Parameters:
tag - the log tag to use while logging the timings
label - a string to be displayed with each log

reset

public void reset()
Clear and initialize a TimingLogger object that will log using the tag and label that was specified previously, either via the constructor or a call to reset(tag, label). If the Log.isLoggable is not enabled to at least the Log.VERBOSE level for that tag at creation time then the addSplit and dumpToLog call will do nothing.


addSplit

public void addSplit(String splitLabel)
Add a split for the current time, labeled with splitLabel. If Log.isLoggable was not enabled to at least the Log.VERBOSE for the specified tag at construction or reset() time then this call does nothing.

Parameters:
splitLabel - a label to associate with this split.

dumpToLog

public void dumpToLog()
Dumps the timings to the log using Log.d(). If Log.isLoggable was not enabled to at least the Log.VERBOSE for the specified tag at construction or reset() time then this call does nothing.


Build 1.0_r1(from source)

Please submit a feedback, bug or feature