Bladeren bron

Modified StopWatch.py so it works the same on multiple operating
systems.

Bryan Allred 14 jaren geleden
bovenliggende
commit
a2d06363e6
1 gewijzigde bestanden met toevoegingen van 36 en 7 verwijderingen
  1. 36 7
      src/StopWatch.py

+ 36 - 7
src/StopWatch.py

3

3

4
@author: BMAllred
4
@author: BMAllred
5
'''
5
'''
6
import time
6
import datetime
7

7

8
class StopWatch(object):
8
class StopWatch(object):
9
    '''
9
    '''
18
        self.StartTime = None
18
        self.StartTime = None
19
        self.StopTime = None
19
        self.StopTime = None
20
    
20
    
21
    def Reset(self):
22
        '''
23
        Reset stop watch.
24
        '''
25
        
26
        self.StartTime = None
27
        self.StopTime = None
28
        
21
    def Start(self):
29
    def Start(self):
22
        self.StartTime = time.clock()
30
        '''
31
        Start a new stop watch.
32
        '''
33
        
34
        self.StartTime = datetime.datetime.now()
23
        self.StopTime = None
35
        self.StopTime = None
24
        
36
        
25
        return self.StartTime
37
        return self.StartTime
26
    
38
    
27
    def Stop(self):
39
    def Stop(self):
28
        self.StopTime = time.clock()
40
        '''
41
        Stop recording the time.
42
        '''
43
        
44
        self.StopTime = datetime.datetime.now()
29
    
45
    
30
    def TimeElapsed(self):
46
    def TimeElapsed(self):
47
        '''
48
        Returns the time elapsed.
49
        '''
31
        
50
        
32
        if self.StartTime is None:
51
        if self.StartTime is None:
33
            return -1
52
            return -1
34
        elif self.StopTime is None:
53
        elif self.StopTime is None:
35
            return time.clock() - self.StartTime
54
            return datetime.datetime.now() - self.StartTime
36
        
55
        
37
        return self.StopTime - self.StartTime
56
        return self.StopTime - self.StartTime
38
    
57
    
39
    def Reset(self):
40
        self.StartTime = None
41
        self.StopTime = None
58
    def TotalSeconds(self):
59
        '''
60
        Returns the total seconds elapsed.
61
        '''
62
        
63
        return self.TimeElapsed().seconds
64
    
65
    def TotalMilliseconds(self):
66
        '''
67
        Returns the total milliseconds elapsed.
68
        '''
69
        
70
        return self.TimeElapsed().microseconds / 1000