1
8
9 import com.sekati.core.CoreObject;
10
11
14 class com.sekati.time.StopWatch extends CoreObject {
15
16 private var _initTime:Number;
17 private var _endTime:Number;
18 private var _lastLap:Number;
19 private var _ms:Number;
20
21
25 public function StopWatch(startNow:Boolean) {
26 super( );
27 if(startNow) start( );
28 }
29
30
34 public function start():Number {
35 _initTime = getTimer( );
36 _lastLap = _initTime;
37 return read( );
38 }
39
40
44 public function stop():Number {
45 _endTime = getTimer( );
46 _ms = _endTime - _initTime;
47 return _ms;
48 }
49
50
54 public function lap():Number {
55 var now:Number = getTimer( );
56 _ms = now - _lastLap;
57 _lastLap = now;
58 return _ms;
59 }
60
61
65 public function read():Number {
66 var now:Number = getTimer( );
67 return now - _initTime;
68 }
69
70
73 public function destroy():Void {
74 stop( );
75 super.destroy( );
76 }
77 }