Chatterino
FfzEmotes.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include <memory>
4 #include "boost/optional.hpp"
5 #include "common/Aliases.hpp"
6 #include "common/Atomic.hpp"
8 
9 namespace chatterino {
10 
11 struct Emote;
12 using EmotePtr = std::shared_ptr<const Emote>;
13 class EmoteMap;
14 
15 class FfzEmotes final
16 {
17  static constexpr const char *globalEmoteApiUrl =
18  "https://api.frankerfacez.com/v1/set/global";
19 
20 public:
21  FfzEmotes();
22 
23  std::shared_ptr<const EmoteMap> emotes() const;
24  boost::optional<EmotePtr> emote(const EmoteName &name) const;
25  void loadEmotes();
26  static void loadChannel(
27  std::weak_ptr<Channel> channel, const QString &channelId,
28  std::function<void(EmoteMap &&)> emoteCallback,
29  std::function<void(boost::optional<EmotePtr>)> modBadgeCallback,
30  std::function<void(boost::optional<EmotePtr>)> vipBadgeCallback,
31  bool manualRefresh);
32 
33 private:
35 };
36 
37 } // namespace chatterino
Definition: Application.cpp:48
void loadEmotes()
Definition: FfzEmotes.cpp:201
std::shared_ptr< const Emote > EmotePtr
Definition: Emote.hpp:38
Definition: Emote.hpp:40
static void loadChannel(std::weak_ptr< Channel > channel, const QString &channelId, std::function< void(EmoteMap &&)> emoteCallback, std::function< void(boost::optional< EmotePtr >)> modBadgeCallback, std::function< void(boost::optional< EmotePtr >)> vipBadgeCallback, bool manualRefresh)
Definition: FfzEmotes.cpp:225
Definition: FfzEmotes.hpp:15
boost::optional< EmotePtr > emote(const EmoteName &name) const
Definition: FfzEmotes.cpp:192
std::shared_ptr< const EmoteMap > emotes() const
Definition: FfzEmotes.cpp:187
QString name
Definition: Credentials.cpp:94
FfzEmotes()
Definition: FfzEmotes.cpp:182
Definition: Atomic.hpp:9