mastodon-cpp  0.18.9
card.hpp
1 /* This file is part of mastodon-cpp.
2  * Copyright © 2018 tastytea <tastytea@tastytea.de>
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation, version 3.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  */
16 
17 #ifndef MASTODON_CPP_EASY_CARD_HPP
18 #define MASTODON_CPP_EASY_CARD_HPP
19 
20 #include <string>
21 #include <cstdint>
22 
23 // If we are compiling mastodon-cpp, use another include path
24 #ifdef MASTODON_CPP
25  #include "mastodon-cpp.hpp"
26  #include "easy/easy.hpp"
27 #else
28  #include <mastodon-cpp/mastodon-cpp.hpp>
29  #include <mastodon-cpp/easy/easy.hpp>
30 #endif
31 
32 using std::string;
33 using std::uint_fast64_t;
34 
35 namespace Mastodon
36 {
42  class Easy::Card : public Easy::Entity
43  {
44  public:
52  explicit Card(const string &json);
53 
59  Card();
60 
61  virtual const bool valid() const;
62 
68  const string author_name() const;
69 
75  const string author_url() const;
76 
82  const string description() const;
83 
89  const uint_fast64_t height() const;
90 
96  const string html() const;
97 
103  const string image() const;
104 
110  const string provider_name() const;
111 
117  const string provider_url() const;
118 
124  const string title() const;
125 
131  const Easy::card_type type() const;
132 
138  const string url() const;
139 
145  const uint_fast64_t width() const;
146  };
147 }
148 
149 #endif // MASTODON_CPP_EASY_CARD_HPP
const string provider_url() const
Returns the URL of the provider.
Definition: card.cpp:79
Class to hold cards.
Definition: card.hpp:42
card_type
Describes the card type.
Definition: easy.hpp:96
const string title() const
Returns the title.
Definition: card.cpp:84
const string description() const
Returns the description.
Definition: card.cpp:54
const uint_fast64_t height() const
Returns the height of the card.
Definition: card.cpp:59
const string author_url() const
Returns the URL of the author.
Definition: card.cpp:49
Card()
Constructs an empty Card object.
Definition: card.cpp:27
const string url() const
Returns the URL associated with the card.
Definition: card.cpp:105
const string author_name() const
Returns the name of the author.
Definition: card.cpp:44
const string provider_name() const
Returns the name of the provider.
Definition: card.cpp:74
virtual const bool valid() const
Returns true if the Entity holds valid data.
Definition: card.cpp:31
const Easy::card_type type() const
Returns the type of the card.
Definition: card.cpp:89
const uint_fast64_t width() const
Returns the width of the card.
Definition: card.cpp:110
Definition: mastodon-cpp.hpp:52
Base class for all entities.
Definition: easy.hpp:304
const string image() const
Returns the URL of the image associated with the card.
Definition: card.cpp:69
const string html() const
Returns the HTML.
Definition: card.cpp:64