Twitch SDK (Internal)
channelinfotask.h
Go to the documentation of this file.
1 /********************************************************************************************
2 * Twitch Broadcasting SDK
3 *
4 * This software is supplied under the terms of a license agreement with Twitch Interactive, Inc. and
5 * may not be copied or used except in accordance with the terms of that agreement
6 * Copyright (c) 2012-2016 Twitch Interactive, Inc.
7 *********************************************************************************************/
8 
9 #pragma once
10 
12 
13 namespace ttv
14 {
15  namespace broadcast
16  {
17  class ChannelInfoTask;
18  }
19 }
20 
22 {
23 public:
24  struct Result
25  {
26  std::string streamKey;
27  std::string loginName;
28  std::string displayName;
29  std::string url;
31  };
32 
33  typedef std::function<void(ChannelInfoTask* source, TTV_ErrorCode ec, const std::shared_ptr<Result>& result)> Callback;
34 
35 public:
36  ChannelInfoTask(const std::string& oauthToken, Callback callback);
37 
38  virtual const char* GetTaskName() const override { return "ChannelInfoTask"; }
39 
40 protected:
41  virtual void FillHttpRequestInfo(HttpRequestInfo& requestInfo) override;
42  virtual void ProcessResponse(uint statusCode, const std::vector<char>& response) override;
43  virtual void OnComplete() override;
44 
45 private:
46  std::shared_ptr<Result> mResult;
48 };
Callback mCallback
Definition: channelinfotask.h:47
std::shared_ptr< Result > mResult
Definition: channelinfotask.h:46
std::string streamKey
Definition: channelinfotask.h:26
Definition: channelinfotask.h:24
Definition: httptask.h:19
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
std::string loginName
Definition: channelinfotask.h:27
virtual void ProcessResponse(uint statusCode, const std::vector< char > &response) override
Definition: channelinfotask.h:21
unsigned int uint
Definition: coretypes.h:18
ChannelInfoTask(const std::string &oauthToken, Callback callback)
ChannelId channelId
Definition: channelinfotask.h:30
virtual void FillHttpRequestInfo(HttpRequestInfo &requestInfo) override
uint32_t ChannelId
Definition: coretypes.h:23
virtual void OnComplete() override
virtual const char * GetTaskName() const override
Definition: channelinfotask.h:38
std::string displayName
Definition: channelinfotask.h:28
Definition: httptask.h:22
std::string url
Definition: channelinfotask.h:29
std::function< void(ChannelInfoTask *source, TTV_ErrorCode ec, const std::shared_ptr< Result > &result)> Callback
Definition: channelinfotask.h:33