Dibbler - a portable DHCPv6  1.0.2RC1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
postime.h
Go to the documentation of this file.
1 /*
2  Posadis - A DNS Server
3  Posadis time functions
4  Copyright (C) 2002 Meilof Veeningen <meilof@users.sourceforge.net>
5 
6  This program is free software; you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation; either version 2 of the License, or
9  (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with this program; if not, write to the Free Software
18  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 */
20 
21 #ifndef __POSLIB_POSTIME_H
22 #define __POSLIB_POSTIME_H
23 
24 #ifndef WIN32
25 #include <pthread.h>
26 #endif
27 #include "types.h"
28 
29 #ifdef WIN32
30 #include <time.h>
31 #endif
32 
33 
48 class postime_t {
49  public:
50 
57  postime_t();
58 
68  postime_t(int msecs);
69 
77  postime_t& operator=(const postime_t &t);
78 
86  long sec;
87 
95  long msec;
96 
104  bool operator==(const postime_t &t);
105 
113  bool operator<=(const postime_t &t);
114 
121  bool operator<(const postime_t &t);
122 
131  bool operator>=(const postime_t &t);
132 
140  bool operator>(const postime_t &t);
141 
151  bool operator>(const timespec &t);
152 
153 
163  int after(const postime_t &t);
164 
172  postime_t operator-(const postime_t &t);
173 
182  postime_t operator+(const postime_t &t);
183 
192  postime_t operator+(int t);
193 
202  postime_t& operator+=(const postime_t &t);
203 
212  postime_t& operator+=(int t);
213 };
214 
223 
232 timespec postimespec(int timeout);
233 
234 #endif /* __POSLIB_POSTIME_H */
235