@@ -20,42 +20,41 @@ class Freq
20
20
class Time
21
21
{
22
22
public:
23
- unsigned int value;
23
+ // unsigned int value;
24
+ float sec;
24
25
Time ():
25
- value (0 ) {}
26
- explicit Time (unsigned int ms) {
27
- value = ms;
28
- }
26
+ sec (0 ) {}
27
+ explicit Time (float ms) { sec = ms/1000 .0f ; } // deprecated
29
28
Time (const Time& t) = default ;
30
29
Time& operator =(const Time& t) = default ;
31
30
Time (Time&& t) = default ;
32
31
Time& operator =(Time&& t) = default ;
33
32
34
- unsigned int internal () const { return value ; }
33
+ unsigned ui () const { return ( unsigned int )(sec* 1000 . 0f ) ; }
35
34
// static Time seconds(unsigned int s) { return Time(s * 1000);}
36
- static Time seconds (float s) { return Time (( unsigned int )(s * 1000 .0f ) ); }
35
+ static Time seconds (float s) { return Time (s* 1000 .0f ); }
37
36
// static Time minutes(unsigned int m) { return Time(m * 60000);}
38
- static Time minutes (float m) { return Time (( unsigned int )( m * 60000 .0f ) );}
39
- static Time ms (unsigned int ms) { return Time (ms); }
37
+ static Time minutes (float m) { return Time (m * 60000 .0f );}
38
+ static Time ms (float ms) { return Time (ms); }
40
39
41
- // operator bool() const { return value ; }
42
- // operator float() const { return value / 1000.0f; }
40
+ // operator bool() const { return sec ; }
41
+ // operator float() const { return sec / 1000.0f; }
43
42
44
43
Time& operator +=(Time t) {
45
- value += t.internal () ;
44
+ sec += t.sec ;
46
45
return *this ;
47
46
}
48
- bool operator >(Time t) const { return value > t.internal () ; }
49
- bool operator <(Time t) const { return value < t.internal () ; }
50
- bool operator >=(Time t) const { return value >= t.internal () ; }
51
- bool operator <=(Time t) const { return value <= t.internal () ; }
47
+ bool operator >(Time t) const { return sec > t.sec ; }
48
+ bool operator <(Time t) const { return sec < t.sec ; }
49
+ bool operator >=(Time t) const { return sec >= t.sec ; }
50
+ bool operator <=(Time t) const { return sec <= t.sec ; }
52
51
operator bool () const {
53
- return value ;
52
+ return std::abs (sec* 1000 . 0f ) > K_EPSILON ;
54
53
}
55
54
56
- float s () const { return value / 1000 . 0f ; }
57
- float seconds () const { return value / 1000 . 0f ; }
58
- unsigned int ms () const { return value ; }
55
+ float s () const { return sec ; }
56
+ float seconds () const { return sec ; }
57
+ float ms () const { return sec * 1000 . 0f ; }
59
58
};
60
59
61
60
class Timeline {
@@ -122,7 +121,7 @@ class Freq
122
121
}
123
122
124
123
bool elapsed (Freq::Time value) {
125
- return m_ulPassedTime > value.ms ();
124
+ return m_ulPassedTime > value.ui ();
126
125
}
127
126
Freq::Time age () const {
128
127
return Freq::Time::ms (m_ulPassedTime);
@@ -225,7 +224,7 @@ class Freq
225
224
}
226
225
227
226
Freq::Time pause () {
228
- return Freq::Time (m_ulAlarmTime - m_ulStartTime);
227
+ return Freq::Time::ms (m_ulAlarmTime - m_ulStartTime);
229
228
}
230
229
231
230
void minutes (unsigned int m)
@@ -277,7 +276,7 @@ class Freq
277
276
Freq::Time excess () const {
278
277
if (!elapsed ())
279
278
return Freq::Time (0 );
280
- return Freq::Time (m_pTimer->ms () - m_ulAlarmTime);
279
+ return Freq::Time::ms (m_pTimer->ms () - m_ulAlarmTime);
281
280
}
282
281
283
282
boost::signals2::connection connect (std::function<void ()> cb) {
0 commit comments