00001 #ifndef HEADER_CURL_TOOL_CB_PRG_H 00002 #define HEADER_CURL_TOOL_CB_PRG_H 00003 /*************************************************************************** 00004 * _ _ ____ _ 00005 * Project ___| | | | _ \| | 00006 * / __| | | | |_) | | 00007 * | (__| |_| | _ <| |___ 00008 * \___|\___/|_| \_\_____| 00009 * 00010 * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al. 00011 * 00012 * This software is licensed as described in the file COPYING, which 00013 * you should have received as part of this distribution. The terms 00014 * are also available at https://curl.haxx.se/docs/copyright.html. 00015 * 00016 * You may opt to use, copy, modify, merge, publish, distribute and/or sell 00017 * copies of the Software, and permit persons to whom the Software is 00018 * furnished to do so, under the terms of the COPYING file. 00019 * 00020 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 00021 * KIND, either express or implied. 00022 * 00023 ***************************************************************************/ 00024 #include "tool_setup.h" 00025 00026 #define CURL_PROGRESS_STATS 0 /* default progress display */ 00027 #define CURL_PROGRESS_BAR 1 00028 00029 struct ProgressData { 00030 int calls; 00031 curl_off_t prev; 00032 struct timeval prevtime; 00033 int width; 00034 FILE *out; /* where to write everything to */ 00035 curl_off_t initial_size; 00036 }; 00037 00038 void progressbarinit(struct ProgressData *bar, 00039 struct OperationConfig *config); 00040 00041 /* 00042 ** callback for CURLOPT_PROGRESSFUNCTION 00043 */ 00044 00045 int tool_progress_cb(void *clientp, 00046 curl_off_t dltotal, curl_off_t dlnow, 00047 curl_off_t ultotal, curl_off_t ulnow); 00048 00049 #endif /* HEADER_CURL_TOOL_CB_PRG_H */ 00050