Lines Matching defs:prog
67 progress_init(progress_t *prog, const char *prefix, uint64_t total)
72 (void) memset(prog, 0x0, sizeof(*prog));
73 prog->size = total;
74 prog->prefix = strdup(prefix);
75 prog->start = time(NULL);
78 prog->ttywidth = winsize.ws_col;
80 prog->ttywidth = DEFAULT_TTYWIDTH;
88 progress_update(progress_t *prog, uint64_t done)
90 prog->done = done;
91 prog->percent = (prog->done * 100) / prog->size;
92 prog->now = time(NULL);
93 prog->elapsed = prog->now - prog->start;
94 if (done == 0 || prog->elapsed == 0 || prog->done / prog->elapsed == 0) {
95 prog->eta = 0;
97 prog->eta = prog->size / (prog->done / prog->elapsed) - prog->elapsed;
104 progress_reset_size(progress_t *prog, uint64_t size)
106 prog->size = size;
112 progress_complete(progress_t *prog, uint64_t done)
114 progress_update(prog, done);
115 progress_draw(prog);
122 progress_draw(progress_t *prog)
147 prefix_len = strlen(prog->prefix);
148 barlength = MIN(sizeof(buf) - 1, (unsigned)prog->ttywidth) -
158 tmp_prefix_len = MIN(sizeof(buf) - 1,(unsigned)prog->ttywidth) -
165 starc = (barlength * prog->percent) / 100;
166 abbrevsize = prog->done;
174 if (prog->done > 0) {
175 bytespersec = prog->done;
176 if (prog->elapsed > 0) {
177 bytespersec /= prog->elapsed;
183 if (prog->done == 0 || prog->elapsed <= 0 || prog->done > prog->size) {
186 secsleft = prog->eta;
196 prefix_len, (prog->prefix) ? prog->prefix : "",
197 (long long)prog->percent,