2015-06-22 08:41:59 +01:00
'use strict' ; var Stats = function ( ) { function f ( a , e , b ) { a = document . createElement ( a ) ; a . id = e ; a . style . cssText = b ; return a } function l ( a , e , b ) { var d = f ( "div" , a , "padding:0 0 3px 3px;text-align:left;background:" + b ) , c = f ( "div" , a + "Text" , "font-family:Helvetica,Arial,sans-serif;font-size:9px;font-weight:bold;line-height:15px;color:" + e ) ; c . innerHTML = a . toUpperCase ( ) ; d . appendChild ( c ) ; a = f ( "div" , a + "Graph" , "width:74px;height:30px;background:" + e ) ; d . appendChild ( a ) ; for ( e = 0 ; 74 > e ; e ++ ) a . appendChild ( f ( "span" , "" , "width:1px;height:30px;float:left;opacity:0.9;background:" +
b ) ) ; return d } function m ( a ) { for ( var b = d . children , c = 0 ; c < b . length ; c ++ ) b [ c ] . style . display = c === a ? "block" : "none" ; n = a } function p ( a , b ) { a . appendChild ( a . firstChild ) . style . height = Math . min ( 30 , 30 - 30 * b ) + "px" } var q = self . performance && self . performance . now ? self . performance . now . bind ( performance ) : Date . now , k = q ( ) , r = k , t = 0 , n = 0 , d = f ( "div" , "stats" , "width:80px;opacity:0.9;cursor:pointer" ) ; d . addEventListener ( "mousedown" , function ( a ) { a . preventDefault ( ) ; m ( ++ n % d . children . length ) } , ! 1 ) ; var c = 0 , u = Infinity , v = 0 , b = l ( "fps" , "#0ff" , "#002" ) ,
A = b . children [ 0 ] , B = b . children [ 1 ] ; d . appendChild ( b ) ; var g = 0 , w = Infinity , x = 0 , b = l ( "ms" , "#0f0" , "#020" ) , C = b . children [ 0 ] , D = b . children [ 1 ] ; d . appendChild ( b ) ; if ( self . performance && self . performance . memory ) { var h = 0 , y = Infinity , z = 0 , b = l ( "mb" , "#f08" , "#201" ) , E = b . children [ 0 ] , F = b . children [ 1 ] ; d . appendChild ( b ) } m ( n ) ; return { REVISION : 14 , domElement : d , setMode : m , getFps : function ( ) { return c } , begin : function ( ) { k = q ( ) } , end : function ( ) { var a = q ( ) ; g = a - k ; w = Math . min ( w , g ) ; x = Math . max ( x , g ) ; C . textContent = ( g | 0 ) + " MS (" + ( w | 0 ) + "-" + ( x | 0 ) + ")" ; p ( D ,
2015-07-09 10:44:54 +01:00
g / 200 ) ; t ++ ; if ( a > r + 1E3 && ( c = Math . round ( 1E3 * t / ( a - r ) ) , u = Math . min ( u , c ) , v = Math . max ( v , c ) , A . textContent = c + " FPS (" + u + "-" + v + ")" , p ( B , c / 100 ) , r = a , t = 0 , void 0 !== h ) ) { var b = performance . memory . usedJSHeapSize , d = performance . memory . jsHeapSizeLimit ; h = Math . round ( 9.54 E - 7 * b ) ; y = Math . min ( y , h ) ; z = Math . max ( z , h ) ; E . textContent = h + " MB (" + y + "-" + z + ")" ; p ( F , b / d ) } return a } , update : function ( ) { k = this . end ( ) } , setSize : function ( ) { } } } ; "object" === typeof module && ( module . exports = Stats ) ;