Twitch SDK (Internal)
reportadeventtask.h
Go to the documentation of this file.
1 #pragma once
2 
5 
9 
10 #include <map>
11 
12 namespace ttv
13 {
14  namespace ads
15  {
16  class ReportAdEventTask;
17  }
18 }
19 
21 {
22 public:
23  using Callback = std::function<void(ReportAdEventTask* source, TTV_ErrorCode ec)>;
24 
25 public:
26  ReportAdEventTask(const std::string& adUrlTemplate, const std::map<std::string, std::string>& macroSubstitutions, const Callback& callback);
27 
28  void OnComplete() override;
29 
30 protected:
31  virtual const char* GetTaskName() const override { return "FetchAdsTask"; }
32  virtual void FillHttpRequestInfo(HttpRequestInfo & requestInfo) override;
33 
34 private:
35  std::string mUrl;
37 };
ReportAdEventTask(const std::string &adUrlTemplate, const std::map< std::string, std::string > &macroSubstitutions, const Callback &callback)
std::string mUrl
Definition: reportadeventtask.h:35
Definition: httptask.h:19
virtual void FillHttpRequestInfo(HttpRequestInfo &requestInfo) override
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
virtual const char * GetTaskName() const override
Definition: reportadeventtask.h:31
std::function< void(ReportAdEventTask *source, TTV_ErrorCode ec)> Callback
Definition: reportadeventtask.h:23
Definition: reportadeventtask.h:20
void OnComplete() override
Callback mCallback
Definition: reportadeventtask.h:36
Definition: httptask.h:22