1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>LCOV - lcov.info - /usr/include/apt-pkg/progress.h</title>
<link rel="stylesheet" type="text/css" href="../../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td class="headerItem" width="20%">Current view:</td>
<td class="headerValue" width="80%" colspan=4><a href="../../../index.html">directory</a> - <a href="index.html">usr/include/apt-pkg</a> - progress.h</td>
</tr>
<tr>
<td class="headerItem" width="20%">Test:</td>
<td class="headerValue" width="80%" colspan=4>lcov.info</td>
</tr>
<tr>
<td class="headerItem" width="20%">Date:</td>
<td class="headerValue" width="20%">2008-08-14</td>
<td width="20%"></td>
<td class="headerItem" width="20%">Instrumented lines:</td>
<td class="headerValue" width="20%">3</td>
</tr>
<tr>
<td class="headerItem" width="20%">Code covered:</td>
<td class="headerValue" width="20%">100.0 %</td>
<td width="20%"></td>
<td class="headerItem" width="20%">Executed lines:</td>
<td class="headerValue" width="20%">3</td>
</tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<table cellpadding=0 cellspacing=0 border=0>
<tr>
<td><br></td>
</tr>
<tr>
<td><pre class="source">
<span class="lineNum"> 1 </span> : // -*- mode: cpp; mode: fold -*-
<span class="lineNum"> 2 </span> : // Description /*{{{*/
<span class="lineNum"> 3 </span> : // $Id: progress.h,v 1.6 2001/05/07 05:06:52 jgg Exp $
<span class="lineNum"> 4 </span> : /* ######################################################################
<span class="lineNum"> 5 </span> :
<span class="lineNum"> 6 </span> : OpProgress - Operation Progress
<span class="lineNum"> 7 </span> :
<span class="lineNum"> 8 </span> : This class allows lengthy operations to communicate their progress
<span class="lineNum"> 9 </span> : to the GUI. The progress model is simple and is not designed to handle
<span class="lineNum"> 10 </span> : the complex case of the multi-activity aquire class.
<span class="lineNum"> 11 </span> :
<span class="lineNum"> 12 </span> : The model is based on the concept of an overall operation consisting
<span class="lineNum"> 13 </span> : of a series of small sub operations. Each sub operation has it's own
<span class="lineNum"> 14 </span> : completion status and the overall operation has it's completion status.
<span class="lineNum"> 15 </span> : The units of the two are not mixed and are completely independent.
<span class="lineNum"> 16 </span> :
<span class="lineNum"> 17 </span> : The UI is expected to subclass this to provide the visuals to the user.
<span class="lineNum"> 18 </span> :
<span class="lineNum"> 19 </span> : ##################################################################### */
<span class="lineNum"> 20 </span> : /*}}}*/
<span class="lineNum"> 21 </span> : #ifndef PKGLIB_PROGRESS_H
<span class="lineNum"> 22 </span> : #define PKGLIB_PROGRESS_H
<span class="lineNum"> 23 </span> :
<span class="lineNum"> 24 </span> :
<span class="lineNum"> 25 </span> : #include <string>
<span class="lineNum"> 26 </span> : #include <sys/time.h>
<span class="lineNum"> 27 </span> :
<span class="lineNum"> 28 </span> : using std::string;
<span class="lineNum"> 29 </span> :
<span class="lineNum"> 30 </span> : class Configuration;
<span class="lineNum"> 31 </span> : class OpProgress
<span class="lineNum"> 32 </span> : {
<span class="lineNum"> 33 </span> : unsigned long Current;
<span class="lineNum"> 34 </span> : unsigned long Total;
<span class="lineNum"> 35 </span> : unsigned long Size;
<span class="lineNum"> 36 </span> : unsigned long SubTotal;
<span class="lineNum"> 37 </span> : float LastPercent;
<span class="lineNum"> 38 </span> :
<span class="lineNum"> 39 </span> : // Change reduction code
<span class="lineNum"> 40 </span> : struct timeval LastTime;
<span class="lineNum"> 41 </span> : string LastOp;
<span class="lineNum"> 42 </span> : string LastSubOp;
<span class="lineNum"> 43 </span> :
<span class="lineNum"> 44 </span> : protected:
<span class="lineNum"> 45 </span> :
<span class="lineNum"> 46 </span> : string Op;
<span class="lineNum"> 47 </span> : string SubOp;
<span class="lineNum"> 48 </span> : float Percent;
<span class="lineNum"> 49 </span> :
<span class="lineNum"> 50 </span> : bool MajorChange;
<span class="lineNum"> 51 </span> :
<span class="lineNum"> 52 </span> : bool CheckChange(float Interval = 0.7);
<span class="lineNum"> 53 </span><span class="lineCov"> 24433 : virtual void Update() {};</span>
<span class="lineNum"> 54 </span> :
<span class="lineNum"> 55 </span> : public:
<span class="lineNum"> 56 </span> :
<span class="lineNum"> 57 </span> : void Progress(unsigned long Current);
<span class="lineNum"> 58 </span> : void SubProgress(unsigned long SubTotal);
<span class="lineNum"> 59 </span> : void SubProgress(unsigned long SubTotal,const string &Op);
<span class="lineNum"> 60 </span> : void OverallProgress(unsigned long Current,unsigned long Total,
<span class="lineNum"> 61 </span> : unsigned long Size,const string &Op);
<span class="lineNum"> 62 </span><span class="lineCov"> 62 : virtual void Done() {};</span>
<span class="lineNum"> 63 </span> :
<span class="lineNum"> 64 </span> : OpProgress();
<span class="lineNum"> 65 </span><span class="lineCov"> 29 : virtual ~OpProgress() {};</span>
<span class="lineNum"> 66 </span> : };
<span class="lineNum"> 67 </span> :
<span class="lineNum"> 68 </span> : class OpTextProgress : public OpProgress
<span class="lineNum"> 69 </span> : {
<span class="lineNum"> 70 </span> : protected:
<span class="lineNum"> 71 </span> :
<span class="lineNum"> 72 </span> : string OldOp;
<span class="lineNum"> 73 </span> : bool NoUpdate;
<span class="lineNum"> 74 </span> : bool NoDisplay;
<span class="lineNum"> 75 </span> : unsigned long LastLen;
<span class="lineNum"> 76 </span> : virtual void Update();
<span class="lineNum"> 77 </span> : void Write(const char *S);
<span class="lineNum"> 78 </span> :
<span class="lineNum"> 79 </span> : public:
<span class="lineNum"> 80 </span> :
<span class="lineNum"> 81 </span> : virtual void Done();
<span class="lineNum"> 82 </span> :
<span class="lineNum"> 83 </span> : OpTextProgress(bool NoUpdate = false) : NoUpdate(NoUpdate),
<span class="lineNum"> 84 </span> : NoDisplay(false), LastLen(0) {};
<span class="lineNum"> 85 </span> : OpTextProgress(Configuration &Config);
<span class="lineNum"> 86 </span> : virtual ~OpTextProgress() {Done();};
<span class="lineNum"> 87 </span> : };
<span class="lineNum"> 88 </span> :
<span class="lineNum"> 89 </span> : #endif
</pre>
</td>
</tr>
</table>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
</table>
<br>
</body>
</html>
|