21 #ifndef CLIENT_DRES_H_
22 #define CLIENT_DRES_H_
25 #include <nlohmann/json.hpp>
56 SHLOG_D(
"Setting `_user_token` to " << val);
79 virtual bool login()
override;
80 virtual bool logout()
override;
109 return "interaction";
113 std::string msg{
"Unknown log type!" };
114 throw std::runtime_error{ msg };
120 nlohmann::json& res)
const;
Specific DRES server implementation.
Definition: client-dres.h:73
const std::chrono::milliseconds _sync_period
Definition: client-dres.h:124
LogType
Definition: client-dres.h:89
virtual bool submit(const VideoFrame &frame) override
Definition: client-dres.cpp:177
std::ptrdiff_t _diff
Definition: client-dres.h:130
~ClientDres() noexcept
Definition: client-dres.cpp:68
virtual bool logout() override
Definition: client-dres.cpp:124
EvalServerSettings::ServerConfigDres _settings
Definition: client-dres.h:126
virtual bool send_results_log(const nlohmann::json &log_JSON) override
Definition: client-dres.cpp:244
virtual bool send_interactions_log(const nlohmann::json &log_JSON) override
Definition: client-dres.cpp:258
virtual nlohmann::json get_current_task() override
Definition: client-dres.cpp:282
ClientDres(const EvalServerSettings &settings)
Definition: client-dres.cpp:29
virtual bool login() override
Definition: client-dres.cpp:70
std::thread _t_sync_worker
Definition: client-dres.h:127
std::string log_type_to_str(LogType t) const
Definition: client-dres.h:90
nlohmann::json _current_task
Definition: client-dres.h:131
void write_log(LogType type, UnixTimestamp ts, const std::string &URL, const nlohmann::json &req, ReqCode code, nlohmann::json &res) const
Definition: client-dres.cpp:296
bool _synced
Definition: client-dres.h:129
virtual UnixTimestamp get_server_ts() override
Definition: client-dres.cpp:273
Unified interface for all remote evaluation servers.
Definition: client-dres.h:34
virtual bool get_do_requests() const
Definition: client-dres.h:52
virtual void set_do_requests(bool val)
Definition: client-dres.h:51
virtual bool send_results_log(const nlohmann::json &log_JSON)=0
virtual bool is_logged_in() const
Definition: client-dres.h:49
IServerClient(const EvalServerSettings &settings)
Definition: client-dres.h:37
virtual nlohmann::json get_current_task()=0
virtual UnixTimestamp get_server_ts()=0
std::string _username
Definition: client-dres.h:65
virtual const std::string & get_user_token() const
Definition: client-dres.h:50
virtual void set_user_token(const std::string &val)
Definition: client-dres.h:55
virtual bool send_interactions_log(const nlohmann::json &log_JSON)=0
bool _do_requests
Definition: client-dres.h:63
Http _http
Definition: client-dres.h:64
EvalServerSettings _eval_server_settings
Definition: client-dres.h:58
virtual bool submit(const VideoFrame &frame)=0
Definition: common-types.h:33
std::size_t ReqCode
Definition: http.h:35
std::int64_t UnixTimestamp
Definition: common-types.h:54
#define SHLOG_D(x)
Definition: static-logger.hpp:179
Config for submitting to the DRES server.
Definition: settings.h:74
Definition: settings.h:59
Definition: dataset-frames.h:40