47efe3a5bc6215eca3c485e6c7f97d6d54b37122
Stefan Schuermans implement file and time for...

Stefan Schuermans authored 7 years ago

1) /* Blinker
2)    Copyright 2011-2014 Stefan Schuermans <stefan@blinkenarea.org>
3)    Copyleft GNU public license - http://www.gnu.org/copyleft/gpl.html
4)    a blinkenarea.org project */
5) 
6) #ifndef BLINKER_TIME_H
7) #define BLINKER_TIME_H
8) 
9) #include <windows.h>
10) #include <stdint.h>
11) 
12) namespace Blinker {
13) 
14) /// time, either point in time or duration
15) class Time
16) {
17) public:
18)   static const Time zero; ///< zero time
19) 
20) public:
21)   /**
22)    * @brief get current time
23)    * @return current time
24)    */
25)   static Time now();
26) 
27) public:
28)   /// constructor
29)   Time();
30) 
31)   /**
32)    * @brief constructor from seconds
33)    * @param[in] t time in seconds
34)    */
35)   Time(time_t t);
36) 
37) public:
38)   /// comparison
39)   //@{
40)   int compare(const Time &that) const;
41)   bool operator==(const Time &that) const;
42)   bool operator!=(const Time &that) const;
43)   bool operator<(const Time &that) const;
44)   bool operator>(const Time &that) const;
45)   bool operator<=(const Time &that) const;
46)   bool operator>=(const Time &that) const;
47)   //@}
48) 
49)   /// arithmetic
50)   //@{
51)   const Time & operator+=(const Time &that);
52)   const Time & operator-=(const Time &that);
53)   Time operator+(const Time &that) const;
54)   Time operator-(const Time &that) const;
55)   //@}
56) 
57)   /**
58)    * @brief convert from floating point seconds
59)    * @param[in] s time in seconds
60)    */
61)   void fromFloatSec(float s);
62) 
63)   /**
64)    * @brief convert from milliseconds
65)    * @param[in] ms milliseconds
66)    */
67)   void fromMs(int ms);
68) 
69)   /**
70)    * @brief convert to seconds
71)    * @return seconds
72)    */
73)   time_t toSec() const;
74) 
75)   /**
76)    * @brief convert to floating point seconds
77)    * @return time in seconds
78)    */
79)   float toFloatSec() const;
80) 
Stefan Schuermans IO for Windows

Stefan Schuermans authored 7 years ago

81)   /**
82)    * @brief convert to struct timeval
83)    * @param[out] tv struct timeval
84)    */
85)   void toTimeval(struct timeval &tv) const;
86)