summaryrefslogtreecommitdiff
path: root/src/http.hpp
diff options
context:
space:
mode:
authorouwou <26526779+ouwou@users.noreply.github.com>2022-07-07 03:09:54 -0400
committerouwou <26526779+ouwou@users.noreply.github.com>2022-07-07 03:09:54 -0400
commit41776fbd023df1c4a70ffa46e8f81c6aea9f7b7f (patch)
tree12529298666543801a0e46c1fa83099e69968ddc /src/http.hpp
parent5c7631e71382b0c1727bd8e1487a7e41feaf2efc (diff)
downloadabaddon-portaudio-41776fbd023df1c4a70ffa46e8f81c6aea9f7b7f.tar.gz
abaddon-portaudio-41776fbd023df1c4a70ffa46e8f81c6aea9f7b7f.zip
add upload progress bar
Diffstat (limited to 'src/http.hpp')
-rw-r--r--src/http.hpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/http.hpp b/src/http.hpp
index a6f479d..90a514a 100644
--- a/src/http.hpp
+++ b/src/http.hpp
@@ -1,5 +1,6 @@
#pragma once
#include <array>
+#include <functional>
#include <set>
#include <string>
#include <curl/curl.h>
@@ -109,6 +110,7 @@ struct request {
const std::string &get_url() const;
const char *get_method() const;
+ void set_progress_callback(std::function<void(curl_off_t, curl_off_t)> func);
void set_verify_ssl(bool verify);
void set_proxy(const std::string &proxy);
void set_header(const std::string &name, const std::string &value);
@@ -129,8 +131,11 @@ private:
curl_slist *m_header_list = nullptr;
std::array<char, CURL_ERROR_SIZE> m_error_buf = { 0 };
curl_mime *m_form = nullptr;
+ std::function<void(curl_off_t, curl_off_t)> m_progress_callback;
std::set<Glib::RefPtr<Gio::FileInputStream>> m_read_streams;
+
+ friend size_t http_req_xferinfofunc(void *, curl_off_t, curl_off_t, curl_off_t, curl_off_t);
};
using response_type = response;