rpm  4.5
rpmsw.h
Go to the documentation of this file.
1 #ifndef H_RPMSW
2 #define H_RPMSW
3 
10 typedef unsigned long int rpmtime_t;
11 
14 typedef struct rpmsw_s * rpmsw;
15 
18 typedef struct rpmop_s * rpmop;
19 
22 struct rpmsw_s {
23  union {
24  struct timeval tv;
25  unsigned long long int ticks;
26  unsigned long int tocks[2];
27  } u;
28 };
29 
33 struct rpmop_s {
34  struct rpmsw_s begin;
35  int count;
36  size_t bytes;
38 };
39 
40 #ifdef __cplusplus
41 extern "C" {
42 #endif
43 
48 /*@-exportlocal@*/
49 /*@null@*/
50 rpmsw rpmswNow(/*@returned@*/ rpmsw sw)
51  /*@globals internalState @*/
52  /*@modifies sw, internalState @*/;
53 /*@=exportlocal@*/
54 
60 /*@-exportlocal@*/
61 rpmtime_t rpmswDiff(/*@null@*/ rpmsw end, /*@null@*/ rpmsw begin)
62  /*@*/;
63 /*@=exportlocal@*/
64 
68 /*@-exportlocal@*/
69 rpmtime_t rpmswInit(void)
70  /*@globals internalState @*/
71  /*@modifies internalState @*/;
72 /*@=exportlocal@*/
73 
80 int rpmswEnter(/*@null@*/ rpmop op, ssize_t rc)
81  /*@globals internalState @*/
82  /*@modifies *op, internalState @*/;
83 
90 rpmtime_t rpmswExit(/*@null@*/ rpmop op, ssize_t rc)
91  /*@globals internalState @*/
92  /*@modifies op, internalState @*/;
93 
100 rpmtime_t rpmswAdd(/*@null@*/ rpmop to, /*@null@*/ rpmop from)
101  /*@modifies to @*/;
102 
109 rpmtime_t rpmswSub(rpmop to, rpmop from)
110  /*@modifies to @*/;
111 
117 void rpmswPrint(const char * name, /*@null@*/ rpmop op)
118  /*@globals fileSystem @*/
119  /*@modifies fileSystem @*/;
120 
121 #ifdef __cplusplus
122 }
123 #endif
124 
125 #endif /* H_RPMSW */