This massive commit does several things.

- Implement basic megolm/olm session support. In short, libleet can now
  send encrypted messages.
- Implement several Matrix features, such as VOIP, registering, sync
  endpoint, and much more.
- Add more examples.
- Add Visual Studio solution.
- Include doxygen documentation with the project.
- Handle nlohmann::json exceptions using try/catch.
This commit is contained in:
Jacob 2023-12-02 12:10:21 +01:00
parent d34e3e6434
commit bbef21b72b
433 changed files with 46199 additions and 668 deletions

1
.gitignore vendored
View file

@ -1,2 +1,3 @@
examples/test.cpp
test
build

0
LICENSE Normal file → Executable file
View file

84
README.md Normal file → Executable file
View file

@ -1,6 +1,15 @@
# libleet
C++ Matrix library
C++ Matrix client library which aims to support most features in the Matrix
specification, as well as Element features for a great user experience.
**This library is very much work in progress.**
Expect things to change, and as such it is not suitable for use
yet. If you wish to help implement some of the many Matrix
features, feel free to do so in the form of a pull request.
libleet is the library that powers the backend for the
work-in-progress Matrix client [stellar](https://git.speedie.site/speedie/stellar).
## Currently supports
@ -8,37 +17,92 @@ C++ Matrix library
- Logging in
- Message (including attachment) downloading
- Message sending
- Room creation
- User listing
- Room listing (including those inside spaces)
- Space listing
- Aliases
- mxc:// uploading and downloading
- Attachment uploading and downloading
- Discovery
- Refresh tokens
- End to end encryption
- Can send encrypted text messages.
- Currently **cannot** send encrypted attachments, read encrypted messages,
verify interactively or use key backups.
- VOIP
- Can retrieve TURN server credentials. Not much thought has been put into
VOIP support, because I am not a big fan of how it is implemented in Matrix.
- And more trivial features that I don't think are worth listing here.
This library is very much work in progress. Expect things to change,
and as such it is not suitable for use yet. If you wish to help
implement some of the many Matrix features, feel free to do so.
## Not yet supported
- Managing rooms/spaces
- Creating spaces
- Storing custom data
- Device management
- Threads
- Third-party/Phone number/SSO authentication
- Various end-to-end encryption shit
- Push notification endpoints
- Read marker
- User presence
- Reporting content
- Room upgrades (probably won't implement because it's 2023)
## Dependencies
- cpr
- olm
- openssl
- nlohmann\_json
- C++20
- C++20 [compiler](https://en.cppreference.com/w/cpp/compiler_support/20)
- olm
- For end to end encryption, -DLEET\_NO\_ENCRYPTION to disable
- openssl
- For end to end encryption, -DLEET\_NO\_ENCRYPTION to disable
## Compiling and installing
If you use the meson build system, you can compile
libleet like this:
- `meson setup build --prefix=/usr --reconfigure`
- `cd build`
- `meson install`
To generate documentation: `cd docs; doxygen; cd ..`
If you're compiling with Visual Studio, you can use the
solution. I don't use Windows so I don't really know if
it works very well. Please note that with this approach
you must compile olm separately for Windows.
## Design goals
- Easy to use
- Make use of C++ features
- Support Element as well as possible
- Be modern. libleet uses modern C++ features where appropriate
- Simplify much of the junk so that developers can just focus on
designing their user interface
## Features to implement
See TODO.
See the Issue tracker, as well as 'Not yet supported'.
## Examples
You can find examples in the examples subdirectory.
For simplicity, they must all be compiled from the Git
root directory, rather than dynamically linked.
In addition,
[stellar-backend](https://git.speedie.site/speedie/stellar-backend)
is a web API which may also *serve* (get it?) as an example
for how to write a program to interface with Matrix using libleet.
## License
Affero GNU General Public License version 3.0.
The project is licensed under the GNU Affero General
Public License version 3.0, which means it is
free software as defined by the Free Software Foundation.
Copyright (c) 2023 speedie (https://speedie.site)

2822
docs/Doxyfile Executable file

File diff suppressed because it is too large Load diff

View file

@ -1,6 +0,0 @@
# libleet
libleet is a Matrix client library which can be used by C++ programmers to
write Matrix clients, both simple and complex.
TODO: Write function documentation

98
docs/html/Encryption_8cpp.html Executable file
View file

@ -0,0 +1,98 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Encryption.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Encryption.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="Encryption_8cpp__dep__incl.png" border="0" usemap="#a_2home_2speedie_2libleet_2src_2Encryption_8cppdep" alt=""/></div>
<map name="a_2home_2speedie_2libleet_2src_2Encryption_8cppdep" id="a_2home_2speedie_2libleet_2src_2Encryption_8cppdep">
<area shape="rect" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" href="libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>
</div>
</div>
<p><a href="Encryption_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="/home/speedie/libleet/src/Encryption.cpp" name="/home/speedie/libleet/src/Encryption.cpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" id="Node000002" href="$libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>

View file

@ -0,0 +1 @@
8a241d1f5b5143f8b9c7da15723ad159

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

View file

@ -0,0 +1,187 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Encryption.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Encryption.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="Encryption_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* libleet</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Matrix client library written in C++</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Licensed under the GNU Affero General Public License version 3.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * See included LICENSE file for more information.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * https://git.speedie.site/speedie/libleet</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment">/* Note that most of these functions are simply convenient wrappers which do most of the work for you.</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"> * If you want, you can set up an olmAccount and Encryption object manually.</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"> */</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifndef LEET_NO_ENCRYPTION</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="foldopen" id="foldopen00014" data-start="{" data-end="}">
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="namespaceleet.html#a90817bf0adfacb8ac0c3d147b4e91383"> 14</a></span><a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a> <a class="code hl_function" href="namespaceleet.html#a90817bf0adfacb8ac0c3d147b4e91383">leet::initEncryption</a>() {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a> enc;</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> enc.<a class="code hl_variable" href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">account</a>.<a class="code hl_function" href="classleet_1_1olmAccount.html#a630917281fbc3411146c7f2eb6266601">createAccount</a>();</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> enc.<a class="code hl_variable" href="classleet_1_1Encryption.html#a9d7f4cc589f078123749f1ee4be2f423">hasCreatedAccount</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keywordflow">return</span> enc;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span>}</div>
</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="foldopen" id="foldopen00021" data-start="{" data-end="}">
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="namespaceleet.html#abe4fc964ac712876ba14d6d584c74201"> 21</a></span><a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a> <a class="code hl_function" href="namespaceleet.html#abe4fc964ac712876ba14d6d584c74201">leet::initEncryptionFromPickle</a>(<span class="keyword">const</span> std::string&amp; pickleKey, <span class="keyword">const</span> std::string&amp; pickleData) {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a> enc;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> enc.<a class="code hl_variable" href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">account</a>.<a class="code hl_function" href="classleet_1_1olmAccount.html#aa87110b7a44952292e48fdb46ba30d00">loadAccount</a>(pickleKey, pickleData);</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> enc.<a class="code hl_variable" href="classleet_1_1Encryption.html#a9d7f4cc589f078123749f1ee4be2f423">hasCreatedAccount</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordflow">return</span> enc;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>}</div>
</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="foldopen" id="foldopen00030" data-start="{" data-end="}">
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="namespaceleet.html#a9fcad94c6a7ae5a4c4f054dec8e0eee5"> 30</a></span><a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a> <a class="code hl_function" href="namespaceleet.html#a9fcad94c6a7ae5a4c4f054dec8e0eee5">leet::uploadKeys</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a>* enc) {</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a> ret = *enc;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">if</span> (!ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#a9d7f4cc589f078123749f1ee4be2f423">hasCreatedAccount</a>) {</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">throw</span> std::runtime_error{ <span class="stringliteral">&quot;olmAccount: Account has not been created.&quot;</span> };</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> }</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">if</span> (ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#a11be787f5f97dfd5de5a6862f9ab349c">Cleaned</a>) {</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">throw</span> std::runtime_error{ <span class="stringliteral">&quot;olmAccount: Memory has already been cleared.&quot;</span> };</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> }</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">account</a>.<a class="code hl_function" href="classleet_1_1olmAccount.html#af92b2a11dc88153b2ae48fdc895b2c41">createIdentity</a>();</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">account</a>.<a class="code hl_function" href="classleet_1_1olmAccount.html#ad11b6a0848606c7ffead1ef4741772f3">upload</a>(resp);</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#a1782b7f9823c06e6d105b9e86e08304e">hasUploadedKeys</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>}</div>
</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="foldopen" id="foldopen00047" data-start="{" data-end="}">
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="namespaceleet.html#acdb542395be8170f719a8a7ad0ef0ac2"> 47</a></span><a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a> <a class="code hl_function" href="namespaceleet.html#acdb542395be8170f719a8a7ad0ef0ac2">leet::createSessionInRoom</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a>* enc, <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>* room) {</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a> ret = *enc;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">if</span> (!ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#a9d7f4cc589f078123749f1ee4be2f423">hasCreatedAccount</a>) {</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">throw</span> std::runtime_error{ <span class="stringliteral">&quot;olmAccount: Account has not been created.&quot;</span> };</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> }</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">if</span> (ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#a11be787f5f97dfd5de5a6862f9ab349c">Cleaned</a>) {</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">throw</span> std::runtime_error{ <span class="stringliteral">&quot;olmAccount: Memory has already been cleared.&quot;</span> };</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> }</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span> (!ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#a1782b7f9823c06e6d105b9e86e08304e">hasUploadedKeys</a>) {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">throw</span> std::runtime_error{ <span class="stringliteral">&quot;olmAccount: Keys have not been uploaded. (!ret.hasUploadedKeys)&quot;</span> };</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> }</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="comment">// TODO: Store megolm sessions</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">account</a>.<a class="code hl_function" href="classleet_1_1olmAccount.html#ac41a8db6a79cc11b67588592aa7f48cb">createMegolmSession</a>();</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> std::vector&lt;leet::User::Profile&gt; users = <a class="code hl_function" href="namespaceleet.html#a00a66e98469fbf8978fc3face0deb78a">leet::returnUsersInRoom</a>(resp, room);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> ret.<a class="code hl_variable" href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">account</a>.<a class="code hl_function" href="classleet_1_1olmAccount.html#a10d76b67a728792ee645ba904d7a3f46">createSession</a>(resp, room, users);</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span>}</div>
</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span><span class="preprocessor">#endif </span><span class="comment">// !LEET_NO_ENCRYPTION</span></div>
<div class="ttc" id="aclassleet_1_1Encryption_html"><div class="ttname"><a href="classleet_1_1Encryption.html">leet::Encryption</a></div><div class="ttdoc">Class which hopefully allows you to safely handle encryption and Olm memory.</div><div class="ttdef"><b>Definition</b> libleet.hpp:1568</div></div>
<div class="ttc" id="aclassleet_1_1Encryption_html_a11be787f5f97dfd5de5a6862f9ab349c"><div class="ttname"><a href="classleet_1_1Encryption.html#a11be787f5f97dfd5de5a6862f9ab349c">leet::Encryption::Cleaned</a></div><div class="ttdeci">bool Cleaned</div><div class="ttdef"><b>Definition</b> libleet.hpp:1574</div></div>
<div class="ttc" id="aclassleet_1_1Encryption_html_a1782b7f9823c06e6d105b9e86e08304e"><div class="ttname"><a href="classleet_1_1Encryption.html#a1782b7f9823c06e6d105b9e86e08304e">leet::Encryption::hasUploadedKeys</a></div><div class="ttdeci">bool hasUploadedKeys</div><div class="ttdef"><b>Definition</b> libleet.hpp:1572</div></div>
<div class="ttc" id="aclassleet_1_1Encryption_html_a9d7f4cc589f078123749f1ee4be2f423"><div class="ttname"><a href="classleet_1_1Encryption.html#a9d7f4cc589f078123749f1ee4be2f423">leet::Encryption::hasCreatedAccount</a></div><div class="ttdeci">bool hasCreatedAccount</div><div class="ttdef"><b>Definition</b> libleet.hpp:1573</div></div>
<div class="ttc" id="aclassleet_1_1Encryption_html_abe9300b67a75daedf15ff2a3d08540d6"><div class="ttname"><a href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">leet::Encryption::account</a></div><div class="ttdeci">leet::olmAccount account</div><div class="ttdef"><b>Definition</b> libleet.hpp:1571</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></div><div class="ttdoc">Class which represents a single room, along with its properties.</div><div class="ttdef"><b>Definition</b> libleet.hpp:202</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></div><div class="ttdoc">Class which contains the response from the Matrix homeserver on initial login.</div><div class="ttdef"><b>Definition</b> libleet.hpp:144</div></div>
<div class="ttc" id="aclassleet_1_1olmAccount_html_a10d76b67a728792ee645ba904d7a3f46"><div class="ttname"><a href="classleet_1_1olmAccount.html#a10d76b67a728792ee645ba904d7a3f46">leet::olmAccount::createSession</a></div><div class="ttdeci">void createSession(leet::User::CredentialsResponse *resp, leet::Room::Room *room, const std::vector&lt; leet::User::Profile &gt; &amp;users)</div><div class="ttdoc">Creates a session with one or more users in the current room.</div><div class="ttdef"><b>Definition</b> libleet.hpp:1149</div></div>
<div class="ttc" id="aclassleet_1_1olmAccount_html_a630917281fbc3411146c7f2eb6266601"><div class="ttname"><a href="classleet_1_1olmAccount.html#a630917281fbc3411146c7f2eb6266601">leet::olmAccount::createAccount</a></div><div class="ttdeci">void createAccount()</div><div class="ttdoc">Creates an account.</div><div class="ttdef"><b>Definition</b> libleet.hpp:820</div></div>
<div class="ttc" id="aclassleet_1_1olmAccount_html_aa87110b7a44952292e48fdb46ba30d00"><div class="ttname"><a href="classleet_1_1olmAccount.html#aa87110b7a44952292e48fdb46ba30d00">leet::olmAccount::loadAccount</a></div><div class="ttdeci">void loadAccount(const std::string &amp;pickleKey, const std::string &amp;pickleData)</div><div class="ttdoc">Loads an account from pickle data using the pickle key.</div><div class="ttdef"><b>Definition</b> libleet.hpp:848</div></div>
<div class="ttc" id="aclassleet_1_1olmAccount_html_ac41a8db6a79cc11b67588592aa7f48cb"><div class="ttname"><a href="classleet_1_1olmAccount.html#ac41a8db6a79cc11b67588592aa7f48cb">leet::olmAccount::createMegolmSession</a></div><div class="ttdeci">void createMegolmSession()</div><div class="ttdoc">Creates a Megolm session.</div><div class="ttdef"><b>Definition</b> libleet.hpp:863</div></div>
<div class="ttc" id="aclassleet_1_1olmAccount_html_ad11b6a0848606c7ffead1ef4741772f3"><div class="ttname"><a href="classleet_1_1olmAccount.html#ad11b6a0848606c7ffead1ef4741772f3">leet::olmAccount::upload</a></div><div class="ttdeci">void upload(leet::User::CredentialsResponse *resp)</div><div class="ttdoc">Uploads the device keys.</div><div class="ttdef"><b>Definition</b> libleet.hpp:978</div></div>
<div class="ttc" id="aclassleet_1_1olmAccount_html_af92b2a11dc88153b2ae48fdc895b2c41"><div class="ttname"><a href="classleet_1_1olmAccount.html#af92b2a11dc88153b2ae48fdc895b2c41">leet::olmAccount::createIdentity</a></div><div class="ttdeci">void createIdentity()</div><div class="ttdoc">Creates an identity.</div><div class="ttdef"><b>Definition</b> libleet.hpp:932</div></div>
<div class="ttc" id="anamespaceleet_html_a00a66e98469fbf8978fc3face0deb78a"><div class="ttname"><a href="namespaceleet.html#a00a66e98469fbf8978fc3face0deb78a">leet::returnUsersInRoom</a></div><div class="ttdeci">const std::vector&lt; User::Profile &gt; returnUsersInRoom(User::CredentialsResponse *resp, Room::Room *room)</div><div class="ttdoc">Returns a vector of all users in a room.</div><div class="ttdef"><b>Definition</b> User.cpp:182</div></div>
<div class="ttc" id="anamespaceleet_html_a90817bf0adfacb8ac0c3d147b4e91383"><div class="ttname"><a href="namespaceleet.html#a90817bf0adfacb8ac0c3d147b4e91383">leet::initEncryption</a></div><div class="ttdeci">Encryption initEncryption()</div><div class="ttdoc">Function that initializes an Encryption object properly.</div><div class="ttdef"><b>Definition</b> Encryption.cpp:14</div></div>
<div class="ttc" id="anamespaceleet_html_a9fcad94c6a7ae5a4c4f054dec8e0eee5"><div class="ttname"><a href="namespaceleet.html#a9fcad94c6a7ae5a4c4f054dec8e0eee5">leet::uploadKeys</a></div><div class="ttdeci">Encryption uploadKeys(User::CredentialsResponse *resp, Encryption *enc)</div><div class="ttdoc">Function that uploads encryption keys for your account to the Matrix home server.</div><div class="ttdef"><b>Definition</b> Encryption.cpp:30</div></div>
<div class="ttc" id="anamespaceleet_html_abe4fc964ac712876ba14d6d584c74201"><div class="ttname"><a href="namespaceleet.html#abe4fc964ac712876ba14d6d584c74201">leet::initEncryptionFromPickle</a></div><div class="ttdeci">Encryption initEncryptionFromPickle(const std::string &amp;pickleKey, const std::string &amp;pickleData)</div><div class="ttdoc">Function that initializes an Encryption object from a pickle key and pickle data.</div><div class="ttdef"><b>Definition</b> Encryption.cpp:21</div></div>
<div class="ttc" id="anamespaceleet_html_acdb542395be8170f719a8a7ad0ef0ac2"><div class="ttname"><a href="namespaceleet.html#acdb542395be8170f719a8a7ad0ef0ac2">leet::createSessionInRoom</a></div><div class="ttdeci">Encryption createSessionInRoom(User::CredentialsResponse *resp, Encryption *enc, Room::Room *room)</div><div class="ttdoc">Creates a session in a room.</div><div class="ttdef"><b>Definition</b> Encryption.cpp:47</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

98
docs/html/Event_8cpp.html Executable file
View file

@ -0,0 +1,98 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Event.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Event.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="Event_8cpp__dep__incl.png" border="0" usemap="#a_2home_2speedie_2libleet_2src_2Event_8cppdep" alt=""/></div>
<map name="a_2home_2speedie_2libleet_2src_2Event_8cppdep" id="a_2home_2speedie_2libleet_2src_2Event_8cppdep">
<area shape="rect" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" href="libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>
</div>
</div>
<p><a href="Event_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="/home/speedie/libleet/src/Event.cpp" name="/home/speedie/libleet/src/Event.cpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" id="Node000002" href="$libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>

View file

@ -0,0 +1 @@
417988628fa326227009d75cd7c7abd1

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

214
docs/html/Event_8cpp_source.html Executable file
View file

@ -0,0 +1,214 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Event.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Event.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="Event_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* libleet</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Matrix client library written in C++</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Licensed under the GNU Affero General Public License version 3.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * See included LICENSE file for more information.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * https://git.speedie.site/speedie/libleet</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="foldopen" id="foldopen00009" data-start="{" data-end="}">
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="namespaceleet.html#a422f2f5edf4183209f96b572cd0cbf73"> 9</a></span><span class="keyword">const</span> int32_t <a class="code hl_function" href="namespaceleet.html#a422f2f5edf4183209f96b572cd0cbf73">leet::returnUnixTimestamp</a>() {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> <span class="keywordflow">return</span> std::chrono::duration_cast&lt;std::chrono::seconds&gt;(std::chrono::system_clock::now().time_since_epoch()).count();</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span>}</div>
</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
<div class="foldopen" id="foldopen00013" data-start="{" data-end="}">
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="namespaceleet.html#a70ad6031c50aef71041c68eb5bf1c415"> 13</a></span><a class="code hl_class" href="classleet_1_1Event_1_1Event.html">leet::Event::Event</a> <a class="code hl_function" href="namespaceleet.html#a70ad6031c50aef71041c68eb5bf1c415">leet::returnEventFromTimestamp</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>* room, <span class="keyword">const</span> int32_t Timestamp, <span class="keyword">const</span> <span class="keywordtype">bool</span> Direction) {</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <a class="code hl_class" href="classleet_1_1Event_1_1Event.html">leet::Event::Event</a> event;</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> std::string Dir = Direction ? <span class="stringliteral">&quot;f&quot;</span> : <span class="stringliteral">&quot;b&quot;</span>;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v1/rooms/&quot;</span> + room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> + <span class="stringliteral">&quot;/timestamp_to_event&quot;</span> + <span class="stringliteral">&quot;?ts=&quot;</span> + std::to_string(Timestamp) + <span class="stringliteral">&quot;&amp;dir=&quot;</span> + Dir), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>);</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> json reqOutput;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keywordflow">return</span> event;</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> }</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;event_id&quot;</span>].is_string()) event.<a class="code hl_variable" href="classleet_1_1Event_1_1Event.html#a44de14ebc615616045df5595c763522c">eventID</a> = output[<span class="stringliteral">&quot;event_id&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;origin_server_ts&quot;</span>].is_number_integer()) event.<a class="code hl_variable" href="classleet_1_1Event_1_1Event.html#a9c67e05cdae82f0c6f758cd80190133a">Age</a> = output[<span class="stringliteral">&quot;origin_server_ts&quot;</span>].get&lt;<span class="keywordtype">int</span>&gt;();</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> }</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> }</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">return</span> event;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span>}</div>
</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="comment">/* Return a sync class containing several things */</span></div>
<div class="foldopen" id="foldopen00045" data-start="{" data-end="}">
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"><a class="line" href="namespaceleet.html#aed2232388d75a5b6837200d3d3009acc"> 45</a></span><a class="code hl_class" href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a> <a class="code hl_function" href="namespaceleet.html#aed2232388d75a5b6837200d3d3009acc">leet::returnSync</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp) {</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <a class="code hl_class" href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a> sync;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/sync&quot;</span>), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> json theOutput;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> theOutput = json::parse(Output);</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">return</span> sync;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> }</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> sync.<a class="code hl_variable" href="classleet_1_1Sync_1_1Sync.html#a2f7e58b985d4676bdb69cb69b6a9bbc8">theRequest</a> = theOutput;</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keyword">auto</span>&amp; reqOutput = theOutput[<span class="stringliteral">&quot;to_device&quot;</span>][<span class="stringliteral">&quot;events&quot;</span>];</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <a class="code hl_class" href="classleet_1_1Sync_1_1megolmSession.html">leet::Sync::megolmSession</a> megolmSession;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">if</span> (!output[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;sender_key&quot;</span>].is_null()) {</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#aff7c3cbe5d689e39f1f883a3756a974c">senderKey</a> = output[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;sender_key&quot;</span>];</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> }</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">if</span> (!output[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;algorithm&quot;</span>].is_null()) {</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#a83e4d359a3e4d40060358310b6dbcf49">Algorithm</a> = output[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;algorithm&quot;</span>];</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> }</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">if</span> (megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#aff7c3cbe5d689e39f1f883a3756a974c">senderKey</a>.compare(<span class="stringliteral">&quot;&quot;</span>)) {</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">if</span> (!output[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;ciphertext&quot;</span>][megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#aff7c3cbe5d689e39f1f883a3756a974c">senderKey</a>][<span class="stringliteral">&quot;body&quot;</span>].is_null()) {</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#a79a9a7f9811e4007d23f15e8b643ecf2">cipherText</a> = output[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;ciphertext&quot;</span>][megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#aff7c3cbe5d689e39f1f883a3756a974c">senderKey</a>][<span class="stringliteral">&quot;body&quot;</span>];</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> }</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span> (!output[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;ciphertext&quot;</span>][megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#aff7c3cbe5d689e39f1f883a3756a974c">senderKey</a>][<span class="stringliteral">&quot;type&quot;</span>].is_null()) {</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#a7f9ca69710f886c5463994ace9bedace">cipherType</a> = output[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;ciphertext&quot;</span>][megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#aff7c3cbe5d689e39f1f883a3756a974c">senderKey</a>][<span class="stringliteral">&quot;type&quot;</span>];</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> }</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> }</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">if</span> (!output[<span class="stringliteral">&quot;sender&quot;</span>].is_null()) {</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#a9429f9a7f131f323e99decd2a498a779">Sender</a> = output[<span class="stringliteral">&quot;sender&quot;</span>];</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> }</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">if</span> (!output[<span class="stringliteral">&quot;type&quot;</span>].is_null()) {</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> megolmSession.<a class="code hl_variable" href="classleet_1_1Sync_1_1megolmSession.html#a1f7aacb252a7f5a51cb2720b0d521732">Type</a> = output[<span class="stringliteral">&quot;type&quot;</span>];</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> }</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> </div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> sync.<a class="code hl_variable" href="classleet_1_1Sync_1_1Sync.html#a4f8c5d3ffc58b636016fe620f6f80424">megolmSessions</a>.push_back(megolmSession);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> }</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">return</span> sync;</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span>}</div>
</div>
<div class="ttc" id="aclassleet_1_1Event_1_1Event_html"><div class="ttname"><a href="classleet_1_1Event_1_1Event.html">leet::Event::Event</a></div><div class="ttdoc">Class that represents a generic event not covered by another class.</div><div class="ttdef"><b>Definition</b> libleet.hpp:393</div></div>
<div class="ttc" id="aclassleet_1_1Event_1_1Event_html_a44de14ebc615616045df5595c763522c"><div class="ttname"><a href="classleet_1_1Event_1_1Event.html#a44de14ebc615616045df5595c763522c">leet::Event::Event::eventID</a></div><div class="ttdeci">std::string eventID</div><div class="ttdef"><b>Definition</b> libleet.hpp:396</div></div>
<div class="ttc" id="aclassleet_1_1Event_1_1Event_html_a9c67e05cdae82f0c6f758cd80190133a"><div class="ttname"><a href="classleet_1_1Event_1_1Event.html#a9c67e05cdae82f0c6f758cd80190133a">leet::Event::Event::Age</a></div><div class="ttdeci">int32_t Age</div><div class="ttdef"><b>Definition</b> libleet.hpp:397</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></div><div class="ttdoc">Class which represents a single room, along with its properties.</div><div class="ttdef"><b>Definition</b> libleet.hpp:202</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_a845bb4727d6c821e8d69a15ad0e2eb1f"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">leet::Room::Room::roomID</a></div><div class="ttdeci">std::string roomID</div><div class="ttdef"><b>Definition</b> libleet.hpp:205</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1Sync_html"><div class="ttname"><a href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a></div><div class="ttdoc">Class containing objects of all the other classes in leet::Sync.</div><div class="ttdef"><b>Definition</b> libleet.hpp:374</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1Sync_html_a2f7e58b985d4676bdb69cb69b6a9bbc8"><div class="ttname"><a href="classleet_1_1Sync_1_1Sync.html#a2f7e58b985d4676bdb69cb69b6a9bbc8">leet::Sync::Sync::theRequest</a></div><div class="ttdeci">nlohmann::json theRequest</div><div class="ttdef"><b>Definition</b> libleet.hpp:382</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1Sync_html_a4f8c5d3ffc58b636016fe620f6f80424"><div class="ttname"><a href="classleet_1_1Sync_1_1Sync.html#a4f8c5d3ffc58b636016fe620f6f80424">leet::Sync::Sync::megolmSessions</a></div><div class="ttdeci">std::vector&lt; megolmSession &gt; megolmSessions</div><div class="ttdef"><b>Definition</b> libleet.hpp:380</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1megolmSession_html"><div class="ttname"><a href="classleet_1_1Sync_1_1megolmSession.html">leet::Sync::megolmSession</a></div><div class="ttdoc">Class that represents a Megolm session sent in the room.</div><div class="ttdef"><b>Definition</b> libleet.hpp:361</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1megolmSession_html_a1f7aacb252a7f5a51cb2720b0d521732"><div class="ttname"><a href="classleet_1_1Sync_1_1megolmSession.html#a1f7aacb252a7f5a51cb2720b0d521732">leet::Sync::megolmSession::Type</a></div><div class="ttdeci">std::string Type</div><div class="ttdef"><b>Definition</b> libleet.hpp:369</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1megolmSession_html_a79a9a7f9811e4007d23f15e8b643ecf2"><div class="ttname"><a href="classleet_1_1Sync_1_1megolmSession.html#a79a9a7f9811e4007d23f15e8b643ecf2">leet::Sync::megolmSession::cipherText</a></div><div class="ttdeci">std::string cipherText</div><div class="ttdef"><b>Definition</b> libleet.hpp:365</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1megolmSession_html_a7f9ca69710f886c5463994ace9bedace"><div class="ttname"><a href="classleet_1_1Sync_1_1megolmSession.html#a7f9ca69710f886c5463994ace9bedace">leet::Sync::megolmSession::cipherType</a></div><div class="ttdeci">int cipherType</div><div class="ttdef"><b>Definition</b> libleet.hpp:366</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1megolmSession_html_a83e4d359a3e4d40060358310b6dbcf49"><div class="ttname"><a href="classleet_1_1Sync_1_1megolmSession.html#a83e4d359a3e4d40060358310b6dbcf49">leet::Sync::megolmSession::Algorithm</a></div><div class="ttdeci">std::string Algorithm</div><div class="ttdef"><b>Definition</b> libleet.hpp:364</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1megolmSession_html_a9429f9a7f131f323e99decd2a498a779"><div class="ttname"><a href="classleet_1_1Sync_1_1megolmSession.html#a9429f9a7f131f323e99decd2a498a779">leet::Sync::megolmSession::Sender</a></div><div class="ttdeci">std::string Sender</div><div class="ttdef"><b>Definition</b> libleet.hpp:368</div></div>
<div class="ttc" id="aclassleet_1_1Sync_1_1megolmSession_html_aff7c3cbe5d689e39f1f883a3756a974c"><div class="ttname"><a href="classleet_1_1Sync_1_1megolmSession.html#aff7c3cbe5d689e39f1f883a3756a974c">leet::Sync::megolmSession::senderKey</a></div><div class="ttdeci">std::string senderKey</div><div class="ttdef"><b>Definition</b> libleet.hpp:367</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></div><div class="ttdoc">Class which contains the response from the Matrix homeserver on initial login.</div><div class="ttdef"><b>Definition</b> libleet.hpp:144</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_ae4d15192559f009ad966de4bc9cdf58a"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">leet::User::CredentialsResponse::accessToken</a></div><div class="ttdeci">std::string accessToken</div><div class="ttdef"><b>Definition</b> libleet.hpp:147</div></div>
<div class="ttc" id="anamespaceleet_html_a422f2f5edf4183209f96b572cd0cbf73"><div class="ttname"><a href="namespaceleet.html#a422f2f5edf4183209f96b572cd0cbf73">leet::returnUnixTimestamp</a></div><div class="ttdeci">const int32_t returnUnixTimestamp()</div><div class="ttdoc">Gets the Unix timestamp.</div><div class="ttdef"><b>Definition</b> Event.cpp:9</div></div>
<div class="ttc" id="anamespaceleet_html_a70ad6031c50aef71041c68eb5bf1c415"><div class="ttname"><a href="namespaceleet.html#a70ad6031c50aef71041c68eb5bf1c415">leet::returnEventFromTimestamp</a></div><div class="ttdeci">Event::Event returnEventFromTimestamp(User::CredentialsResponse *resp, Room::Room *room, const int32_t Timestamp, const bool Direction)</div><div class="ttdoc">Get an event from a Unix timestamp.</div><div class="ttdef"><b>Definition</b> Event.cpp:13</div></div>
<div class="ttc" id="anamespaceleet_html_a87681d6edf2064da9cf4df3dcb3ac67e"><div class="ttname"><a href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a></div><div class="ttdeci">const std::string invokeRequest_Get(const std::string &amp;URL, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Get request.</div><div class="ttdef"><b>Definition</b> Request.cpp:18</div></div>
<div class="ttc" id="anamespaceleet_html_aa20a9fa2de98421d60165559a8a23f76"><div class="ttname"><a href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a></div><div class="ttdeci">int errorCode</div><div class="ttdef"><b>Definition</b> libleet.hpp:405</div></div>
<div class="ttc" id="anamespaceleet_html_abf8deb3b48c9f7322aa6654885946738"><div class="ttname"><a href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a></div><div class="ttdeci">const std::string getAPI(const std::string &amp;API)</div><div class="ttdoc">Returns a full API URL from a Matrix endpoint.</div><div class="ttdef"><b>Definition</b> libleet.cpp:31</div></div>
<div class="ttc" id="anamespaceleet_html_aca8cf23cb2471b07f1ee22a2077b5b37"><div class="ttname"><a href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a></div><div class="ttdeci">std::string friendlyError</div><div class="ttdef"><b>Definition</b> libleet.hpp:403</div></div>
<div class="ttc" id="anamespaceleet_html_ae7fadb8f554b82e37512ece5f451e345"><div class="ttname"><a href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a></div><div class="ttdeci">std::string Error</div><div class="ttdef"><b>Definition</b> libleet.hpp:402</div></div>
<div class="ttc" id="anamespaceleet_html_aed2232388d75a5b6837200d3d3009acc"><div class="ttname"><a href="namespaceleet.html#aed2232388d75a5b6837200d3d3009acc">leet::returnSync</a></div><div class="ttdeci">Sync::Sync returnSync(User::CredentialsResponse *resp)</div><div class="ttdoc">Get sync information from the server.</div><div class="ttdef"><b>Definition</b> Event.cpp:45</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

98
docs/html/File_8cpp.html Executable file
View file

@ -0,0 +1,98 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/File.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">File.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="File_8cpp__dep__incl.png" border="0" usemap="#a_2home_2speedie_2libleet_2src_2File_8cppdep" alt=""/></div>
<map name="a_2home_2speedie_2libleet_2src_2File_8cppdep" id="a_2home_2speedie_2libleet_2src_2File_8cppdep">
<area shape="rect" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" href="libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>
</div>
</div>
<p><a href="File_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="/home/speedie/libleet/src/File.cpp" name="/home/speedie/libleet/src/File.cpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" id="Node000002" href="$libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>

View file

@ -0,0 +1 @@
1f12acb230da585d7b57bf6083adb9d8

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

243
docs/html/File_8cpp_source.html Executable file
View file

@ -0,0 +1,243 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/File.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">File.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="File_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* libleet</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Matrix client library written in C++</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Licensed under the GNU Affero General Public License version 3.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * See included LICENSE file for more information.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * https://git.speedie.site/speedie/libleet</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="foldopen" id="foldopen00009" data-start="{" data-end="}">
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2"> 9</a></span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt; T <a class="code hl_function" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">leet::saveToFile</a>(<span class="keyword">const</span> std::string&amp; File, T Data) {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> std::filesystem::path file{ File };</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> std::ofstream outputFile;</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keywordflow">if</span> (!std::filesystem::create_directories(file.parent_path()) &amp;&amp; !std::filesystem::is_directory(file.parent_path())) {</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keywordflow">throw</span>(<span class="stringliteral">&quot;Failed to create directory&quot;</span>);</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> }</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> outputFile.open(File);</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> outputFile &lt;&lt; Data;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> outputFile.close();</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">return</span> T();</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span>}</div>
</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="foldopen" id="foldopen00024" data-start="{" data-end="}">
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="namespaceleet.html#ac00d7b6839416edbf02439773e74e85a"> 24</a></span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt; T <a class="code hl_function" href="namespaceleet.html#ac00d7b6839416edbf02439773e74e85a">leet::loadFromFile</a>(<span class="keyword">const</span> std::string&amp; File) {</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> std::filesystem::path file{ File };</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> std::string line;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordflow">if</span> (std::filesystem::exists(file)) {</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> std::ifstream inputFile(File);</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">if</span> (!inputFile.is_open()) {</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> }</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">while</span> (std::getline(inputFile, line)) {</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> T ret = std::atoi(line.c_str());</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> inputFile.close();</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keywordflow">return</span> ret;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> }</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> inputFile.close();</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> }</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>}</div>
</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="foldopen" id="foldopen00047" data-start="{" data-end="}">
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="namespaceleet.html#a411cd6c4806c680b3a928ed52c5b315b"> 47</a></span><span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceleet.html#a411cd6c4806c680b3a928ed52c5b315b">leet::saveTransID</a>(<span class="keyword">const</span> std::string&amp; File) {</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <a class="code hl_function" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">leet::saveToFile&lt;int&gt;</a>(File, <a class="code hl_variable" href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">leet::TransID</a>);</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>}</div>
</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> </div>
<div class="foldopen" id="foldopen00052" data-start="{" data-end="}">
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="namespaceleet.html#a965d0a4a07cfed895f1960eba94d989d"> 52</a></span><span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceleet.html#a965d0a4a07cfed895f1960eba94d989d">leet::loadTransID</a>(<span class="keyword">const</span> std::string&amp; File) {</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">return</span> (<a class="code hl_variable" href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">leet::TransID</a> = <a class="code hl_function" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">leet::loadFromFile&lt;int&gt;</a>(File));</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span>}</div>
</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="foldopen" id="foldopen00056" data-start="{" data-end="}">
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="namespaceleet.html#a319a93fd72154257674df5ef49d03beb"> 56</a></span><a class="code hl_class" href="classleet_1_1Attachment_1_1Attachment.html">leet::Attachment::Attachment</a> <a class="code hl_function" href="namespaceleet.html#a319a93fd72154257674df5ef49d03beb">leet::uploadFile</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <span class="keyword">const</span> std::string&amp; File) {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <a class="code hl_class" href="classleet_1_1Attachment_1_1Attachment.html">leet::Attachment::Attachment</a> theAttachment;</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#a19dc9056d0f77c0c7eb51f12e9f5f554">leet::invokeRequest_Post_File</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/media/v3/upload&quot;</span>), File, resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>);</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> json returnOutput;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> returnOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">return</span> theAttachment;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> }</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : returnOutput) {</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> </div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;content_uri&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> theAttachment.<a class="code hl_variable" href="classleet_1_1Attachment_1_1Attachment.html#a47e3ffed35484c82cc92d6736d32de8d">URL</a> = output[<span class="stringliteral">&quot;content_uri&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">return</span> theAttachment;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> }</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">return</span> theAttachment;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> }</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> }</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> </div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">return</span> theAttachment;</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span>}</div>
</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> </div>
<div class="foldopen" id="foldopen00088" data-start="{" data-end="}">
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"><a class="line" href="namespaceleet.html#ac26d1d02e8463569c4e7fcc4e5f08455"> 88</a></span><span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceleet.html#ac26d1d02e8463569c4e7fcc4e5f08455">leet::downloadFile</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Attachment_1_1Attachment.html">leet::Attachment::Attachment</a>* Attachment, <span class="keyword">const</span> std::string&amp; outputFile) {</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> std::string Server{};</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> std::string ID{};</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> std::string File{Attachment-&gt;<a class="code hl_variable" href="classleet_1_1Attachment_1_1Attachment.html#a47e3ffed35484c82cc92d6736d32de8d">URL</a>};</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> std::size_t it = File.find(<span class="stringliteral">&quot;mxc://&quot;</span>);</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> </div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">if</span> (it != std::string::npos) {</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> it += 6;</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> std::size_t nextSlash = File.find(<span class="stringliteral">&quot;/&quot;</span>, it);</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> </div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">if</span> (nextSlash != std::string::npos) {</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> Server = File.substr(it, nextSlash - it);</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> ID = File.substr(nextSlash + 1);</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> }</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> }</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="comment">// Now that we have what we need, let&#39;s make a request</span></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="keyword">const</span> std::string API { <a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/media/v3/download/&quot;</span> + Server + <span class="stringliteral">&quot;/&quot;</span> + ID + <span class="stringliteral">&quot;?allow_redirect=false&quot;</span>) };</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> std::filesystem::path file{ outputFile };</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> </div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">if</span> (!std::filesystem::create_directories(file.parent_path()) &amp;&amp; !std::filesystem::is_directory(file.parent_path())) {</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> }</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> </div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="comment">// Download the file</span></div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> std::ofstream of(outputFile, std::ios::binary);</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> cpr::Response response = cpr::Download(of, cpr::Url{API});</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">if</span> (response.status_code == 200) {</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> }</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> </div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span>}</div>
</div>
<div class="ttc" id="aclassleet_1_1Attachment_1_1Attachment_html"><div class="ttname"><a href="classleet_1_1Attachment_1_1Attachment.html">leet::Attachment::Attachment</a></div><div class="ttdoc">Class which represents an uploaded attachment.</div><div class="ttdef"><b>Definition</b> libleet.hpp:301</div></div>
<div class="ttc" id="aclassleet_1_1Attachment_1_1Attachment_html_a47e3ffed35484c82cc92d6736d32de8d"><div class="ttname"><a href="classleet_1_1Attachment_1_1Attachment.html#a47e3ffed35484c82cc92d6736d32de8d">leet::Attachment::Attachment::URL</a></div><div class="ttdeci">std::string URL</div><div class="ttdef"><b>Definition</b> libleet.hpp:304</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></div><div class="ttdoc">Class which contains the response from the Matrix homeserver on initial login.</div><div class="ttdef"><b>Definition</b> libleet.hpp:144</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_ae4d15192559f009ad966de4bc9cdf58a"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">leet::User::CredentialsResponse::accessToken</a></div><div class="ttdeci">std::string accessToken</div><div class="ttdef"><b>Definition</b> libleet.hpp:147</div></div>
<div class="ttc" id="anamespaceleet_html_a19dc9056d0f77c0c7eb51f12e9f5f554"><div class="ttname"><a href="namespaceleet.html#a19dc9056d0f77c0c7eb51f12e9f5f554">leet::invokeRequest_Post_File</a></div><div class="ttdeci">const std::string invokeRequest_Post_File(const std::string &amp;URL, const std::string &amp;File)</div><div class="ttdoc">Invokes a Post request.</div><div class="ttdef"><b>Definition</b> Request.cpp:31</div></div>
<div class="ttc" id="anamespaceleet_html_a319a93fd72154257674df5ef49d03beb"><div class="ttname"><a href="namespaceleet.html#a319a93fd72154257674df5ef49d03beb">leet::uploadFile</a></div><div class="ttdeci">Attachment::Attachment uploadFile(User::CredentialsResponse *resp, const std::string &amp;File)</div><div class="ttdoc">Uploads a file to the Matrix server(s).</div><div class="ttdef"><b>Definition</b> File.cpp:56</div></div>
<div class="ttc" id="anamespaceleet_html_a411cd6c4806c680b3a928ed52c5b315b"><div class="ttname"><a href="namespaceleet.html#a411cd6c4806c680b3a928ed52c5b315b">leet::saveTransID</a></div><div class="ttdeci">const bool saveTransID(const std::string &amp;File)</div><div class="ttdoc">Saves the stored transaction ID to a file.</div><div class="ttdef"><b>Definition</b> File.cpp:47</div></div>
<div class="ttc" id="anamespaceleet_html_a8e1e00b1de977d7ae4b3d4d4e753d2a2"><div class="ttname"><a href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">leet::saveToFile</a></div><div class="ttdeci">T saveToFile(const std::string &amp;File, T Data)</div><div class="ttdoc">Saves data to a file.</div><div class="ttdef"><b>Definition</b> File.cpp:9</div></div>
<div class="ttc" id="anamespaceleet_html_a965d0a4a07cfed895f1960eba94d989d"><div class="ttname"><a href="namespaceleet.html#a965d0a4a07cfed895f1960eba94d989d">leet::loadTransID</a></div><div class="ttdeci">const bool loadTransID(const std::string &amp;File)</div><div class="ttdoc">Loads the stored transaction ID from a file.</div><div class="ttdef"><b>Definition</b> File.cpp:52</div></div>
<div class="ttc" id="anamespaceleet_html_aa20a9fa2de98421d60165559a8a23f76"><div class="ttname"><a href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a></div><div class="ttdeci">int errorCode</div><div class="ttdef"><b>Definition</b> libleet.hpp:405</div></div>
<div class="ttc" id="anamespaceleet_html_abf8deb3b48c9f7322aa6654885946738"><div class="ttname"><a href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a></div><div class="ttdeci">const std::string getAPI(const std::string &amp;API)</div><div class="ttdoc">Returns a full API URL from a Matrix endpoint.</div><div class="ttdef"><b>Definition</b> libleet.cpp:31</div></div>
<div class="ttc" id="anamespaceleet_html_ac00d7b6839416edbf02439773e74e85a"><div class="ttname"><a href="namespaceleet.html#ac00d7b6839416edbf02439773e74e85a">leet::loadFromFile</a></div><div class="ttdeci">T loadFromFile(const std::string &amp;File)</div><div class="ttdoc">Loads data from a file.</div><div class="ttdef"><b>Definition</b> File.cpp:24</div></div>
<div class="ttc" id="anamespaceleet_html_ac26d1d02e8463569c4e7fcc4e5f08455"><div class="ttname"><a href="namespaceleet.html#ac26d1d02e8463569c4e7fcc4e5f08455">leet::downloadFile</a></div><div class="ttdeci">const bool downloadFile(User::CredentialsResponse *resp, Attachment::Attachment *Attachment, const std::string &amp;outputFile)</div><div class="ttdoc">Downloads a file from the Matrix server.</div><div class="ttdef"><b>Definition</b> File.cpp:88</div></div>
<div class="ttc" id="anamespaceleet_html_aca8cf23cb2471b07f1ee22a2077b5b37"><div class="ttname"><a href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a></div><div class="ttdeci">std::string friendlyError</div><div class="ttdef"><b>Definition</b> libleet.hpp:403</div></div>
<div class="ttc" id="anamespaceleet_html_adc8712b33d096d2f8a204e7bad8ed1d4"><div class="ttname"><a href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">leet::TransID</a></div><div class="ttdeci">int TransID</div><div class="ttdef"><b>Definition</b> libleet.hpp:406</div></div>
<div class="ttc" id="anamespaceleet_html_ae7fadb8f554b82e37512ece5f451e345"><div class="ttname"><a href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a></div><div class="ttdeci">std::string Error</div><div class="ttdef"><b>Definition</b> libleet.hpp:402</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

98
docs/html/Login_8cpp.html Executable file
View file

@ -0,0 +1,98 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Login.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Login.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="Login_8cpp__dep__incl.png" border="0" usemap="#a_2home_2speedie_2libleet_2src_2Login_8cppdep" alt=""/></div>
<map name="a_2home_2speedie_2libleet_2src_2Login_8cppdep" id="a_2home_2speedie_2libleet_2src_2Login_8cppdep">
<area shape="rect" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" href="libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>
</div>
</div>
<p><a href="Login_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="/home/speedie/libleet/src/Login.cpp" name="/home/speedie/libleet/src/Login.cpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" id="Node000002" href="$libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>

View file

@ -0,0 +1 @@
01112d3bb3e4067a9979d22df41539c1

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

337
docs/html/Login_8cpp_source.html Executable file
View file

@ -0,0 +1,337 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Login.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Login.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="Login_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* libleet</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Matrix client library written in C++</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Licensed under the GNU Affero General Public License version 3.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * See included LICENSE file for more information.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * https://git.speedie.site/speedie/libleet</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="foldopen" id="foldopen00009" data-start="{" data-end="}">
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="namespaceleet.html#aa71e9add3fe71ad537065ebc2553e2ca"> 9</a></span>std::vector&lt;std::string&gt; <a class="code hl_function" href="namespaceleet.html#aa71e9add3fe71ad537065ebc2553e2ca">leet::returnSupportedLoginTypes</a>() {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> std::vector&lt;std::string&gt; vector;</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> <span class="keyword">const</span> std::string APIUrl { <span class="stringliteral">&quot;/_matrix/client/v3/login&quot;</span> };</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> std::string Output { <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(APIUrl)) };</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> json reqOutput;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> reqOutput = json::parse(Output);</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keywordflow">return</span> vector;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> }</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="keyword">auto</span>&amp; messages = reqOutput[<span class="stringliteral">&quot;flows&quot;</span>];</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = messages.begin(); it != messages.end(); ++it) {</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> std::string theString{};</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/type&quot;</span>_json_pointer)) theString = it.value()[<span class="stringliteral">&quot;type&quot;</span>];</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> vector.push_back(theString);</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> }</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">return</span> vector;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span>}</div>
</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="foldopen" id="foldopen00034" data-start="{" data-end="}">
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="namespaceleet.html#a6618277e9bd8b1c8dc6034a3e03135fd"> 34</a></span><a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a> <a class="code hl_function" href="namespaceleet.html#a6618277e9bd8b1c8dc6034a3e03135fd">leet::refreshAccessToken</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp) {</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a> newResponse = *resp;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keywordflow">if</span> (!newResponse.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a0c193776bac32142e4b48034a45b7411">refreshToken</a>.compare(<span class="stringliteral">&quot;&quot;</span>)) {</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <span class="keywordflow">return</span> newResponse;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> }</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> json body;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> body[<span class="stringliteral">&quot;refresh_token&quot;</span>] = newResponse.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a0c193776bac32142e4b48034a45b7411">refreshToken</a>;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> json refreshOutput;</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> refreshOutput = { json::parse(<a class="code hl_function" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/refresh&quot;</span>), body.dump())) };</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">return</span> newResponse;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> }</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : refreshOutput) {</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;access_token&quot;</span>].is_string()) newResponse.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a> = output[<span class="stringliteral">&quot;access_token&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;refresh_token&quot;</span>].is_string()) newResponse.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a0c193776bac32142e4b48034a45b7411">refreshToken</a> = output[<span class="stringliteral">&quot;refresh_token&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;expires_in_ms&quot;</span>].is_number_integer()) newResponse.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a3373697c8735dc08e71d590da7ca6b6f">Expiration</a> = output[<span class="stringliteral">&quot;expires_in_ms&quot;</span>].get&lt;<span class="keywordtype">int</span>&gt;();</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> }</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> }</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> newResponse;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span>}</div>
</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="foldopen" id="foldopen00070" data-start="{" data-end="}">
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="namespaceleet.html#a5a50820297b17118e6521b5b79d84fc1"> 70</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceleet.html#a5a50820297b17118e6521b5b79d84fc1">leet::checkRegistrationTokenValidity</a>(<span class="keyword">const</span> std::string&amp; Token) {</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> </div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> json body;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> body = { json::parse(<a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v1/register/m.login.registration_token/validity?token=&quot;</span> + Token))) };</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> }</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : body) {</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;valid&quot;</span>].is_boolean()) {</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">bool</span> theBool = output[<span class="stringliteral">&quot;valid&quot;</span>].get&lt;<span class="keywordtype">bool</span>&gt;();</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">return</span> theBool;</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> }</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> }</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> }</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> </div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span>}</div>
</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> </div>
<div class="foldopen" id="foldopen00099" data-start="{" data-end="}">
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"><a class="line" href="namespaceleet.html#a944df5761e8c6e43adf5b3b6f3b8976c"> 99</a></span><a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a> <a class="code hl_function" href="namespaceleet.html#a944df5761e8c6e43adf5b3b6f3b8976c">leet::registerAccount</a>(<a class="code hl_class" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a>* cred) {</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a> resp;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> </div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> std::string theUsername = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ab69825910cc4796bd7992cd7cdfd6248">Username</a>;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> </div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">if</span> (cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ab69825910cc4796bd7992cd7cdfd6248">Username</a>[0] == <span class="charliteral">&#39;@&#39;</span>) {</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> theUsername = <a class="code hl_function" href="namespaceleet.html#a9411e25fb1f3420d7b6c954926db536a">leet::returnUserName</a>(cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ab69825910cc4796bd7992cd7cdfd6248">Username</a>);</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">if</span> (theUsername[0] == <span class="charliteral">&#39;@&#39;</span> || !theUsername.compare(<span class="stringliteral">&quot;&quot;</span>)) {</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">return</span> resp;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> }</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> }</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> </div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> json body;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> </div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">if</span> (cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ad6a50d9f239f3abfb0627617e19a91e1">deviceID</a>.compare(<span class="stringliteral">&quot;&quot;</span>)) {</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> body[<span class="stringliteral">&quot;device_id&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ad6a50d9f239f3abfb0627617e19a91e1">deviceID</a>;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> }</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> body[<span class="stringliteral">&quot;inhibit_login&quot;</span>] = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> body[<span class="stringliteral">&quot;initial_device_display_name&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#a14f30a55899e724877a84623378c00c8">displayName</a>;</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> body[<span class="stringliteral">&quot;username&quot;</span>] = theUsername;</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> body[<span class="stringliteral">&quot;password&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#a2601635196c112cc819b48449f143457">Password</a>;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> body[<span class="stringliteral">&quot;refresh_token&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ae4d62ad39baa02795e11bf1daa74e12e">refreshToken</a>;</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> </div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> json registerOutput;</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> </div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> registerOutput = { json::parse(<a class="code hl_function" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/register&quot;</span>), body.dump())) };</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> <span class="keywordflow">return</span> resp;</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> }</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> </div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : registerOutput) {</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> </div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a9233923ddc9627b08b8572b2a379ae0c">Homeserver</a> = <a class="code hl_variable" href="namespaceleet.html#a047ddd8c4f4dba43c5ee0e38858485ab">leet::Homeserver</a> = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#af93cb0d1ad2137e1c0d54cefa3418123">Homeserver</a>;</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> </div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;access_token&quot;</span>].is_string()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a> = output[<span class="stringliteral">&quot;access_token&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;device_id&quot;</span>].is_string()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a2c9bc29b7c1702af9c372fccd5e14c6d">deviceID</a> = output[<span class="stringliteral">&quot;device_id&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;refresh_token&quot;</span>].is_string()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a0c193776bac32142e4b48034a45b7411">refreshToken</a> = output[<span class="stringliteral">&quot;refresh_token&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;user_id&quot;</span>].is_string()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">userID</a> = output[<span class="stringliteral">&quot;user_id&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;expires_in_ms&quot;</span>].is_number_integer()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a3373697c8735dc08e71d590da7ca6b6f">Expiration</a> = output[<span class="stringliteral">&quot;expires_in_ms&quot;</span>].get&lt;<span class="keywordtype">int</span>&gt;();</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> </div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> }</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> }</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> </div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">return</span> resp;</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span>}</div>
</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> </div>
<div class="foldopen" id="foldopen00155" data-start="{" data-end="}">
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"><a class="line" href="namespaceleet.html#a95cd2b8c02fc7a1ef1e2878073a14b9e"> 155</a></span><a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a> <a class="code hl_function" href="namespaceleet.html#a95cd2b8c02fc7a1ef1e2878073a14b9e">leet::loginAccount</a>(<a class="code hl_class" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a>* cred) {</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a> resp;</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> json list;</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> </div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> std::string actualType{};</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> </div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">if</span> (cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#a319bf175ae5c1209abbb7c05199648d3">Type</a> == <a class="code hl_enumvalue" href="libleet_8hpp.html#adf764cbdea00d65edcd07bb9953ad2b7acf9e9e1ff5162323074f7588e992b21e">LEET_TYPE_TOKEN</a>) {</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> actualType = <span class="stringliteral">&quot;m.login.token&quot;</span>;</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> actualType = <span class="stringliteral">&quot;m.login.password&quot;</span>;</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> }</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> </div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">if</span> (cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ad6a50d9f239f3abfb0627617e19a91e1">deviceID</a>.compare(<span class="stringliteral">&quot;&quot;</span>)) {</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> list[<span class="stringliteral">&quot;device_id&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ad6a50d9f239f3abfb0627617e19a91e1">deviceID</a>;</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> }</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> </div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> list[<span class="stringliteral">&quot;identifier&quot;</span>][<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;m.id.user&quot;</span>; <span class="comment">// Currently only supported method</span></div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> list[<span class="stringliteral">&quot;identifier&quot;</span>][<span class="stringliteral">&quot;user&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ab69825910cc4796bd7992cd7cdfd6248">Username</a>;</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> list[<span class="stringliteral">&quot;initial_device_display_name&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#a14f30a55899e724877a84623378c00c8">displayName</a>;</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> </div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">if</span> (cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#a319bf175ae5c1209abbb7c05199648d3">Type</a> == <a class="code hl_enumvalue" href="libleet_8hpp.html#adf764cbdea00d65edcd07bb9953ad2b7acf9e9e1ff5162323074f7588e992b21e">LEET_TYPE_TOKEN</a>) {</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> list[<span class="stringliteral">&quot;token&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#a60e506535df8e6672ea8e8ea7dff451e">Token</a>;</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> list[<span class="stringliteral">&quot;password&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#a2601635196c112cc819b48449f143457">Password</a>;</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> }</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> </div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> list[<span class="stringliteral">&quot;refresh_token&quot;</span>] = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#ae4d62ad39baa02795e11bf1daa74e12e">refreshToken</a>;</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> list[<span class="stringliteral">&quot;type&quot;</span>] = actualType;</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> </div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> json loginOutput = { json::parse(<a class="code hl_function" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/login&quot;</span>), list.dump())) };</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> </div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : loginOutput) {</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> </div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a9233923ddc9627b08b8572b2a379ae0c">Homeserver</a> = <a class="code hl_variable" href="namespaceleet.html#a047ddd8c4f4dba43c5ee0e38858485ab">leet::Homeserver</a> = cred-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1Credentials.html#af93cb0d1ad2137e1c0d54cefa3418123">Homeserver</a>;</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> </div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;access_token&quot;</span>].is_string()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a> = output[<span class="stringliteral">&quot;access_token&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;device_id&quot;</span>].is_string()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a2c9bc29b7c1702af9c372fccd5e14c6d">deviceID</a> = output[<span class="stringliteral">&quot;device_id&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;refresh_token&quot;</span>].is_string()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a0c193776bac32142e4b48034a45b7411">refreshToken</a> = output[<span class="stringliteral">&quot;refresh_token&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;user_id&quot;</span>].is_string()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">userID</a> = output[<span class="stringliteral">&quot;user_id&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;expires_in_ms&quot;</span>].is_number_integer()) resp.<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a3373697c8735dc08e71d590da7ca6b6f">Expiration</a> = output[<span class="stringliteral">&quot;expires_in_ms&quot;</span>].get&lt;<span class="keywordtype">int</span>&gt;();</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> </div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> }</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> }</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> </div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">return</span> resp;</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span>}</div>
</div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></div><div class="ttdoc">Class which contains the response from the Matrix homeserver on initial login.</div><div class="ttdef"><b>Definition</b> libleet.hpp:144</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_a0c193776bac32142e4b48034a45b7411"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#a0c193776bac32142e4b48034a45b7411">leet::User::CredentialsResponse::refreshToken</a></div><div class="ttdeci">std::string refreshToken</div><div class="ttdef"><b>Definition</b> libleet.hpp:148</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_a2c9bc29b7c1702af9c372fccd5e14c6d"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#a2c9bc29b7c1702af9c372fccd5e14c6d">leet::User::CredentialsResponse::deviceID</a></div><div class="ttdeci">std::string deviceID</div><div class="ttdef"><b>Definition</b> libleet.hpp:149</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_a3373697c8735dc08e71d590da7ca6b6f"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#a3373697c8735dc08e71d590da7ca6b6f">leet::User::CredentialsResponse::Expiration</a></div><div class="ttdeci">int Expiration</div><div class="ttdef"><b>Definition</b> libleet.hpp:152</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_a7561824b6e56efae7257ac9995d43846"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">leet::User::CredentialsResponse::userID</a></div><div class="ttdeci">std::string userID</div><div class="ttdef"><b>Definition</b> libleet.hpp:151</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_a9233923ddc9627b08b8572b2a379ae0c"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#a9233923ddc9627b08b8572b2a379ae0c">leet::User::CredentialsResponse::Homeserver</a></div><div class="ttdeci">std::string Homeserver</div><div class="ttdef"><b>Definition</b> libleet.hpp:150</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_ae4d15192559f009ad966de4bc9cdf58a"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">leet::User::CredentialsResponse::accessToken</a></div><div class="ttdeci">std::string accessToken</div><div class="ttdef"><b>Definition</b> libleet.hpp:147</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Credentials_html"><div class="ttname"><a href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></div><div class="ttdoc">Credentials class which contains fields passed to login requests.</div><div class="ttdef"><b>Definition</b> libleet.hpp:115</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Credentials_html_a14f30a55899e724877a84623378c00c8"><div class="ttname"><a href="classleet_1_1User_1_1Credentials.html#a14f30a55899e724877a84623378c00c8">leet::User::Credentials::displayName</a></div><div class="ttdeci">std::string displayName</div><div class="ttdef"><b>Definition</b> libleet.hpp:120</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Credentials_html_a2601635196c112cc819b48449f143457"><div class="ttname"><a href="classleet_1_1User_1_1Credentials.html#a2601635196c112cc819b48449f143457">leet::User::Credentials::Password</a></div><div class="ttdeci">std::string Password</div><div class="ttdef"><b>Definition</b> libleet.hpp:119</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Credentials_html_a319bf175ae5c1209abbb7c05199648d3"><div class="ttname"><a href="classleet_1_1User_1_1Credentials.html#a319bf175ae5c1209abbb7c05199648d3">leet::User::Credentials::Type</a></div><div class="ttdeci">int Type</div><div class="ttdef"><b>Definition</b> libleet.hpp:126</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Credentials_html_a60e506535df8e6672ea8e8ea7dff451e"><div class="ttname"><a href="classleet_1_1User_1_1Credentials.html#a60e506535df8e6672ea8e8ea7dff451e">leet::User::Credentials::Token</a></div><div class="ttdeci">std::string Token</div><div class="ttdef"><b>Definition</b> libleet.hpp:124</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Credentials_html_ab69825910cc4796bd7992cd7cdfd6248"><div class="ttname"><a href="classleet_1_1User_1_1Credentials.html#ab69825910cc4796bd7992cd7cdfd6248">leet::User::Credentials::Username</a></div><div class="ttdeci">std::string Username</div><div class="ttdef"><b>Definition</b> libleet.hpp:118</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Credentials_html_ad6a50d9f239f3abfb0627617e19a91e1"><div class="ttname"><a href="classleet_1_1User_1_1Credentials.html#ad6a50d9f239f3abfb0627617e19a91e1">leet::User::Credentials::deviceID</a></div><div class="ttdeci">std::string deviceID</div><div class="ttdef"><b>Definition</b> libleet.hpp:121</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Credentials_html_ae4d62ad39baa02795e11bf1daa74e12e"><div class="ttname"><a href="classleet_1_1User_1_1Credentials.html#ae4d62ad39baa02795e11bf1daa74e12e">leet::User::Credentials::refreshToken</a></div><div class="ttdeci">bool refreshToken</div><div class="ttdef"><b>Definition</b> libleet.hpp:123</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Credentials_html_af93cb0d1ad2137e1c0d54cefa3418123"><div class="ttname"><a href="classleet_1_1User_1_1Credentials.html#af93cb0d1ad2137e1c0d54cefa3418123">leet::User::Credentials::Homeserver</a></div><div class="ttdeci">std::string Homeserver</div><div class="ttdef"><b>Definition</b> libleet.hpp:122</div></div>
<div class="ttc" id="alibleet_8hpp_html_adf764cbdea00d65edcd07bb9953ad2b7acf9e9e1ff5162323074f7588e992b21e"><div class="ttname"><a href="libleet_8hpp.html#adf764cbdea00d65edcd07bb9953ad2b7acf9e9e1ff5162323074f7588e992b21e">LEET_TYPE_TOKEN</a></div><div class="ttdeci">@ LEET_TYPE_TOKEN</div><div class="ttdef"><b>Definition</b> libleet.hpp:37</div></div>
<div class="ttc" id="anamespaceleet_html_a047ddd8c4f4dba43c5ee0e38858485ab"><div class="ttname"><a href="namespaceleet.html#a047ddd8c4f4dba43c5ee0e38858485ab">leet::Homeserver</a></div><div class="ttdeci">std::string Homeserver</div><div class="ttdef"><b>Definition</b> libleet.hpp:401</div></div>
<div class="ttc" id="anamespaceleet_html_a5a50820297b17118e6521b5b79d84fc1"><div class="ttname"><a href="namespaceleet.html#a5a50820297b17118e6521b5b79d84fc1">leet::checkRegistrationTokenValidity</a></div><div class="ttdeci">bool checkRegistrationTokenValidity(const std::string &amp;Token)</div><div class="ttdoc">Check if a registration token is still valid or not.</div><div class="ttdef"><b>Definition</b> Login.cpp:70</div></div>
<div class="ttc" id="anamespaceleet_html_a6618277e9bd8b1c8dc6034a3e03135fd"><div class="ttname"><a href="namespaceleet.html#a6618277e9bd8b1c8dc6034a3e03135fd">leet::refreshAccessToken</a></div><div class="ttdeci">User::CredentialsResponse refreshAccessToken(User::CredentialsResponse *resp)</div><div class="ttdoc">Refresh an old access token (if a refresh token is available in the object)</div><div class="ttdef"><b>Definition</b> Login.cpp:34</div></div>
<div class="ttc" id="anamespaceleet_html_a87681d6edf2064da9cf4df3dcb3ac67e"><div class="ttname"><a href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a></div><div class="ttdeci">const std::string invokeRequest_Get(const std::string &amp;URL, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Get request.</div><div class="ttdef"><b>Definition</b> Request.cpp:18</div></div>
<div class="ttc" id="anamespaceleet_html_a9411e25fb1f3420d7b6c954926db536a"><div class="ttname"><a href="namespaceleet.html#a9411e25fb1f3420d7b6c954926db536a">leet::returnUserName</a></div><div class="ttdeci">const std::string returnUserName(const std::string &amp;userID)</div><div class="ttdoc">Returns &lt;name&gt; from &lt;name&gt;:&lt;home server&gt;</div><div class="ttdef"><b>Definition</b> User.cpp:17</div></div>
<div class="ttc" id="anamespaceleet_html_a944df5761e8c6e43adf5b3b6f3b8976c"><div class="ttname"><a href="namespaceleet.html#a944df5761e8c6e43adf5b3b6f3b8976c">leet::registerAccount</a></div><div class="ttdeci">User::CredentialsResponse registerAccount(User::Credentials *cred)</div><div class="ttdoc">Attempts to create an account on the home server.</div><div class="ttdef"><b>Definition</b> Login.cpp:99</div></div>
<div class="ttc" id="anamespaceleet_html_a95cd2b8c02fc7a1ef1e2878073a14b9e"><div class="ttname"><a href="namespaceleet.html#a95cd2b8c02fc7a1ef1e2878073a14b9e">leet::loginAccount</a></div><div class="ttdeci">User::CredentialsResponse loginAccount(User::Credentials *cred)</div><div class="ttdoc">Attempts to log in to the home server.</div><div class="ttdef"><b>Definition</b> Login.cpp:155</div></div>
<div class="ttc" id="anamespaceleet_html_aa20a9fa2de98421d60165559a8a23f76"><div class="ttname"><a href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a></div><div class="ttdeci">int errorCode</div><div class="ttdef"><b>Definition</b> libleet.hpp:405</div></div>
<div class="ttc" id="anamespaceleet_html_aa71e9add3fe71ad537065ebc2553e2ca"><div class="ttname"><a href="namespaceleet.html#aa71e9add3fe71ad537065ebc2553e2ca">leet::returnSupportedLoginTypes</a></div><div class="ttdeci">std::vector&lt; std::string &gt; returnSupportedLoginTypes()</div><div class="ttdoc">Get login types supported by the Matrix home server.</div><div class="ttdef"><b>Definition</b> Login.cpp:9</div></div>
<div class="ttc" id="anamespaceleet_html_aa88a91a144b2176d9ce3c4cad3c45bab"><div class="ttname"><a href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a></div><div class="ttdeci">const std::string invokeRequest_Post(const std::string &amp;URL, const std::string &amp;Data, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Post request.</div><div class="ttdef"><b>Definition</b> Request.cpp:24</div></div>
<div class="ttc" id="anamespaceleet_html_abf8deb3b48c9f7322aa6654885946738"><div class="ttname"><a href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a></div><div class="ttdeci">const std::string getAPI(const std::string &amp;API)</div><div class="ttdoc">Returns a full API URL from a Matrix endpoint.</div><div class="ttdef"><b>Definition</b> libleet.cpp:31</div></div>
<div class="ttc" id="anamespaceleet_html_aca8cf23cb2471b07f1ee22a2077b5b37"><div class="ttname"><a href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a></div><div class="ttdeci">std::string friendlyError</div><div class="ttdef"><b>Definition</b> libleet.hpp:403</div></div>
<div class="ttc" id="anamespaceleet_html_ae7fadb8f554b82e37512ece5f451e345"><div class="ttname"><a href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a></div><div class="ttdeci">std::string Error</div><div class="ttdef"><b>Definition</b> libleet.hpp:402</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

98
docs/html/Message_8cpp.html Executable file
View file

@ -0,0 +1,98 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Message.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Message.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="Message_8cpp__dep__incl.png" border="0" usemap="#a_2home_2speedie_2libleet_2src_2Message_8cppdep" alt=""/></div>
<map name="a_2home_2speedie_2libleet_2src_2Message_8cppdep" id="a_2home_2speedie_2libleet_2src_2Message_8cppdep">
<area shape="rect" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" href="libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>
</div>
</div>
<p><a href="Message_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="/home/speedie/libleet/src/Message.cpp" name="/home/speedie/libleet/src/Message.cpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" id="Node000002" href="$libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>

View file

@ -0,0 +1 @@
22d3dc556e83ced9ff16d01c8859d4c3

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

View file

@ -0,0 +1,351 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Message.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Message.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="Message_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* libleet</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Matrix client library written in C++</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Licensed under the GNU Affero General Public License version 3.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * See included LICENSE file for more information.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * https://git.speedie.site/speedie/libleet</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="foldopen" id="foldopen00009" data-start="{" data-end="}">
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="namespaceleet.html#a67dbc8b27a77c92ce074b2ab6ae47850"> 9</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="namespaceleet.html#a67dbc8b27a77c92ce074b2ab6ae47850">leet::sendMessage</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>* room, <a class="code hl_class" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a>* msg) {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">TransID</a> { <a class="code hl_variable" href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">leet::TransID</a> };</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> <span class="keyword">const</span> std::string eventType { <span class="stringliteral">&quot;m.room.message&quot;</span> };</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keyword">const</span> std::string APIUrl { <span class="stringliteral">&quot;/_matrix/client/v3/rooms/&quot;</span> + room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> + <span class="stringliteral">&quot;/send/&quot;</span> + eventType + <span class="stringliteral">&quot;/&quot;</span> + std::to_string(<a class="code hl_variable" href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">TransID</a>) };</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> json list;</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <span class="keywordflow">if</span> (!msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a>.compare(<span class="stringliteral">&quot;m.image&quot;</span>) || !msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a>.compare(<span class="stringliteral">&quot;m.audio&quot;</span>) || !msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a>.compare(<span class="stringliteral">&quot;m.video&quot;</span>) || !msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a>.compare(<span class="stringliteral">&quot;m.file&quot;</span>)) {</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keywordflow">if</span> (msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a89b2bfdce96b93c066b5f565c6a0074a">attachmentURL</a>[0] != <span class="charliteral">&#39;m&#39;</span> || msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a89b2bfdce96b93c066b5f565c6a0074a">attachmentURL</a>[1] != <span class="charliteral">&#39;x&#39;</span> || msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a89b2bfdce96b93c066b5f565c6a0074a">attachmentURL</a>[2] != <span class="charliteral">&#39;c&#39;</span>) {</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> }</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> list[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;m.room.message&quot;</span>;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> list[<span class="stringliteral">&quot;room_id&quot;</span>] = room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a>;</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> list[<span class="stringliteral">&quot;body&quot;</span>] = msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a74739e3eeb0bca60a6c0285af5c642bb">messageText</a>;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> list[<span class="stringliteral">&quot;msgtype&quot;</span>] = msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a>;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> list[<span class="stringliteral">&quot;url&quot;</span>] = msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a89b2bfdce96b93c066b5f565c6a0074a">attachmentURL</a>;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> list[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;m.room.message&quot;</span>;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> list[<span class="stringliteral">&quot;room_id&quot;</span>] = room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a>;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> list[<span class="stringliteral">&quot;body&quot;</span>] = msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a74739e3eeb0bca60a6c0285af5c642bb">messageText</a>;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> list[<span class="stringliteral">&quot;msgtype&quot;</span>] = msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a>;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> }</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keyword">const</span> std::string Output { <a class="code hl_function" href="namespaceleet.html#aa3853464d166cde6fa97f8dfb9e2398f">leet::invokeRequest_Put</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(APIUrl), list.dump(), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>) };</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> json reqOutput;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> }</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> }</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> }</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span>}</div>
</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="preprocessor">#ifndef LEET_NO_ENCRYPTION</span></div>
<div class="foldopen" id="foldopen00056" data-start="{" data-end="}">
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="namespaceleet.html#a40c1e3b3d1988d56aaa389607d10fe57"> 56</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="namespaceleet.html#a40c1e3b3d1988d56aaa389607d10fe57">leet::sendEncryptedMessage</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Encryption.html">leet::Encryption</a>* enc, <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>* room, <a class="code hl_class" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a>* msg) {</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code hl_variable" href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">TransID</a> { <a class="code hl_variable" href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">leet::TransID</a> };</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keyword">const</span> std::string eventType { <span class="stringliteral">&quot;m.room.encrypted&quot;</span> };</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keyword">const</span> std::string APIUrl { <span class="stringliteral">&quot;/_matrix/client/v3/rooms/&quot;</span> + room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> + <span class="stringliteral">&quot;/send/&quot;</span> + eventType + <span class="stringliteral">&quot;/&quot;</span> + std::to_string(<a class="code hl_variable" href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">TransID</a>) };</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> json Body;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> </div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> Body[<span class="stringliteral">&quot;type&quot;</span>] = <span class="stringliteral">&quot;m.room.message&quot;</span>;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> Body[<span class="stringliteral">&quot;room_id&quot;</span>] = room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a>;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> Body[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;body&quot;</span>] = msg-&gt;<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a74739e3eeb0bca60a6c0285af5c642bb">messageText</a>;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> Body[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;msgtype&quot;</span>] = <span class="stringliteral">&quot;m.text&quot;</span>;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keyword">const</span> std::string Output { <a class="code hl_function" href="namespaceleet.html#aa3853464d166cde6fa97f8dfb9e2398f">leet::invokeRequest_Put</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(APIUrl), enc-&gt;<a class="code hl_variable" href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">account</a>.<a class="code hl_function" href="classleet_1_1olmAccount.html#ab5422499f6fcef344d157f7d74cfffb8">encryptMessage</a>(resp, Body.dump()), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>) };</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> json reqOutput;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> }</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> </div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> </div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> }</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> }</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span>}</div>
</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="foldopen" id="foldopen00090" data-start="{" data-end="}">
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"><a class="line" href="namespaceleet.html#a877400ed8e1e79c183a8f7858d79446d"> 90</a></span><span class="keyword">const</span> std::vector&lt;leet::Message::Message&gt; <a class="code hl_function" href="namespaceleet.html#a877400ed8e1e79c183a8f7858d79446d">leet::returnMessages</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>* room, <span class="keyword">const</span> <span class="keywordtype">int</span> messageCount) {</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> std::vector&lt;leet::Message::Message&gt; vector;</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keyword">const</span> std::string APIUrl { <span class="stringliteral">&quot;/_matrix/client/v3/rooms/&quot;</span> + room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> + <span class="stringliteral">&quot;/messages?dir=b&amp;limit=&quot;</span> + std::to_string(messageCount) };</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> </div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> std::string Output { <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(APIUrl), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>) };</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> </div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> json reqOutput;</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> reqOutput = json::parse(Output);</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keywordflow">return</span> vector;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> }</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keyword">auto</span>&amp; messages = reqOutput[<span class="stringliteral">&quot;chunk&quot;</span>];</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> </div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = messages.begin(); it != messages.end(); ++it) {</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <a class="code hl_class" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a> message;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> </div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#ab76d63f5dc59c42f6dc465cf9071f664">Encrypted</a> = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> </div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/type&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a4671a0906f0a44c788f8e5b8c82016e6">Type</a> = it.value()[<span class="stringliteral">&quot;type&quot;</span>];</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> </div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="comment">// Encrypted message</span></div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span> (!message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a4671a0906f0a44c788f8e5b8c82016e6">Type</a>.compare(<span class="stringliteral">&quot;m.room.encrypted&quot;</span>)) {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#ab76d63f5dc59c42f6dc465cf9071f664">Encrypted</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a35e1fbf4f63b29a16f0a6bb1e9de51e8">megolm</a> = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> </div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/ciphertext&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a9cdf1012eeeaff58c86fd1ea156a656b">cipherText</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;ciphertext&quot;</span>];</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/sender_key&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a9280e4ed8e1ec6ed3591ac75bb341531">senderKey</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;sender_key&quot;</span>];</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/device_id&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#af257e013a8faa42727367a54873615e3">deviceID</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;device_id&quot;</span>];</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/session_id&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#adaeaa3d24938167e2ce791ea21c9c450">sessionID</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;session_id&quot;</span>];</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/algorithm&quot;</span>_json_pointer)) <span class="keywordflow">if</span> (it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;algorithm&quot;</span>] == <span class="stringliteral">&quot;m.megolm.v1.aes-sha2&quot;</span>) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a35e1fbf4f63b29a16f0a6bb1e9de51e8">megolm</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> }</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> </div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/msgtype&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;msgtype&quot;</span>];</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/sender&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#af5b9b84cdc8ee474c5acb47b7e632bb8">Sender</a> = it.value()[<span class="stringliteral">&quot;sender&quot;</span>];</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> </div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/body&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a74739e3eeb0bca60a6c0285af5c642bb">messageText</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;body&quot;</span>];</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/formatted_body&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a83fed20f25325d55a89b41169dd24280">formattedText</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;formatted_body&quot;</span>];</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/format&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a8dd019876adbaa08129661604f493131">Format</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;format&quot;</span>];</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/mimetype&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#aa81bf1eca55789a987565da2497d67ab">mimeType</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;mimetype&quot;</span>];</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/event_id&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a00407d68662527759fd2404d285f7b82">eventID</a> = it.value()[<span class="stringliteral">&quot;event_id&quot;</span>];</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/origin_server_ts&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a28b5c363010fd021f2f1605522258889">Age</a> = it.value()[<span class="stringliteral">&quot;origin_server_ts&quot;</span>];</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="comment">// Attachments</span></div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/size&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#aa0c3f9c7ee665698987b7ad4f3b23040">attachmentSize</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;size&quot;</span>];</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/duration&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#acc12eccb366d62e626c48d707557bd15">attachmentLength</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;duration&quot;</span>];</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/w&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a99366bce597aa139f1ab01420a0061bf">attachmentWidth</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>];</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/h&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a80a089d0765fb792ca1472f400170c51">attachmentHeight</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;h&quot;</span>];</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/url&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a89b2bfdce96b93c066b5f565c6a0074a">attachmentURL</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;url&quot;</span>];</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> </div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="comment">// Handle thumbnails</span></div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">if</span> (!message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a>.compare(<span class="stringliteral">&quot;m.video&quot;</span>)) {</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/thumbnail_info/w&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a09401ecd78d0e5b06290adf2acf11e28">thumbnailWidth</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;thumbnail_info&quot;</span>][<span class="stringliteral">&quot;w&quot;</span>];</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/thumbnail_info/h&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a9991e5daa3476527eed8b140ba99d61e">thumbnailHeight</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;thumbnail_info&quot;</span>][<span class="stringliteral">&quot;h&quot;</span>];</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/thumbnail_info/size&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#aad48127d5068692876945e050d3968ed">thumbnailSize</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;thumbnail_info&quot;</span>][<span class="stringliteral">&quot;size&quot;</span>];</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/thumbnail_info/mimetype&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#aac353fb22826eed5757682ea3378eb02">thumbnailMimeType</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;thumbnail_info&quot;</span>][<span class="stringliteral">&quot;mimetype&quot;</span>];</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/content/info/thumbnail_url&quot;</span>_json_pointer)) message.<a class="code hl_variable" href="classleet_1_1Message_1_1Message.html#a5264e3e6694c7c06960a885d1c7fe49b">thumbnailURL</a> = it.value()[<span class="stringliteral">&quot;content&quot;</span>][<span class="stringliteral">&quot;info&quot;</span>][<span class="stringliteral">&quot;thumbnail_url&quot;</span>];</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> }</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> </div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> vector.push_back(message);</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> }</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> </div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">return</span> vector;</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span>}</div>
</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> </div>
<div class="foldopen" id="foldopen00157" data-start="{" data-end="}">
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"><a class="line" href="namespaceleet.html#a56a1a90994bbd897072fb1b902abc993"> 157</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#a56a1a90994bbd897072fb1b902abc993">leet::returnFilter</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Filter_1_1Filter.html">leet::Filter::Filter</a> *filter) {</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <span class="keyword">const</span> std::string APIUrl { <span class="stringliteral">&quot;/_matrix/client/v3/user/&quot;</span> + resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">userID</a> + <span class="stringliteral">&quot;/filter&quot;</span> };</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> </div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> json list;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> </div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> list[<span class="stringliteral">&quot;event_format&quot;</span>] = <span class="stringliteral">&quot;client&quot;</span>;</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> list[<span class="stringliteral">&quot;event_fields&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#a24cf8c59760cf7fd021bf3fe8ccc641f">Fields</a>;</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> list[<span class="stringliteral">&quot;presence&quot;</span>][<span class="stringliteral">&quot;senders&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#a5e1ade5b1170491596260d53ed0194bb">Senders</a>;</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> list[<span class="stringliteral">&quot;presence&quot;</span>][<span class="stringliteral">&quot;not_senders&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#a6a512538ce1f23a0c035e5120c392505">notSenders</a>;</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> list[<span class="stringliteral">&quot;room&quot;</span>][<span class="stringliteral">&quot;ephemeral&quot;</span>][<span class="stringliteral">&quot;rooms&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#abd1a9e177b61b8106d8ec73c5be56860">Rooms</a>;</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> list[<span class="stringliteral">&quot;room&quot;</span>][<span class="stringliteral">&quot;ephemeral&quot;</span>][<span class="stringliteral">&quot;not_rooms&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#ac0beebf520feb5041a0a74ec38c0aff5">notRooms</a>;</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> list[<span class="stringliteral">&quot;room&quot;</span>][<span class="stringliteral">&quot;ephemeral&quot;</span>][<span class="stringliteral">&quot;senders&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#a5e1ade5b1170491596260d53ed0194bb">Senders</a>;</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> list[<span class="stringliteral">&quot;room&quot;</span>][<span class="stringliteral">&quot;ephemeral&quot;</span>][<span class="stringliteral">&quot;not_senders&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#a6a512538ce1f23a0c035e5120c392505">notSenders</a>;</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> list[<span class="stringliteral">&quot;room&quot;</span>][<span class="stringliteral">&quot;state&quot;</span>][<span class="stringliteral">&quot;rooms&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#abd1a9e177b61b8106d8ec73c5be56860">Rooms</a>;</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> list[<span class="stringliteral">&quot;room&quot;</span>][<span class="stringliteral">&quot;state&quot;</span>][<span class="stringliteral">&quot;not_rooms&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#ac0beebf520feb5041a0a74ec38c0aff5">notRooms</a>;</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> </div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">if</span> (filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#a18347996b1227a4c7a3d328d184ba3da">Limit</a> != 0) {</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> list[<span class="stringliteral">&quot;room&quot;</span>][<span class="stringliteral">&quot;timeline&quot;</span>][<span class="stringliteral">&quot;limit&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#a18347996b1227a4c7a3d328d184ba3da">Limit</a>;</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> }</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> </div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> list[<span class="stringliteral">&quot;room&quot;</span>][<span class="stringliteral">&quot;timeline&quot;</span>][<span class="stringliteral">&quot;not_rooms&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#ac0beebf520feb5041a0a74ec38c0aff5">notRooms</a>;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> list[<span class="stringliteral">&quot;room&quot;</span>][<span class="stringliteral">&quot;timeline&quot;</span>][<span class="stringliteral">&quot;not_senders&quot;</span>] = filter-&gt;<a class="code hl_variable" href="classleet_1_1Filter_1_1Filter.html#a6a512538ce1f23a0c035e5120c392505">notSenders</a>;</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> </div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> std::string Output { <a class="code hl_function" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(APIUrl), list.dump(), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>) };</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> </div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> json reqOutput;</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> reqOutput = json::parse(Output);</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> }</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> </div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> </div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;filter_id&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> <span class="keywordflow">return</span> output[<span class="stringliteral">&quot;filter_id&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> }</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> }</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> </div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span>}</div>
</div>
<div class="ttc" id="aclassleet_1_1Encryption_html"><div class="ttname"><a href="classleet_1_1Encryption.html">leet::Encryption</a></div><div class="ttdoc">Class which hopefully allows you to safely handle encryption and Olm memory.</div><div class="ttdef"><b>Definition</b> libleet.hpp:1568</div></div>
<div class="ttc" id="aclassleet_1_1Encryption_html_abe9300b67a75daedf15ff2a3d08540d6"><div class="ttname"><a href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">leet::Encryption::account</a></div><div class="ttdeci">leet::olmAccount account</div><div class="ttdef"><b>Definition</b> libleet.hpp:1571</div></div>
<div class="ttc" id="aclassleet_1_1Filter_1_1Filter_html"><div class="ttname"><a href="classleet_1_1Filter_1_1Filter.html">leet::Filter::Filter</a></div><div class="ttdoc">Filter, can be used to find an event ID by functions that make use of it.</div><div class="ttdef"><b>Definition</b> libleet.hpp:312</div></div>
<div class="ttc" id="aclassleet_1_1Filter_1_1Filter_html_a18347996b1227a4c7a3d328d184ba3da"><div class="ttname"><a href="classleet_1_1Filter_1_1Filter.html#a18347996b1227a4c7a3d328d184ba3da">leet::Filter::Filter::Limit</a></div><div class="ttdeci">int Limit</div><div class="ttdef"><b>Definition</b> libleet.hpp:320</div></div>
<div class="ttc" id="aclassleet_1_1Filter_1_1Filter_html_a24cf8c59760cf7fd021bf3fe8ccc641f"><div class="ttname"><a href="classleet_1_1Filter_1_1Filter.html#a24cf8c59760cf7fd021bf3fe8ccc641f">leet::Filter::Filter::Fields</a></div><div class="ttdeci">std::vector&lt; std::string &gt; Fields</div><div class="ttdef"><b>Definition</b> libleet.hpp:319</div></div>
<div class="ttc" id="aclassleet_1_1Filter_1_1Filter_html_a5e1ade5b1170491596260d53ed0194bb"><div class="ttname"><a href="classleet_1_1Filter_1_1Filter.html#a5e1ade5b1170491596260d53ed0194bb">leet::Filter::Filter::Senders</a></div><div class="ttdeci">std::vector&lt; std::string &gt; Senders</div><div class="ttdef"><b>Definition</b> libleet.hpp:316</div></div>
<div class="ttc" id="aclassleet_1_1Filter_1_1Filter_html_a6a512538ce1f23a0c035e5120c392505"><div class="ttname"><a href="classleet_1_1Filter_1_1Filter.html#a6a512538ce1f23a0c035e5120c392505">leet::Filter::Filter::notSenders</a></div><div class="ttdeci">std::vector&lt; std::string &gt; notSenders</div><div class="ttdef"><b>Definition</b> libleet.hpp:315</div></div>
<div class="ttc" id="aclassleet_1_1Filter_1_1Filter_html_abd1a9e177b61b8106d8ec73c5be56860"><div class="ttname"><a href="classleet_1_1Filter_1_1Filter.html#abd1a9e177b61b8106d8ec73c5be56860">leet::Filter::Filter::Rooms</a></div><div class="ttdeci">std::vector&lt; std::string &gt; Rooms</div><div class="ttdef"><b>Definition</b> libleet.hpp:318</div></div>
<div class="ttc" id="aclassleet_1_1Filter_1_1Filter_html_ac0beebf520feb5041a0a74ec38c0aff5"><div class="ttname"><a href="classleet_1_1Filter_1_1Filter.html#ac0beebf520feb5041a0a74ec38c0aff5">leet::Filter::Filter::notRooms</a></div><div class="ttdeci">std::vector&lt; std::string &gt; notRooms</div><div class="ttdef"><b>Definition</b> libleet.hpp:317</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></div><div class="ttdoc">Class which represents a single message, along with its properties.</div><div class="ttdef"><b>Definition</b> libleet.hpp:265</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a00407d68662527759fd2404d285f7b82"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a00407d68662527759fd2404d285f7b82">leet::Message::Message::eventID</a></div><div class="ttdeci">std::string eventID</div><div class="ttdef"><b>Definition</b> libleet.hpp:273</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a09401ecd78d0e5b06290adf2acf11e28"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a09401ecd78d0e5b06290adf2acf11e28">leet::Message::Message::thumbnailWidth</a></div><div class="ttdeci">int thumbnailWidth</div><div class="ttdef"><b>Definition</b> libleet.hpp:282</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a28b5c363010fd021f2f1605522258889"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a28b5c363010fd021f2f1605522258889">leet::Message::Message::Age</a></div><div class="ttdeci">int32_t Age</div><div class="ttdef"><b>Definition</b> libleet.hpp:276</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a35e1fbf4f63b29a16f0a6bb1e9de51e8"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a35e1fbf4f63b29a16f0a6bb1e9de51e8">leet::Message::Message::megolm</a></div><div class="ttdeci">bool megolm</div><div class="ttdef"><b>Definition</b> libleet.hpp:289</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a4671a0906f0a44c788f8e5b8c82016e6"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a4671a0906f0a44c788f8e5b8c82016e6">leet::Message::Message::Type</a></div><div class="ttdeci">std::string Type</div><div class="ttdef"><b>Definition</b> libleet.hpp:271</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a5264e3e6694c7c06960a885d1c7fe49b"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a5264e3e6694c7c06960a885d1c7fe49b">leet::Message::Message::thumbnailURL</a></div><div class="ttdeci">std::string thumbnailURL</div><div class="ttdef"><b>Definition</b> libleet.hpp:286</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a74739e3eeb0bca60a6c0285af5c642bb"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a74739e3eeb0bca60a6c0285af5c642bb">leet::Message::Message::messageText</a></div><div class="ttdeci">std::string messageText</div><div class="ttdef"><b>Definition</b> libleet.hpp:268</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a80a089d0765fb792ca1472f400170c51"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a80a089d0765fb792ca1472f400170c51">leet::Message::Message::attachmentHeight</a></div><div class="ttdeci">int attachmentHeight</div><div class="ttdef"><b>Definition</b> libleet.hpp:278</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a83fed20f25325d55a89b41169dd24280"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a83fed20f25325d55a89b41169dd24280">leet::Message::Message::formattedText</a></div><div class="ttdeci">std::string formattedText</div><div class="ttdef"><b>Definition</b> libleet.hpp:269</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a89b2bfdce96b93c066b5f565c6a0074a"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a89b2bfdce96b93c066b5f565c6a0074a">leet::Message::Message::attachmentURL</a></div><div class="ttdeci">std::string attachmentURL</div><div class="ttdef"><b>Definition</b> libleet.hpp:281</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a8dd019876adbaa08129661604f493131"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a8dd019876adbaa08129661604f493131">leet::Message::Message::Format</a></div><div class="ttdeci">std::string Format</div><div class="ttdef"><b>Definition</b> libleet.hpp:270</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a9280e4ed8e1ec6ed3591ac75bb341531"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a9280e4ed8e1ec6ed3591ac75bb341531">leet::Message::Message::senderKey</a></div><div class="ttdeci">std::string senderKey</div><div class="ttdef"><b>Definition</b> libleet.hpp:291</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a99366bce597aa139f1ab01420a0061bf"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a99366bce597aa139f1ab01420a0061bf">leet::Message::Message::attachmentWidth</a></div><div class="ttdeci">int attachmentWidth</div><div class="ttdef"><b>Definition</b> libleet.hpp:277</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a9991e5daa3476527eed8b140ba99d61e"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a9991e5daa3476527eed8b140ba99d61e">leet::Message::Message::thumbnailHeight</a></div><div class="ttdeci">int thumbnailHeight</div><div class="ttdef"><b>Definition</b> libleet.hpp:283</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_a9cdf1012eeeaff58c86fd1ea156a656b"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#a9cdf1012eeeaff58c86fd1ea156a656b">leet::Message::Message::cipherText</a></div><div class="ttdeci">std::string cipherText</div><div class="ttdef"><b>Definition</b> libleet.hpp:290</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_aa0c3f9c7ee665698987b7ad4f3b23040"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#aa0c3f9c7ee665698987b7ad4f3b23040">leet::Message::Message::attachmentSize</a></div><div class="ttdeci">int attachmentSize</div><div class="ttdef"><b>Definition</b> libleet.hpp:279</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_aa81bf1eca55789a987565da2497d67ab"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#aa81bf1eca55789a987565da2497d67ab">leet::Message::Message::mimeType</a></div><div class="ttdeci">std::string mimeType</div><div class="ttdef"><b>Definition</b> libleet.hpp:275</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_aac353fb22826eed5757682ea3378eb02"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#aac353fb22826eed5757682ea3378eb02">leet::Message::Message::thumbnailMimeType</a></div><div class="ttdeci">std::string thumbnailMimeType</div><div class="ttdef"><b>Definition</b> libleet.hpp:285</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_aad48127d5068692876945e050d3968ed"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#aad48127d5068692876945e050d3968ed">leet::Message::Message::thumbnailSize</a></div><div class="ttdeci">int thumbnailSize</div><div class="ttdef"><b>Definition</b> libleet.hpp:284</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_ab76d63f5dc59c42f6dc465cf9071f664"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#ab76d63f5dc59c42f6dc465cf9071f664">leet::Message::Message::Encrypted</a></div><div class="ttdeci">bool Encrypted</div><div class="ttdef"><b>Definition</b> libleet.hpp:288</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_acc12eccb366d62e626c48d707557bd15"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#acc12eccb366d62e626c48d707557bd15">leet::Message::Message::attachmentLength</a></div><div class="ttdeci">int attachmentLength</div><div class="ttdef"><b>Definition</b> libleet.hpp:280</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_acf6d509850c3827076a63a9fc7320a6e"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">leet::Message::Message::messageType</a></div><div class="ttdeci">std::string messageType</div><div class="ttdef"><b>Definition</b> libleet.hpp:272</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_adaeaa3d24938167e2ce791ea21c9c450"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#adaeaa3d24938167e2ce791ea21c9c450">leet::Message::Message::sessionID</a></div><div class="ttdeci">std::string sessionID</div><div class="ttdef"><b>Definition</b> libleet.hpp:292</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_af257e013a8faa42727367a54873615e3"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#af257e013a8faa42727367a54873615e3">leet::Message::Message::deviceID</a></div><div class="ttdeci">std::string deviceID</div><div class="ttdef"><b>Definition</b> libleet.hpp:293</div></div>
<div class="ttc" id="aclassleet_1_1Message_1_1Message_html_af5b9b84cdc8ee474c5acb47b7e632bb8"><div class="ttname"><a href="classleet_1_1Message_1_1Message.html#af5b9b84cdc8ee474c5acb47b7e632bb8">leet::Message::Message::Sender</a></div><div class="ttdeci">std::string Sender</div><div class="ttdef"><b>Definition</b> libleet.hpp:274</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></div><div class="ttdoc">Class which represents a single room, along with its properties.</div><div class="ttdef"><b>Definition</b> libleet.hpp:202</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_a845bb4727d6c821e8d69a15ad0e2eb1f"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">leet::Room::Room::roomID</a></div><div class="ttdeci">std::string roomID</div><div class="ttdef"><b>Definition</b> libleet.hpp:205</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></div><div class="ttdoc">Class which contains the response from the Matrix homeserver on initial login.</div><div class="ttdef"><b>Definition</b> libleet.hpp:144</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_a7561824b6e56efae7257ac9995d43846"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">leet::User::CredentialsResponse::userID</a></div><div class="ttdeci">std::string userID</div><div class="ttdef"><b>Definition</b> libleet.hpp:151</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_ae4d15192559f009ad966de4bc9cdf58a"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">leet::User::CredentialsResponse::accessToken</a></div><div class="ttdeci">std::string accessToken</div><div class="ttdef"><b>Definition</b> libleet.hpp:147</div></div>
<div class="ttc" id="aclassleet_1_1olmAccount_html_ab5422499f6fcef344d157f7d74cfffb8"><div class="ttname"><a href="classleet_1_1olmAccount.html#ab5422499f6fcef344d157f7d74cfffb8">leet::olmAccount::encryptMessage</a></div><div class="ttdeci">const std::string encryptMessage(leet::User::CredentialsResponse *resp, const std::string &amp;message)</div><div class="ttdoc">Encrypt a message.</div><div class="ttdef"><b>Definition</b> libleet.hpp:1331</div></div>
<div class="ttc" id="anamespaceleet_html_a40c1e3b3d1988d56aaa389607d10fe57"><div class="ttname"><a href="namespaceleet.html#a40c1e3b3d1988d56aaa389607d10fe57">leet::sendEncryptedMessage</a></div><div class="ttdeci">void sendEncryptedMessage(User::CredentialsResponse *resp, Encryption *enc, Room::Room *room, Message::Message *msg)</div><div class="ttdoc">Sends an encrypted message to a room.</div><div class="ttdef"><b>Definition</b> Message.cpp:56</div></div>
<div class="ttc" id="anamespaceleet_html_a56a1a90994bbd897072fb1b902abc993"><div class="ttname"><a href="namespaceleet.html#a56a1a90994bbd897072fb1b902abc993">leet::returnFilter</a></div><div class="ttdeci">const std::string returnFilter(User::CredentialsResponse *resp, Filter::Filter *filter)</div><div class="ttdoc">Returns a filter ID which can be used when requesting data.</div><div class="ttdef"><b>Definition</b> Message.cpp:157</div></div>
<div class="ttc" id="anamespaceleet_html_a67dbc8b27a77c92ce074b2ab6ae47850"><div class="ttname"><a href="namespaceleet.html#a67dbc8b27a77c92ce074b2ab6ae47850">leet::sendMessage</a></div><div class="ttdeci">void sendMessage(User::CredentialsResponse *resp, Room::Room *room, Message::Message *msg)</div><div class="ttdoc">Sends a plain text message to the specified room.</div><div class="ttdef"><b>Definition</b> Message.cpp:9</div></div>
<div class="ttc" id="anamespaceleet_html_a87681d6edf2064da9cf4df3dcb3ac67e"><div class="ttname"><a href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a></div><div class="ttdeci">const std::string invokeRequest_Get(const std::string &amp;URL, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Get request.</div><div class="ttdef"><b>Definition</b> Request.cpp:18</div></div>
<div class="ttc" id="anamespaceleet_html_a877400ed8e1e79c183a8f7858d79446d"><div class="ttname"><a href="namespaceleet.html#a877400ed8e1e79c183a8f7858d79446d">leet::returnMessages</a></div><div class="ttdeci">const std::vector&lt; Message::Message &gt; returnMessages(User::CredentialsResponse *resp, Room::Room *room, const int messageCount)</div><div class="ttdoc">Returns a Message::Message vector from a room.</div><div class="ttdef"><b>Definition</b> Message.cpp:90</div></div>
<div class="ttc" id="anamespaceleet_html_aa20a9fa2de98421d60165559a8a23f76"><div class="ttname"><a href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a></div><div class="ttdeci">int errorCode</div><div class="ttdef"><b>Definition</b> libleet.hpp:405</div></div>
<div class="ttc" id="anamespaceleet_html_aa3853464d166cde6fa97f8dfb9e2398f"><div class="ttname"><a href="namespaceleet.html#aa3853464d166cde6fa97f8dfb9e2398f">leet::invokeRequest_Put</a></div><div class="ttdeci">const std::string invokeRequest_Put(const std::string &amp;URL, const std::string &amp;Data, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Put request.</div><div class="ttdef"><b>Definition</b> Request.cpp:21</div></div>
<div class="ttc" id="anamespaceleet_html_aa88a91a144b2176d9ce3c4cad3c45bab"><div class="ttname"><a href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a></div><div class="ttdeci">const std::string invokeRequest_Post(const std::string &amp;URL, const std::string &amp;Data, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Post request.</div><div class="ttdef"><b>Definition</b> Request.cpp:24</div></div>
<div class="ttc" id="anamespaceleet_html_abf8deb3b48c9f7322aa6654885946738"><div class="ttname"><a href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a></div><div class="ttdeci">const std::string getAPI(const std::string &amp;API)</div><div class="ttdoc">Returns a full API URL from a Matrix endpoint.</div><div class="ttdef"><b>Definition</b> libleet.cpp:31</div></div>
<div class="ttc" id="anamespaceleet_html_aca8cf23cb2471b07f1ee22a2077b5b37"><div class="ttname"><a href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a></div><div class="ttdeci">std::string friendlyError</div><div class="ttdef"><b>Definition</b> libleet.hpp:403</div></div>
<div class="ttc" id="anamespaceleet_html_adc8712b33d096d2f8a204e7bad8ed1d4"><div class="ttname"><a href="namespaceleet.html#adc8712b33d096d2f8a204e7bad8ed1d4">leet::TransID</a></div><div class="ttdeci">int TransID</div><div class="ttdef"><b>Definition</b> libleet.hpp:406</div></div>
<div class="ttc" id="anamespaceleet_html_ae7fadb8f554b82e37512ece5f451e345"><div class="ttname"><a href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a></div><div class="ttdeci">std::string Error</div><div class="ttdef"><b>Definition</b> libleet.hpp:402</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

82
docs/html/README_8md.html Executable file
View file

@ -0,0 +1,82 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/README.md File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">/home/speedie/libleet/README.md File Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

98
docs/html/Request_8cpp.html Executable file
View file

@ -0,0 +1,98 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Request.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Request.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="Request_8cpp__dep__incl.png" border="0" usemap="#a_2home_2speedie_2libleet_2src_2Request_8cppdep" alt=""/></div>
<map name="a_2home_2speedie_2libleet_2src_2Request_8cppdep" id="a_2home_2speedie_2libleet_2src_2Request_8cppdep">
<area shape="rect" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" href="libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>
</div>
</div>
<p><a href="Request_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="/home/speedie/libleet/src/Request.cpp" name="/home/speedie/libleet/src/Request.cpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" id="Node000002" href="$libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>

View file

@ -0,0 +1 @@
304c74265bc1056fe9061a4e1181e776

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

View file

@ -0,0 +1,145 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Request.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Request.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="Request_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* libleet</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Matrix client library written in C++</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Licensed under the GNU Affero General Public License version 3.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * See included LICENSE file for more information.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * https://git.speedie.site/speedie/libleet</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="foldopen" id="foldopen00009" data-start="{" data-end="}">
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="namespaceleet.html#ab0f7d7f196a3143c8692d5a3ced13328"> 9</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<span class="keyword">const</span> std::string&amp; URL) {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> <span class="keywordflow">return</span> cpr::Get(cpr::Url{ URL }).text;</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span>}</div>
</div>
<div class="foldopen" id="foldopen00012" data-start="{" data-end="}">
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="namespaceleet.html#a254ed0ea560dd99cfd0060811b9dd289"> 12</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#aa3853464d166cde6fa97f8dfb9e2398f">leet::invokeRequest_Put</a>(<span class="keyword">const</span> std::string&amp; URL, <span class="keyword">const</span> std::string&amp; Data) {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keywordflow">return</span> cpr::Put(cpr::Url{URL}, cpr::Body{Data}).text;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span>}</div>
</div>
<div class="foldopen" id="foldopen00015" data-start="{" data-end="}">
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"><a class="line" href="namespaceleet.html#aa7470c3461e8ea6f5829560ce8fb5fc1"> 15</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a>(<span class="keyword">const</span> std::string&amp; URL, <span class="keyword">const</span> std::string&amp; Data) {</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keywordflow">return</span> cpr::Post(cpr::Url{URL}, cpr::Body{Data}).text;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>}</div>
</div>
<div class="foldopen" id="foldopen00018" data-start="{" data-end="}">
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e"> 18</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<span class="keyword">const</span> std::string&amp; URL, <span class="keyword">const</span> std::string&amp; Authentication) {</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keywordflow">return</span> cpr::Get(cpr::Url{ URL }, cpr::Header{{ <span class="stringliteral">&quot;Authorization&quot;</span>, <span class="stringliteral">&quot;Bearer &quot;</span> + Authentication }}).text;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span>}</div>
</div>
<div class="foldopen" id="foldopen00021" data-start="{" data-end="}">
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="namespaceleet.html#aa3853464d166cde6fa97f8dfb9e2398f"> 21</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#aa3853464d166cde6fa97f8dfb9e2398f">leet::invokeRequest_Put</a>(<span class="keyword">const</span> std::string&amp; URL, <span class="keyword">const</span> std::string&amp; Data, <span class="keyword">const</span> std::string&amp; Authentication) {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">return</span> cpr::Put(cpr::Url{URL}, cpr::Body{Data}, cpr::Header{{ <span class="stringliteral">&quot;Authorization&quot;</span>, <span class="stringliteral">&quot;Bearer &quot;</span> + Authentication }}).text;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>}</div>
</div>
<div class="foldopen" id="foldopen00024" data-start="{" data-end="}">
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab"> 24</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a>(<span class="keyword">const</span> std::string&amp; URL, <span class="keyword">const</span> std::string&amp; Data, <span class="keyword">const</span> std::string&amp; Authentication) {</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">return</span> cpr::Post(cpr::Url{URL}, cpr::Body{Data}, cpr::Header{{ <span class="stringliteral">&quot;Authorization&quot;</span>, <span class="stringliteral">&quot;Bearer &quot;</span> + Authentication }}).text;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span>}</div>
</div>
<div class="foldopen" id="foldopen00027" data-start="{" data-end="}">
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="namespaceleet.html#aa1ece7314d86bbf90688ae10441cea3e"> 27</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#a19dc9056d0f77c0c7eb51f12e9f5f554">leet::invokeRequest_Post_File</a>(<span class="keyword">const</span> std::string&amp; URL, <span class="keyword">const</span> std::string&amp; File, <span class="keyword">const</span> std::string&amp; Authentication) {</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> std::filesystem::path file{ File }; <span class="keywordflow">if</span> (!std::filesystem::exists(file)) <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordflow">return</span> cpr::Post(cpr::Url{URL}, cpr::Body{ cpr::File{File} }, cpr::Header{{ <span class="stringliteral">&quot;Authorization&quot;</span>, <span class="stringliteral">&quot;Bearer &quot;</span> + Authentication }, {<span class="stringliteral">&quot;Content-Type&quot;</span>, <span class="stringliteral">&quot;application/octet-stream&quot;</span>}}).text;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span>}</div>
</div>
<div class="foldopen" id="foldopen00031" data-start="{" data-end="}">
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="namespaceleet.html#a19dc9056d0f77c0c7eb51f12e9f5f554"> 31</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#a19dc9056d0f77c0c7eb51f12e9f5f554">leet::invokeRequest_Post_File</a>(<span class="keyword">const</span> std::string&amp; URL, <span class="keyword">const</span> std::string&amp; File) {</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> std::filesystem::path file{ File }; <span class="keywordflow">if</span> (!std::filesystem::exists(file)) <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">return</span> cpr::Post(cpr::Url{URL}, cpr::Body{ cpr::File{File} }, cpr::Header{{<span class="stringliteral">&quot;Content-Type&quot;</span>, <span class="stringliteral">&quot;application/octet-stream&quot;</span>}}).text;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span>}</div>
</div>
<div class="ttc" id="anamespaceleet_html_a19dc9056d0f77c0c7eb51f12e9f5f554"><div class="ttname"><a href="namespaceleet.html#a19dc9056d0f77c0c7eb51f12e9f5f554">leet::invokeRequest_Post_File</a></div><div class="ttdeci">const std::string invokeRequest_Post_File(const std::string &amp;URL, const std::string &amp;File)</div><div class="ttdoc">Invokes a Post request.</div><div class="ttdef"><b>Definition</b> Request.cpp:31</div></div>
<div class="ttc" id="anamespaceleet_html_a87681d6edf2064da9cf4df3dcb3ac67e"><div class="ttname"><a href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a></div><div class="ttdeci">const std::string invokeRequest_Get(const std::string &amp;URL, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Get request.</div><div class="ttdef"><b>Definition</b> Request.cpp:18</div></div>
<div class="ttc" id="anamespaceleet_html_aa3853464d166cde6fa97f8dfb9e2398f"><div class="ttname"><a href="namespaceleet.html#aa3853464d166cde6fa97f8dfb9e2398f">leet::invokeRequest_Put</a></div><div class="ttdeci">const std::string invokeRequest_Put(const std::string &amp;URL, const std::string &amp;Data, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Put request.</div><div class="ttdef"><b>Definition</b> Request.cpp:21</div></div>
<div class="ttc" id="anamespaceleet_html_aa88a91a144b2176d9ce3c4cad3c45bab"><div class="ttname"><a href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a></div><div class="ttdeci">const std::string invokeRequest_Post(const std::string &amp;URL, const std::string &amp;Data, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Post request.</div><div class="ttdef"><b>Definition</b> Request.cpp:24</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

98
docs/html/Room_8cpp.html Executable file
View file

@ -0,0 +1,98 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Room.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Room.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="Room_8cpp__dep__incl.png" border="0" usemap="#a_2home_2speedie_2libleet_2src_2Room_8cppdep" alt=""/></div>
<map name="a_2home_2speedie_2libleet_2src_2Room_8cppdep" id="a_2home_2speedie_2libleet_2src_2Room_8cppdep">
<area shape="rect" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" href="libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>
</div>
</div>
<p><a href="Room_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="/home/speedie/libleet/src/Room.cpp" name="/home/speedie/libleet/src/Room.cpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" id="Node000002" href="$libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>

View file

@ -0,0 +1 @@
7b37f94717b574444f222c6a83743d6f

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

466
docs/html/Room_8cpp_source.html Executable file
View file

@ -0,0 +1,466 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Room.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Room.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="Room_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* libleet</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Matrix client library written in C++</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Licensed under the GNU Affero General Public License version 3.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * See included LICENSE file for more information.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * https://git.speedie.site/speedie/libleet</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment">/* Converts an alias to a proper room ID */</span></div>
<div class="foldopen" id="foldopen00010" data-start="{" data-end="}">
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"><a class="line" href="namespaceleet.html#af66fefe88b0d6ee698399cbb9d5de650"> 10</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#af66fefe88b0d6ee698399cbb9d5de650">leet::findRoomID</a>(std::string Alias) {</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="keywordflow">if</span> (Alias[0] == <span class="charliteral">&#39;!&#39;</span>) { <span class="comment">// It&#39;s a proper room ID already</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keywordflow">return</span> Alias;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> }</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="comment">// Replace the &#39;#&#39; character with &#39;%23&#39; so that Matrix is happy</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> Alias.replace(0, 1, <span class="stringliteral">&quot;%23&quot;</span>);</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/directory/room/&quot;</span>) + Alias);</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> json reqOutput;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> }</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;room_id&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">return</span> output[<span class="stringliteral">&quot;room_id&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!output[<span class="stringliteral">&quot;errcode&quot;</span>].is_null()) {</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> }</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> }</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>}</div>
</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="comment">/* Returns an array of all rooms */</span></div>
<div class="foldopen" id="foldopen00048" data-start="{" data-end="}">
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="namespaceleet.html#a0becdb7d81d60ba11e9b196c2ac312f7"> 48</a></span><span class="keyword">const</span> std::vector&lt;leet::Room::Room&gt; <a class="code hl_function" href="namespaceleet.html#a0becdb7d81d60ba11e9b196c2ac312f7">leet::returnRooms</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <span class="keyword">const</span> <span class="keywordtype">int</span> Limit) {</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> std::vector&lt;leet::Room::Room&gt; vector;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> std::vector&lt;leet::Room::Room&gt; vectorWithVal;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/joined_rooms&quot;</span>), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>);</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> json returnOutput;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> returnOutput = json::parse(Output);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">return</span> vector;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> }</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keyword">auto</span>&amp; rooms = returnOutput[<span class="stringliteral">&quot;joined_rooms&quot;</span>];</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = rooms.begin(); it != rooms.end(); ++it) {</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a> room;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> = it.value();</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> vector.push_back(room);</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> }</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; it : vector) {</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a> room = <a class="code hl_function" href="namespaceleet.html#a20ad1f62e70791be89e97ef10a2e17e8">leet::returnRoom</a>(resp, &amp;it);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> </div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> vectorWithVal.push_back(room);</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> }</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> vectorWithVal;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span>}</div>
</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> </div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span><span class="comment">/* Returns a single room based on the room ID */</span></div>
<div class="foldopen" id="foldopen00081" data-start="{" data-end="}">
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="namespaceleet.html#a20ad1f62e70791be89e97ef10a2e17e8"> 81</a></span><a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a> <a class="code hl_function" href="namespaceleet.html#a20ad1f62e70791be89e97ef10a2e17e8">leet::returnRoom</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>* room) {</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a> theRoom;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> json returnOutput;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> </div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> returnOutput = json::parse(<a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v1/rooms/&quot;</span> + room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> + <span class="stringliteral">&quot;/hierarchy&quot;</span>), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>));</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">return</span> theRoom;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> }</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> </div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keyword">auto</span>&amp; roomOutput = returnOutput[<span class="stringliteral">&quot;rooms&quot;</span>];</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> </div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> i = roomOutput.begin(); i != roomOutput.end(); ++i) {</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;room_id&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> = i.value()[<span class="stringliteral">&quot;room_id&quot;</span>];</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;join_rule&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#ad0ab315f7274216739745338efe29f07">joinRule</a> = i.value()[<span class="stringliteral">&quot;join_rule&quot;</span>];</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;avatar_url&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#ab1052fe37c147c30584aff43b4b069ff">avatarURL</a> = i.value()[<span class="stringliteral">&quot;avatar_url&quot;</span>];</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;canonical_alias&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a0538af516a75049404ec9539fe7fb840">Alias</a> = i.value()[<span class="stringliteral">&quot;canonical_alias&quot;</span>];</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;name&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a6b5746c5c53d42034dec46e2cf6189de">Name</a> = i.value()[<span class="stringliteral">&quot;name&quot;</span>];</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;num_joined_members&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#af13dd9a222670785bce39a8f37781261">memberCount</a> = i.value()[<span class="stringliteral">&quot;num_joined_members&quot;</span>];</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;topic&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a5c8cea2c4db4c9b61ae036cc1916bc1e">Topic</a> = i.value()[<span class="stringliteral">&quot;topic&quot;</span>];</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;guest_can_join&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#ab59f5c2b57fde7afa34889351df89487">guestCanJoin</a> = i.value()[<span class="stringliteral">&quot;guest_can_join&quot;</span>];</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;world_readable&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a298b5a68814b235f8a4b06b9c53ce037">worldReadable</a> = i.value()[<span class="stringliteral">&quot;world_readable&quot;</span>];</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">if</span> (i.value().contains(<span class="stringliteral">&quot;room_type&quot;</span>)) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#aaeec2e60131518470891846c91383e99">roomType</a> = i.value()[<span class="stringliteral">&quot;room_type&quot;</span>];</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> }</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">return</span> theRoom;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span>}</div>
</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
<div class="foldopen" id="foldopen00110" data-start="{" data-end="}">
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"><a class="line" href="namespaceleet.html#aeec1a06048a9cba651c0f494ab7cdb2c"> 110</a></span><a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a> <a class="code hl_function" href="namespaceleet.html#aeec1a06048a9cba651c0f494ab7cdb2c">leet::createRoom</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Room_1_1RoomConfiguration.html">leet::Room::RoomConfiguration</a>* conf) {</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> </div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a> theRoom;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> json theJson;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> </div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> theJson[<span class="stringliteral">&quot;creation_content&quot;</span>][<span class="stringliteral">&quot;m.federate&quot;</span>] = conf-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1RoomConfiguration.html#a7e5f488e18d862f3c4655f798ed7115b">Federate</a>;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> theJson[<span class="stringliteral">&quot;name&quot;</span>] = conf-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1RoomConfiguration.html#a8c2f5543102d07f01e208b2e60b4e11c">Name</a>;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> theJson[<span class="stringliteral">&quot;room_alias_name&quot;</span>] = conf-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1RoomConfiguration.html#a488931db81d40d8a5a6c5171c1953bc9">Alias</a>;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> theJson[<span class="stringliteral">&quot;topic&quot;</span>] = conf-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1RoomConfiguration.html#a6ad56cafb86bf46d037df0895766723c">Topic</a>;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> theJson[<span class="stringliteral">&quot;is_direct&quot;</span>] = conf-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1RoomConfiguration.html#adf72ed90c288c8c27def497cd29802be">directMessage</a>;</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> </div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">if</span> (conf-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1RoomConfiguration.html#a7bbba753f1a30732f9ab172d91f45eb0">Preset</a> == <a class="code hl_enumvalue" href="libleet_8hpp.html#a99fb83031ce9923c84392b4e92f956b5afce12095afb56b5f2cc3d2f8d9cac6e0">LEET_PRESET_PUBLIC</a>) {</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> theJson[<span class="stringliteral">&quot;preset&quot;</span>] = <span class="stringliteral">&quot;public_chat&quot;</span>;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (conf-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1RoomConfiguration.html#a7bbba753f1a30732f9ab172d91f45eb0">Preset</a> == <a class="code hl_enumvalue" href="libleet_8hpp.html#a99fb83031ce9923c84392b4e92f956b5a15c58dbe9e3cf5597283ce336d808378">LEET_PRESET_PRIVATE</a>) {</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> theJson[<span class="stringliteral">&quot;preset&quot;</span>] = <span class="stringliteral">&quot;private_chat&quot;</span>;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (conf-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1RoomConfiguration.html#a7bbba753f1a30732f9ab172d91f45eb0">Preset</a> == <a class="code hl_enumvalue" href="libleet_8hpp.html#a99fb83031ce9923c84392b4e92f956b5aa78999be4375c94da01fe1ca4073dfbd">LEET_PRESET_TRUSTED_PRIVATE</a>) {</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> theJson[<span class="stringliteral">&quot;preset&quot;</span>] = <span class="stringliteral">&quot;trusted_private_chat&quot;</span>;</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> }</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> </div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/createRoom&quot;</span>), theJson.dump(), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>);</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> json reqOutput;</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> </div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">return</span> theRoom;</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> }</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> </div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> </div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;room_id&quot;</span>].is_string()) theRoom.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> = output[<span class="stringliteral">&quot;room_id&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> }</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> </div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceleet.html#a20ad1f62e70791be89e97ef10a2e17e8">leet::returnRoom</a>(resp, &amp;theRoom);</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span>}</div>
</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> </div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span><span class="comment">/* Returns an array of all room IDs */</span></div>
<div class="foldopen" id="foldopen00151" data-start="{" data-end="}">
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"><a class="line" href="namespaceleet.html#ae4179f205bbcae31f1332c5daff19630"> 151</a></span><span class="keyword">const</span> std::vector&lt;leet::Room::Room&gt; <a class="code hl_function" href="namespaceleet.html#ae4179f205bbcae31f1332c5daff19630">leet::returnRoomIDs</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp) {</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> </div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> std::vector&lt;leet::Room::Room&gt; vector;</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> </div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/joined_rooms&quot;</span>), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>);</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> json returnOutput;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> </div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> returnOutput = json::parse(Output);</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">return</span> vector;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> }</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> </div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> <span class="keyword">auto</span>&amp; rooms = returnOutput[<span class="stringliteral">&quot;joined_rooms&quot;</span>];</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> </div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = rooms.begin(); it != rooms.end(); ++it) {</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a> room;</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> = it.value();</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> vector.push_back(room);</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> }</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> </div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">return</span> vector;</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span>}</div>
</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> </div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span><span class="comment">/* Returns an array of all rooms in a space */</span></div>
<div class="foldopen" id="foldopen00177" data-start="{" data-end="}">
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"><a class="line" href="namespaceleet.html#a9819e1abc2ed3b322de730a89936ea97"> 177</a></span><span class="keyword">const</span> std::vector&lt;leet::Room::Room&gt; <a class="code hl_function" href="namespaceleet.html#a9819e1abc2ed3b322de730a89936ea97">leet::returnRoomsInSpace</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <span class="keyword">const</span> std::string&amp; spaceID, <span class="keyword">const</span> <span class="keywordtype">int</span> Limit) {</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> std::vector&lt;leet::Room::Room&gt; rooms;</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <span class="keywordflow">if</span> (spaceID[0] != <span class="charliteral">&#39;!&#39;</span>) {</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">return</span> rooms;</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> }</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> </div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keyword">const</span> std::string Output { <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v1/rooms/&quot;</span> + spaceID + <span class="stringliteral">&quot;/hierarchy?limit=&quot;</span> + std::to_string(Limit)), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>) };</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> json returnOutput;</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> </div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> returnOutput = json::parse(Output);</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">return</span> rooms;</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> }</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> </div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="keyword">auto</span>&amp; room = returnOutput[<span class="stringliteral">&quot;rooms&quot;</span>];</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> </div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = room.begin(); it != room.end(); ++it) {</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a> room;</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> </div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;room_id&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> = it.value()[<span class="stringliteral">&quot;room_id&quot;</span>];</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;join_rule&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#ad0ab315f7274216739745338efe29f07">joinRule</a> = it.value()[<span class="stringliteral">&quot;join_rule&quot;</span>];</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;avatar_url&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#ab1052fe37c147c30584aff43b4b069ff">avatarURL</a> = it.value()[<span class="stringliteral">&quot;avatar_url&quot;</span>];</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;canonical_alias&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a0538af516a75049404ec9539fe7fb840">Alias</a> = it.value()[<span class="stringliteral">&quot;canonical_alias&quot;</span>];</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;name&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a6b5746c5c53d42034dec46e2cf6189de">Name</a> = it.value()[<span class="stringliteral">&quot;name&quot;</span>];</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;num_joined_members&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#af13dd9a222670785bce39a8f37781261">memberCount</a> = it.value()[<span class="stringliteral">&quot;num_joined_members&quot;</span>];</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;topic&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a5c8cea2c4db4c9b61ae036cc1916bc1e">Topic</a> = it.value()[<span class="stringliteral">&quot;topic&quot;</span>];</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;guest_can_join&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#ab59f5c2b57fde7afa34889351df89487">guestCanJoin</a> = it.value()[<span class="stringliteral">&quot;guest_can_join&quot;</span>];</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;world_readable&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a298b5a68814b235f8a4b06b9c53ce037">worldReadable</a> = it.value()[<span class="stringliteral">&quot;world_readable&quot;</span>];</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;room_type&quot;</span>)) room.<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#aaeec2e60131518470891846c91383e99">roomType</a> = it.value()[<span class="stringliteral">&quot;room_type&quot;</span>];</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> </div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> rooms.push_back(room);</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> }</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> </div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> <span class="keywordflow">return</span> rooms;</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span>}</div>
</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> </div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span><span class="comment">/* Returns a vector of all spaces */</span></div>
<div class="foldopen" id="foldopen00216" data-start="{" data-end="}">
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"><a class="line" href="namespaceleet.html#a70a7b20cb7a7c238754013b4c422afb7"> 216</a></span><span class="keyword">const</span> std::vector&lt;leet::Space::Space&gt; <a class="code hl_function" href="namespaceleet.html#a70a7b20cb7a7c238754013b4c422afb7">leet::returnSpaces</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <span class="keyword">const</span> <span class="keywordtype">int</span> Limit) {</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> std::vector&lt;leet::Space::Space&gt; spaces;</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> std::vector&lt;leet::Room::Room&gt; rooms = <a class="code hl_function" href="namespaceleet.html#ae4179f205bbcae31f1332c5daff19630">leet::returnRoomIDs</a>(resp);</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> </div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; room : rooms) { <span class="comment">// each room id</span></div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> <a class="code hl_class" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a> space;</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> std::vector&lt;leet::Room::Room&gt; roomsInSpace = <a class="code hl_function" href="namespaceleet.html#a9819e1abc2ed3b322de730a89936ea97">leet::returnRoomsInSpace</a>(resp, room.roomID, Limit);</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> </div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; roomInSpace : roomsInSpace) { <span class="comment">// each room in the space</span></div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">if</span> (roomInSpace.roomType.compare(<span class="stringliteral">&quot;m.space&quot;</span>)) {</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#a30dac192936b2a8763e36115850c2c4a">Rooms</a>.push_back(roomInSpace);</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> }</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> </div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#a52764052510fc54888847af4db7d729a">spaceID</a> = roomInSpace.roomID;</div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#aa6a2dcb28ff823991d16f8c1841e70c1">joinRule</a> = roomInSpace.joinRule;</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#aff9b4f7a0caf0cc07690975bef9c01b0">avatarURL</a> = roomInSpace.avatarURL;</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#a604b0077380d6603afe00b176795b40d">Alias</a> = roomInSpace.Alias;</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#a6129d6d781a3af69cb6e1d0eb6fa6fa6">Name</a> = roomInSpace.Name;</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#a2898d95d87f84676063aac02fdf17367">memberCount</a> = roomInSpace.memberCount;</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#a4114754daba01833bff6e1c58c13b974">Topic</a> = roomInSpace.Topic;</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#ad239a67124112092cfc4bd7db6127de3">guestCanJoin</a> = roomInSpace.guestCanJoin;</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#aaaa1ca02f50c37b566ef6146f87d17ce">worldReadable</a> = roomInSpace.worldReadable;</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> </div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> space.<a class="code hl_variable" href="classleet_1_1Space_1_1Space.html#a30dac192936b2a8763e36115850c2c4a">Rooms</a>.push_back(roomInSpace);</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> </div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">break</span>;</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> }</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> </div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> spaces.push_back(space);</div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> }</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> </div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> <span class="keywordflow">return</span> spaces;</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span>}</div>
</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> </div>
<div class="foldopen" id="foldopen00251" data-start="{" data-end="}">
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"><a class="line" href="namespaceleet.html#a97a051b8d6cbb32e4cb8e9e8562f81fd"> 251</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="namespaceleet.html#a97a051b8d6cbb32e4cb8e9e8562f81fd">leet::toggleTyping</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <span class="keyword">const</span> <span class="keywordtype">int</span> Timeout, <span class="keyword">const</span> <span class="keywordtype">bool</span> Typing, <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>* room) {</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> </div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> json list;</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> </div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> list[<span class="stringliteral">&quot;timeout&quot;</span>] = Timeout;</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> list[<span class="stringliteral">&quot;typing&quot;</span>] = Typing;</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> </div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <span class="keyword">const</span> std::string Output { <a class="code hl_function" href="namespaceleet.html#aa3853464d166cde6fa97f8dfb9e2398f">leet::invokeRequest_Put</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/rooms/&quot;</span> + room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> + <span class="stringliteral">&quot;/typing/&quot;</span> + resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">userID</a>), list.dump(), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>) };</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> </div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> json reqOutput;</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> </div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> }</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> </div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> </div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> }</div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> }</div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span>}</div>
</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> </div>
<div class="foldopen" id="foldopen00280" data-start="{" data-end="}">
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"><a class="line" href="namespaceleet.html#a75c8d9291eb204589c1928ea607dd95b"> 280</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="namespaceleet.html#a75c8d9291eb204589c1928ea607dd95b">leet::inviteUserToRoom</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>* room, <span class="keyword">const</span> std::string&amp; Reason) {</div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> </div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> json request;</div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> </div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> request[<span class="stringliteral">&quot;reason&quot;</span>] = Reason;</div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> request[<span class="stringliteral">&quot;user_id&quot;</span>] = resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">userID</a>;</div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> </div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> <span class="keyword">const</span> std::string Output { <a class="code hl_function" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/rooms/&quot;</span> + room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> + <span class="stringliteral">&quot;/invite&quot;</span>), request.dump(), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>) };</div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> json reqOutput;</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> </div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> }</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> </div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> </div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span> }</div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> }</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span>}</div>
</div>
<div class="ttc" id="aclassleet_1_1Room_1_1RoomConfiguration_html"><div class="ttname"><a href="classleet_1_1Room_1_1RoomConfiguration.html">leet::Room::RoomConfiguration</a></div><div class="ttdoc">Class which represents settings for a single room that should be created.</div><div class="ttdef"><b>Definition</b> libleet.hpp:219</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1RoomConfiguration_html_a488931db81d40d8a5a6c5171c1953bc9"><div class="ttname"><a href="classleet_1_1Room_1_1RoomConfiguration.html#a488931db81d40d8a5a6c5171c1953bc9">leet::Room::RoomConfiguration::Alias</a></div><div class="ttdeci">std::string Alias</div><div class="ttdef"><b>Definition</b> libleet.hpp:226</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1RoomConfiguration_html_a6ad56cafb86bf46d037df0895766723c"><div class="ttname"><a href="classleet_1_1Room_1_1RoomConfiguration.html#a6ad56cafb86bf46d037df0895766723c">leet::Room::RoomConfiguration::Topic</a></div><div class="ttdeci">std::string Topic</div><div class="ttdef"><b>Definition</b> libleet.hpp:227</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1RoomConfiguration_html_a7bbba753f1a30732f9ab172d91f45eb0"><div class="ttname"><a href="classleet_1_1Room_1_1RoomConfiguration.html#a7bbba753f1a30732f9ab172d91f45eb0">leet::Room::RoomConfiguration::Preset</a></div><div class="ttdeci">int Preset</div><div class="ttdef"><b>Definition</b> libleet.hpp:224</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1RoomConfiguration_html_a7e5f488e18d862f3c4655f798ed7115b"><div class="ttname"><a href="classleet_1_1Room_1_1RoomConfiguration.html#a7e5f488e18d862f3c4655f798ed7115b">leet::Room::RoomConfiguration::Federate</a></div><div class="ttdeci">bool Federate</div><div class="ttdef"><b>Definition</b> libleet.hpp:222</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1RoomConfiguration_html_a8c2f5543102d07f01e208b2e60b4e11c"><div class="ttname"><a href="classleet_1_1Room_1_1RoomConfiguration.html#a8c2f5543102d07f01e208b2e60b4e11c">leet::Room::RoomConfiguration::Name</a></div><div class="ttdeci">std::string Name</div><div class="ttdef"><b>Definition</b> libleet.hpp:225</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1RoomConfiguration_html_adf72ed90c288c8c27def497cd29802be"><div class="ttname"><a href="classleet_1_1Room_1_1RoomConfiguration.html#adf72ed90c288c8c27def497cd29802be">leet::Room::RoomConfiguration::directMessage</a></div><div class="ttdeci">bool directMessage</div><div class="ttdef"><b>Definition</b> libleet.hpp:223</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></div><div class="ttdoc">Class which represents a single room, along with its properties.</div><div class="ttdef"><b>Definition</b> libleet.hpp:202</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_a0538af516a75049404ec9539fe7fb840"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#a0538af516a75049404ec9539fe7fb840">leet::Room::Room::Alias</a></div><div class="ttdeci">std::string Alias</div><div class="ttdef"><b>Definition</b> libleet.hpp:211</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_a298b5a68814b235f8a4b06b9c53ce037"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#a298b5a68814b235f8a4b06b9c53ce037">leet::Room::Room::worldReadable</a></div><div class="ttdeci">bool worldReadable</div><div class="ttdef"><b>Definition</b> libleet.hpp:210</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_a5c8cea2c4db4c9b61ae036cc1916bc1e"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#a5c8cea2c4db4c9b61ae036cc1916bc1e">leet::Room::Room::Topic</a></div><div class="ttdeci">std::string Topic</div><div class="ttdef"><b>Definition</b> libleet.hpp:212</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_a6b5746c5c53d42034dec46e2cf6189de"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#a6b5746c5c53d42034dec46e2cf6189de">leet::Room::Room::Name</a></div><div class="ttdeci">std::string Name</div><div class="ttdef"><b>Definition</b> libleet.hpp:207</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_a845bb4727d6c821e8d69a15ad0e2eb1f"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">leet::Room::Room::roomID</a></div><div class="ttdeci">std::string roomID</div><div class="ttdef"><b>Definition</b> libleet.hpp:205</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_aaeec2e60131518470891846c91383e99"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#aaeec2e60131518470891846c91383e99">leet::Room::Room::roomType</a></div><div class="ttdeci">std::string roomType</div><div class="ttdef"><b>Definition</b> libleet.hpp:206</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_ab1052fe37c147c30584aff43b4b069ff"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#ab1052fe37c147c30584aff43b4b069ff">leet::Room::Room::avatarURL</a></div><div class="ttdeci">std::string avatarURL</div><div class="ttdef"><b>Definition</b> libleet.hpp:208</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_ab59f5c2b57fde7afa34889351df89487"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#ab59f5c2b57fde7afa34889351df89487">leet::Room::Room::guestCanJoin</a></div><div class="ttdeci">bool guestCanJoin</div><div class="ttdef"><b>Definition</b> libleet.hpp:209</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_ad0ab315f7274216739745338efe29f07"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#ad0ab315f7274216739745338efe29f07">leet::Room::Room::joinRule</a></div><div class="ttdeci">std::string joinRule</div><div class="ttdef"><b>Definition</b> libleet.hpp:213</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_af13dd9a222670785bce39a8f37781261"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#af13dd9a222670785bce39a8f37781261">leet::Room::Room::memberCount</a></div><div class="ttdeci">int memberCount</div><div class="ttdef"><b>Definition</b> libleet.hpp:214</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></div><div class="ttdoc">Class which represents a space, which is a collection of rooms.</div><div class="ttdef"><b>Definition</b> libleet.hpp:241</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_a2898d95d87f84676063aac02fdf17367"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#a2898d95d87f84676063aac02fdf17367">leet::Space::Space::memberCount</a></div><div class="ttdeci">int memberCount</div><div class="ttdef"><b>Definition</b> libleet.hpp:253</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_a30dac192936b2a8763e36115850c2c4a"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#a30dac192936b2a8763e36115850c2c4a">leet::Space::Space::Rooms</a></div><div class="ttdeci">std::vector&lt; Room::Room &gt; Rooms</div><div class="ttdef"><b>Definition</b> libleet.hpp:254</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_a4114754daba01833bff6e1c58c13b974"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#a4114754daba01833bff6e1c58c13b974">leet::Space::Space::Topic</a></div><div class="ttdeci">std::string Topic</div><div class="ttdef"><b>Definition</b> libleet.hpp:251</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_a52764052510fc54888847af4db7d729a"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#a52764052510fc54888847af4db7d729a">leet::Space::Space::spaceID</a></div><div class="ttdeci">std::string spaceID</div><div class="ttdef"><b>Definition</b> libleet.hpp:244</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_a604b0077380d6603afe00b176795b40d"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#a604b0077380d6603afe00b176795b40d">leet::Space::Space::Alias</a></div><div class="ttdeci">std::string Alias</div><div class="ttdef"><b>Definition</b> libleet.hpp:250</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_a6129d6d781a3af69cb6e1d0eb6fa6fa6"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#a6129d6d781a3af69cb6e1d0eb6fa6fa6">leet::Space::Space::Name</a></div><div class="ttdeci">std::string Name</div><div class="ttdef"><b>Definition</b> libleet.hpp:246</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_aa6a2dcb28ff823991d16f8c1841e70c1"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#aa6a2dcb28ff823991d16f8c1841e70c1">leet::Space::Space::joinRule</a></div><div class="ttdeci">std::string joinRule</div><div class="ttdef"><b>Definition</b> libleet.hpp:252</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_aaaa1ca02f50c37b566ef6146f87d17ce"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#aaaa1ca02f50c37b566ef6146f87d17ce">leet::Space::Space::worldReadable</a></div><div class="ttdeci">bool worldReadable</div><div class="ttdef"><b>Definition</b> libleet.hpp:249</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_ad239a67124112092cfc4bd7db6127de3"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#ad239a67124112092cfc4bd7db6127de3">leet::Space::Space::guestCanJoin</a></div><div class="ttdeci">bool guestCanJoin</div><div class="ttdef"><b>Definition</b> libleet.hpp:248</div></div>
<div class="ttc" id="aclassleet_1_1Space_1_1Space_html_aff9b4f7a0caf0cc07690975bef9c01b0"><div class="ttname"><a href="classleet_1_1Space_1_1Space.html#aff9b4f7a0caf0cc07690975bef9c01b0">leet::Space::Space::avatarURL</a></div><div class="ttdeci">std::string avatarURL</div><div class="ttdef"><b>Definition</b> libleet.hpp:247</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></div><div class="ttdoc">Class which contains the response from the Matrix homeserver on initial login.</div><div class="ttdef"><b>Definition</b> libleet.hpp:144</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_a7561824b6e56efae7257ac9995d43846"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">leet::User::CredentialsResponse::userID</a></div><div class="ttdeci">std::string userID</div><div class="ttdef"><b>Definition</b> libleet.hpp:151</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_ae4d15192559f009ad966de4bc9cdf58a"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">leet::User::CredentialsResponse::accessToken</a></div><div class="ttdeci">std::string accessToken</div><div class="ttdef"><b>Definition</b> libleet.hpp:147</div></div>
<div class="ttc" id="alibleet_8hpp_html_a99fb83031ce9923c84392b4e92f956b5a15c58dbe9e3cf5597283ce336d808378"><div class="ttname"><a href="libleet_8hpp.html#a99fb83031ce9923c84392b4e92f956b5a15c58dbe9e3cf5597283ce336d808378">LEET_PRESET_PRIVATE</a></div><div class="ttdeci">@ LEET_PRESET_PRIVATE</div><div class="ttdef"><b>Definition</b> libleet.hpp:43</div></div>
<div class="ttc" id="alibleet_8hpp_html_a99fb83031ce9923c84392b4e92f956b5aa78999be4375c94da01fe1ca4073dfbd"><div class="ttname"><a href="libleet_8hpp.html#a99fb83031ce9923c84392b4e92f956b5aa78999be4375c94da01fe1ca4073dfbd">LEET_PRESET_TRUSTED_PRIVATE</a></div><div class="ttdeci">@ LEET_PRESET_TRUSTED_PRIVATE</div><div class="ttdef"><b>Definition</b> libleet.hpp:42</div></div>
<div class="ttc" id="alibleet_8hpp_html_a99fb83031ce9923c84392b4e92f956b5afce12095afb56b5f2cc3d2f8d9cac6e0"><div class="ttname"><a href="libleet_8hpp.html#a99fb83031ce9923c84392b4e92f956b5afce12095afb56b5f2cc3d2f8d9cac6e0">LEET_PRESET_PUBLIC</a></div><div class="ttdeci">@ LEET_PRESET_PUBLIC</div><div class="ttdef"><b>Definition</b> libleet.hpp:44</div></div>
<div class="ttc" id="anamespaceleet_html_a0becdb7d81d60ba11e9b196c2ac312f7"><div class="ttname"><a href="namespaceleet.html#a0becdb7d81d60ba11e9b196c2ac312f7">leet::returnRooms</a></div><div class="ttdeci">const std::vector&lt; Room::Room &gt; returnRooms(User::CredentialsResponse *resp, const int Limit)</div><div class="ttdoc">Returns a vector of all rooms your user has joined.</div><div class="ttdef"><b>Definition</b> Room.cpp:48</div></div>
<div class="ttc" id="anamespaceleet_html_a20ad1f62e70791be89e97ef10a2e17e8"><div class="ttname"><a href="namespaceleet.html#a20ad1f62e70791be89e97ef10a2e17e8">leet::returnRoom</a></div><div class="ttdeci">Room::Room returnRoom(User::CredentialsResponse *resp, Room::Room *room)</div><div class="ttdoc">Gets information about a room based on a room ID.</div><div class="ttdef"><b>Definition</b> Room.cpp:81</div></div>
<div class="ttc" id="anamespaceleet_html_a70a7b20cb7a7c238754013b4c422afb7"><div class="ttname"><a href="namespaceleet.html#a70a7b20cb7a7c238754013b4c422afb7">leet::returnSpaces</a></div><div class="ttdeci">const std::vector&lt; Space::Space &gt; returnSpaces(User::CredentialsResponse *resp, const int Limit)</div><div class="ttdoc">Returns a vector of all spaces your user has joined.</div><div class="ttdef"><b>Definition</b> Room.cpp:216</div></div>
<div class="ttc" id="anamespaceleet_html_a75c8d9291eb204589c1928ea607dd95b"><div class="ttname"><a href="namespaceleet.html#a75c8d9291eb204589c1928ea607dd95b">leet::inviteUserToRoom</a></div><div class="ttdeci">void inviteUserToRoom(User::CredentialsResponse *resp, Room::Room *room, const std::string &amp;Reason)</div><div class="ttdoc">Invite a user to a room,.</div><div class="ttdef"><b>Definition</b> Room.cpp:280</div></div>
<div class="ttc" id="anamespaceleet_html_a87681d6edf2064da9cf4df3dcb3ac67e"><div class="ttname"><a href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a></div><div class="ttdeci">const std::string invokeRequest_Get(const std::string &amp;URL, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Get request.</div><div class="ttdef"><b>Definition</b> Request.cpp:18</div></div>
<div class="ttc" id="anamespaceleet_html_a97a051b8d6cbb32e4cb8e9e8562f81fd"><div class="ttname"><a href="namespaceleet.html#a97a051b8d6cbb32e4cb8e9e8562f81fd">leet::toggleTyping</a></div><div class="ttdeci">void toggleTyping(User::CredentialsResponse *resp, const int Timeout, const bool Typing, Room::Room *room)</div><div class="ttdoc">Toggles typing in a room.</div><div class="ttdef"><b>Definition</b> Room.cpp:251</div></div>
<div class="ttc" id="anamespaceleet_html_a9819e1abc2ed3b322de730a89936ea97"><div class="ttname"><a href="namespaceleet.html#a9819e1abc2ed3b322de730a89936ea97">leet::returnRoomsInSpace</a></div><div class="ttdeci">const std::vector&lt; Room::Room &gt; returnRoomsInSpace(User::CredentialsResponse *resp, const std::string &amp;spaceID, const int Limit)</div><div class="ttdoc">Returns a vector of all rooms in a space.</div><div class="ttdef"><b>Definition</b> Room.cpp:177</div></div>
<div class="ttc" id="anamespaceleet_html_aa20a9fa2de98421d60165559a8a23f76"><div class="ttname"><a href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a></div><div class="ttdeci">int errorCode</div><div class="ttdef"><b>Definition</b> libleet.hpp:405</div></div>
<div class="ttc" id="anamespaceleet_html_aa3853464d166cde6fa97f8dfb9e2398f"><div class="ttname"><a href="namespaceleet.html#aa3853464d166cde6fa97f8dfb9e2398f">leet::invokeRequest_Put</a></div><div class="ttdeci">const std::string invokeRequest_Put(const std::string &amp;URL, const std::string &amp;Data, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Put request.</div><div class="ttdef"><b>Definition</b> Request.cpp:21</div></div>
<div class="ttc" id="anamespaceleet_html_aa88a91a144b2176d9ce3c4cad3c45bab"><div class="ttname"><a href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a></div><div class="ttdeci">const std::string invokeRequest_Post(const std::string &amp;URL, const std::string &amp;Data, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Post request.</div><div class="ttdef"><b>Definition</b> Request.cpp:24</div></div>
<div class="ttc" id="anamespaceleet_html_abf8deb3b48c9f7322aa6654885946738"><div class="ttname"><a href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a></div><div class="ttdeci">const std::string getAPI(const std::string &amp;API)</div><div class="ttdoc">Returns a full API URL from a Matrix endpoint.</div><div class="ttdef"><b>Definition</b> libleet.cpp:31</div></div>
<div class="ttc" id="anamespaceleet_html_aca8cf23cb2471b07f1ee22a2077b5b37"><div class="ttname"><a href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a></div><div class="ttdeci">std::string friendlyError</div><div class="ttdef"><b>Definition</b> libleet.hpp:403</div></div>
<div class="ttc" id="anamespaceleet_html_ae4179f205bbcae31f1332c5daff19630"><div class="ttname"><a href="namespaceleet.html#ae4179f205bbcae31f1332c5daff19630">leet::returnRoomIDs</a></div><div class="ttdeci">const std::vector&lt; Room::Room &gt; returnRoomIDs(User::CredentialsResponse *resp)</div><div class="ttdoc">Returns room IDs for all the rooms your user has joined.</div><div class="ttdef"><b>Definition</b> Room.cpp:151</div></div>
<div class="ttc" id="anamespaceleet_html_ae7fadb8f554b82e37512ece5f451e345"><div class="ttname"><a href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a></div><div class="ttdeci">std::string Error</div><div class="ttdef"><b>Definition</b> libleet.hpp:402</div></div>
<div class="ttc" id="anamespaceleet_html_aeec1a06048a9cba651c0f494ab7cdb2c"><div class="ttname"><a href="namespaceleet.html#aeec1a06048a9cba651c0f494ab7cdb2c">leet::createRoom</a></div><div class="ttdeci">Room::Room createRoom(User::CredentialsResponse *resp, Room::RoomConfiguration *conf)</div><div class="ttdoc">Create a room from a Room::RoomConfiguration object.</div><div class="ttdef"><b>Definition</b> Room.cpp:110</div></div>
<div class="ttc" id="anamespaceleet_html_af66fefe88b0d6ee698399cbb9d5de650"><div class="ttname"><a href="namespaceleet.html#af66fefe88b0d6ee698399cbb9d5de650">leet::findRoomID</a></div><div class="ttdeci">const std::string findRoomID(std::string Alias)</div><div class="ttdoc">Resolves a room alias and returns the room ID.</div><div class="ttdef"><b>Definition</b> Room.cpp:10</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

98
docs/html/User_8cpp.html Executable file
View file

@ -0,0 +1,98 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/User.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">User.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="User_8cpp__dep__incl.png" border="0" usemap="#a_2home_2speedie_2libleet_2src_2User_8cppdep" alt=""/></div>
<map name="a_2home_2speedie_2libleet_2src_2User_8cppdep" id="a_2home_2speedie_2libleet_2src_2User_8cppdep">
<area shape="rect" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" href="libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>
</div>
</div>
<p><a href="User_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="/home/speedie/libleet/src/User.cpp" name="/home/speedie/libleet/src/User.cpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" id="Node000002" href="$libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>

View file

@ -0,0 +1 @@
38e893d63a205f3ecff4a2319815a38d

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

347
docs/html/User_8cpp_source.html Executable file
View file

@ -0,0 +1,347 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/User.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">User.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="User_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* libleet</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Matrix client library written in C++</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Licensed under the GNU Affero General Public License version 3.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * See included LICENSE file for more information.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * https://git.speedie.site/speedie/libleet</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment">/* Converts a username to a proper user ID if necessary (i.e. speedie -&gt; @speedie:matrix.org) */</span></div>
<div class="foldopen" id="foldopen00010" data-start="{" data-end="}">
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"><a class="line" href="namespaceleet.html#a7f18808fb4942a066467af4da81de7fe"> 10</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#a7f18808fb4942a066467af4da81de7fe">leet::findUserID</a>(<span class="keyword">const</span> std::string&amp; Alias, <span class="keyword">const</span> std::string&amp; Homeserver) {</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> <span class="keywordflow">if</span> (Alias[0] != <span class="charliteral">&#39;@&#39;</span>)</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;@&quot;</span> + Alias + <span class="stringliteral">&quot;:&quot;</span> + <a class="code hl_variable" href="namespaceleet.html#a047ddd8c4f4dba43c5ee0e38858485ab">Homeserver</a>;</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keywordflow">return</span> Alias;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span>}</div>
</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment">/* leet::findUserID in reverse */</span></div>
<div class="foldopen" id="foldopen00017" data-start="{" data-end="}">
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"><a class="line" href="namespaceleet.html#a9411e25fb1f3420d7b6c954926db536a"> 17</a></span><span class="keyword">const</span> std::string <a class="code hl_function" href="namespaceleet.html#a9411e25fb1f3420d7b6c954926db536a">leet::returnUserName</a>(<span class="keyword">const</span> std::string&amp; userID) {</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> std::string str;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> std::regex pattern{<span class="stringliteral">&quot;@([^:]+):&quot;</span>};</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> std::smatch reg;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">if</span> (std::regex_search(userID, reg, pattern)) <span class="keywordflow">return</span> reg[1].str();</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">return</span> str;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>}</div>
</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment">/* Returns a leet::User::Profile class containing things such as display name and avatar URL */</span></div>
<div class="foldopen" id="foldopen00026" data-start="{" data-end="}">
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="namespaceleet.html#a05c6e7d0d0a4ca3117c9cd7fffb0c6cd"> 26</a></span><a class="code hl_class" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a> <a class="code hl_function" href="namespaceleet.html#a05c6e7d0d0a4ca3117c9cd7fffb0c6cd">leet::getUserData</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <span class="keyword">const</span> std::string&amp; userID) {</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <a class="code hl_class" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a> profile;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">if</span> (userID[0] != <span class="charliteral">&#39;@&#39;</span>) {</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keywordflow">return</span> profile;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> }</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#ad9a9c118c09885e9020674b7826756f8">userID</a> = <a class="code hl_function" href="namespaceleet.html#a7f18808fb4942a066467af4da81de7fe">leet::findUserID</a>(userID, resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#a9233923ddc9627b08b8572b2a379ae0c">Homeserver</a>);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">if</span> (profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#ad9a9c118c09885e9020674b7826756f8">userID</a>.empty()) {</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = <span class="stringliteral">&quot;Failed to get User ID&quot;</span>;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">return</span> profile;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> }</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keyword">const</span> std::string API { <a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/profile/&quot;</span> + profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#ad9a9c118c09885e9020674b7826756f8">userID</a>) };</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">invokeRequest_Get</a>(API);</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> json reqOutput;</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">return</span> profile;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> }</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;avatar_url&quot;</span>].is_string()) profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#aca64ad4120289dad0d55c623ff3d0ac5">avatarURL</a> = output[<span class="stringliteral">&quot;avatar_url&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;displayname&quot;</span>].is_string()) profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#a682c1db4b7f50f3aad4e6b6c08c557a1">displayName</a> = output[<span class="stringliteral">&quot;displayname&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> }</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> }</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <a class="code hl_class" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a> userProfile;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> userProfile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#ad9a9c118c09885e9020674b7826756f8">userID</a> = userID;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> std::vector&lt;leet::User::Profile&gt; User = { userProfile };</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#a2adeec50cb835a6977e971ff54064db2">Devices</a> = <a class="code hl_function" href="namespaceleet.html#a196d23dcf6a4e5645af44cd94c59cb48">leet::returnDevicesFromUser</a>(resp, User);</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">return</span> profile;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span>}</div>
</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> </div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span><span class="comment">/* Returns an array of all devices for a user */</span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span><span class="keyword">const</span> std::vector&lt;leet::User::Device&gt; <a class="code hl_function" href="namespaceleet.html#a196d23dcf6a4e5645af44cd94c59cb48">leet::returnDevicesFromUser</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <span class="keyword">const</span> std::vector&lt;leet::User::Profile&gt;&amp; user) {</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> std::vector&lt;leet::User::Device&gt; devices;</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> json Body;</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> json deviceKeys;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; theUser : user) {</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> deviceKeys[theUser.userID] = json::array();</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> Body[<span class="stringliteral">&quot;device_keys&quot;</span>] = deviceKeys;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> Body[<span class="stringliteral">&quot;timeout&quot;</span>] = 10000;</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> }</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> </div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/keys/query&quot;</span>), Body.dump(), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> json returnOutput;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> returnOutput = json::parse(Output);</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">return</span> devices;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> }</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> </div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; userID : user) {</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keyword">auto</span>&amp; deviceList = returnOutput[<span class="stringliteral">&quot;device_keys&quot;</span>][userID.userID];</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = deviceList.begin(); it != deviceList.end(); ++it) {</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <a class="code hl_class" href="classleet_1_1User_1_1Device.html">leet::User::Device</a> device;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> </div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#a0fb0c5d9b1f6f9e358380c47bf8c27b6">userID</a> = userID.userID;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">deviceID</a> = it.key();</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> </div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> json::json_pointer curve25519Pointer(<span class="stringliteral">&quot;/keys/curve25519:&quot;</span> + device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">deviceID</a>);</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">if</span> (it.value().contains(curve25519Pointer)) {</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#abae3e799bf2e2b392827ff83f9280220">curve25519Key</a> = it.value()[<span class="stringliteral">&quot;keys&quot;</span>][<span class="stringliteral">&quot;curve25519:&quot;</span> + device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">deviceID</a>];</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> }</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> json::json_pointer ed25519Pointer(<span class="stringliteral">&quot;/keys/ed25519:&quot;</span> + device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">deviceID</a>);</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">if</span> (it.value().contains(ed25519Pointer)) {</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#a6de003ef59747f0d64f391cca9479390">ed25519Key</a> = it.value()[<span class="stringliteral">&quot;keys&quot;</span>][<span class="stringliteral">&quot;ed25519:&quot;</span> + device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">deviceID</a>];</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> }</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> json::json_pointer ed25519SigPointer(<span class="stringliteral">&quot;/signatures/&quot;</span> + userID.userID + <span class="stringliteral">&quot;/ed25519:&quot;</span> + device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">deviceID</a>);</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">if</span> (it.value().contains(ed25519SigPointer)) {</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#a31b2b73e0920a4c8a2c31c06e8c14612">ed25519Signature</a> = it.value()[<span class="stringliteral">&quot;signatures&quot;</span>][userID.userID][<span class="stringliteral">&quot;ed25519:&quot;</span> + device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">deviceID</a>];</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> }</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;/unsigned/device_display_name&quot;</span>_json_pointer)) {</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#ae3eb4a922db791eb92264ef9656febd5">deviceDisplayName</a> = it.value()[<span class="stringliteral">&quot;unsigned&quot;</span>][<span class="stringliteral">&quot;device_display_name&quot;</span>];</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> }</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> </div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#af848c7b87bb41ab7c3d3c6f57b5fd667">olm</a> = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#acae68e9559f1baf239fa0efd2a84d35f">megolm</a> = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> </div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">if</span> (std::find(it.value()[<span class="stringliteral">&quot;algorithms&quot;</span>].begin(), it.value()[<span class="stringliteral">&quot;algorithms&quot;</span>].end(), <span class="stringliteral">&quot;m.olm.v1.curve25519-aes-sha2&quot;</span>) != it.value()[<span class="stringliteral">&quot;algorithms&quot;</span>].end())</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#af848c7b87bb41ab7c3d3c6f57b5fd667">olm</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> </div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> <span class="keywordflow">if</span> (std::find(it.value()[<span class="stringliteral">&quot;algorithms&quot;</span>].begin(), it.value()[<span class="stringliteral">&quot;algorithms&quot;</span>].end(), <span class="stringliteral">&quot;m.megolm.v1.aes-sha2&quot;</span>) != it.value()[<span class="stringliteral">&quot;algorithms&quot;</span>].end())</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> device.<a class="code hl_variable" href="classleet_1_1User_1_1Device.html#acae68e9559f1baf239fa0efd2a84d35f">megolm</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> </div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> devices.push_back(device);</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> }</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> }</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">return</span> devices;</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span>}</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> </div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span><span class="comment">/* Returns true if username is valid and available for registering */</span></div>
<div class="foldopen" id="foldopen00139" data-start="{" data-end="}">
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"><a class="line" href="namespaceleet.html#a4aab99007c2c99bb6231484636d71ead"> 139</a></span><span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="namespaceleet.html#a4aab99007c2c99bb6231484636d71ead">leet::checkIfUsernameIsAvailable</a>(<span class="keyword">const</span> std::string&amp; Username) {</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> </div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> std::string theUsername = Username;</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> </div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">if</span> (Username[0] == <span class="charliteral">&#39;@&#39;</span>) {</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> theUsername = <a class="code hl_function" href="namespaceleet.html#a9411e25fb1f3420d7b6c954926db536a">leet::returnUserName</a>(Username);</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> </div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">if</span> (theUsername[0] == <span class="charliteral">&#39;@&#39;</span> || !theUsername.compare(<span class="stringliteral">&quot;&quot;</span>)) {</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> }</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> }</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> </div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> <span class="keyword">const</span> std::string API { <a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/register/available?username=&quot;</span> + theUsername) };</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">invokeRequest_Get</a>(API);</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> </div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> json reqOutput;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> </div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">return</span> <span class="keyword">false</span>; <span class="comment">// fallback to false is probably safest?</span></div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> }</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> </div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) {</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 1;</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> }</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> </div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;available&quot;</span>].is_boolean()) {</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">return</span> output[<span class="stringliteral">&quot;available&quot;</span>].get&lt;<span class="keywordtype">bool</span>&gt;();</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> }</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> }</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> </div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span>}</div>
</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> </div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span><span class="comment">/* Returns an array of all users in a room */</span></div>
<div class="foldopen" id="foldopen00182" data-start="{" data-end="}">
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"><a class="line" href="namespaceleet.html#a00a66e98469fbf8978fc3face0deb78a"> 182</a></span><span class="keyword">const</span> std::vector&lt;leet::User::Profile&gt; <a class="code hl_function" href="namespaceleet.html#a00a66e98469fbf8978fc3face0deb78a">leet::returnUsersInRoom</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp, <a class="code hl_class" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>* room) {</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> std::vector&lt;leet::User::Profile&gt; vector;</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> </div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <span class="keyword">const</span> std::string Output = <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(<span class="stringliteral">&quot;/_matrix/client/v3/rooms/&quot;</span> + room-&gt;<a class="code hl_variable" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a> + <span class="stringliteral">&quot;/joined_members&quot;</span>), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>);</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> json returnOutput;</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> </div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> returnOutput = json::parse(Output);</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">return</span> vector;</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> }</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> </div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="keyword">auto</span>&amp; users = returnOutput[<span class="stringliteral">&quot;joined&quot;</span>];</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> </div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span> it = users.begin(); it != users.end(); ++it) {</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> <a class="code hl_class" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a> profile;</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> </div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;avatar_url&quot;</span>) &amp;&amp; !it.value()[<span class="stringliteral">&quot;avatar_url&quot;</span>].is_null()) profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#aca64ad4120289dad0d55c623ff3d0ac5">avatarURL</a> = it.value()[<span class="stringliteral">&quot;avatar_url&quot;</span>];</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">if</span> (it.value().contains(<span class="stringliteral">&quot;display_name&quot;</span>) &amp;&amp; !it.value()[<span class="stringliteral">&quot;display_name&quot;</span>].is_null()) profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#a682c1db4b7f50f3aad4e6b6c08c557a1">displayName</a> = it.value()[<span class="stringliteral">&quot;display_name&quot;</span>];</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> </div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#ad9a9c118c09885e9020674b7826756f8">userID</a> = it.key();</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> </div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> <a class="code hl_class" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a> userProfile;</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> userProfile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#ad9a9c118c09885e9020674b7826756f8">userID</a> = it.key();</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> std::vector&lt;leet::User::Profile&gt; User = { userProfile };</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> profile.<a class="code hl_variable" href="classleet_1_1User_1_1Profile.html#a2adeec50cb835a6977e971ff54064db2">Devices</a> = <a class="code hl_function" href="namespaceleet.html#a196d23dcf6a4e5645af44cd94c59cb48">leet::returnDevicesFromUser</a>(resp, User);</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> </div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> vector.push_back(profile);</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> }</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> </div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> <span class="keywordflow">return</span> vector;</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span>}</div>
</div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></div><div class="ttdoc">Class which represents a single room, along with its properties.</div><div class="ttdef"><b>Definition</b> libleet.hpp:202</div></div>
<div class="ttc" id="aclassleet_1_1Room_1_1Room_html_a845bb4727d6c821e8d69a15ad0e2eb1f"><div class="ttname"><a href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">leet::Room::Room::roomID</a></div><div class="ttdeci">std::string roomID</div><div class="ttdef"><b>Definition</b> libleet.hpp:205</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></div><div class="ttdoc">Class which contains the response from the Matrix homeserver on initial login.</div><div class="ttdef"><b>Definition</b> libleet.hpp:144</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_a9233923ddc9627b08b8572b2a379ae0c"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#a9233923ddc9627b08b8572b2a379ae0c">leet::User::CredentialsResponse::Homeserver</a></div><div class="ttdeci">std::string Homeserver</div><div class="ttdef"><b>Definition</b> libleet.hpp:150</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_ae4d15192559f009ad966de4bc9cdf58a"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">leet::User::CredentialsResponse::accessToken</a></div><div class="ttdeci">std::string accessToken</div><div class="ttdef"><b>Definition</b> libleet.hpp:147</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Device_html"><div class="ttname"><a href="classleet_1_1User_1_1Device.html">leet::User::Device</a></div><div class="ttdoc">Class which represents a single device for a user.</div><div class="ttdef"><b>Definition</b> libleet.hpp:158</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Device_html_a0fb0c5d9b1f6f9e358380c47bf8c27b6"><div class="ttname"><a href="classleet_1_1User_1_1Device.html#a0fb0c5d9b1f6f9e358380c47bf8c27b6">leet::User::Device::userID</a></div><div class="ttdeci">std::string userID</div><div class="ttdef"><b>Definition</b> libleet.hpp:161</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Device_html_a31b2b73e0920a4c8a2c31c06e8c14612"><div class="ttname"><a href="classleet_1_1User_1_1Device.html#a31b2b73e0920a4c8a2c31c06e8c14612">leet::User::Device::ed25519Signature</a></div><div class="ttdeci">std::string ed25519Signature</div><div class="ttdef"><b>Definition</b> libleet.hpp:165</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Device_html_a6de003ef59747f0d64f391cca9479390"><div class="ttname"><a href="classleet_1_1User_1_1Device.html#a6de003ef59747f0d64f391cca9479390">leet::User::Device::ed25519Key</a></div><div class="ttdeci">std::string ed25519Key</div><div class="ttdef"><b>Definition</b> libleet.hpp:164</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Device_html_abae3e799bf2e2b392827ff83f9280220"><div class="ttname"><a href="classleet_1_1User_1_1Device.html#abae3e799bf2e2b392827ff83f9280220">leet::User::Device::curve25519Key</a></div><div class="ttdeci">std::string curve25519Key</div><div class="ttdef"><b>Definition</b> libleet.hpp:163</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Device_html_acae68e9559f1baf239fa0efd2a84d35f"><div class="ttname"><a href="classleet_1_1User_1_1Device.html#acae68e9559f1baf239fa0efd2a84d35f">leet::User::Device::megolm</a></div><div class="ttdeci">bool megolm</div><div class="ttdef"><b>Definition</b> libleet.hpp:168</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Device_html_ae3eb4a922db791eb92264ef9656febd5"><div class="ttname"><a href="classleet_1_1User_1_1Device.html#ae3eb4a922db791eb92264ef9656febd5">leet::User::Device::deviceDisplayName</a></div><div class="ttdeci">std::string deviceDisplayName</div><div class="ttdef"><b>Definition</b> libleet.hpp:166</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Device_html_af1f19ee3d41ea38ddba0f469734ccf1f"><div class="ttname"><a href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">leet::User::Device::deviceID</a></div><div class="ttdeci">std::string deviceID</div><div class="ttdef"><b>Definition</b> libleet.hpp:162</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Device_html_af848c7b87bb41ab7c3d3c6f57b5fd667"><div class="ttname"><a href="classleet_1_1User_1_1Device.html#af848c7b87bb41ab7c3d3c6f57b5fd667">leet::User::Device::olm</a></div><div class="ttdeci">bool olm</div><div class="ttdef"><b>Definition</b> libleet.hpp:167</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Profile_html"><div class="ttname"><a href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a></div><div class="ttdoc">Class which represents a user profile, along with his or her devices.</div><div class="ttdef"><b>Definition</b> libleet.hpp:174</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Profile_html_a2adeec50cb835a6977e971ff54064db2"><div class="ttname"><a href="classleet_1_1User_1_1Profile.html#a2adeec50cb835a6977e971ff54064db2">leet::User::Profile::Devices</a></div><div class="ttdeci">std::vector&lt; User::Device &gt; Devices</div><div class="ttdef"><b>Definition</b> libleet.hpp:180</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Profile_html_a682c1db4b7f50f3aad4e6b6c08c557a1"><div class="ttname"><a href="classleet_1_1User_1_1Profile.html#a682c1db4b7f50f3aad4e6b6c08c557a1">leet::User::Profile::displayName</a></div><div class="ttdeci">std::string displayName</div><div class="ttdef"><b>Definition</b> libleet.hpp:178</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Profile_html_aca64ad4120289dad0d55c623ff3d0ac5"><div class="ttname"><a href="classleet_1_1User_1_1Profile.html#aca64ad4120289dad0d55c623ff3d0ac5">leet::User::Profile::avatarURL</a></div><div class="ttdeci">std::string avatarURL</div><div class="ttdef"><b>Definition</b> libleet.hpp:179</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1Profile_html_ad9a9c118c09885e9020674b7826756f8"><div class="ttname"><a href="classleet_1_1User_1_1Profile.html#ad9a9c118c09885e9020674b7826756f8">leet::User::Profile::userID</a></div><div class="ttdeci">std::string userID</div><div class="ttdef"><b>Definition</b> libleet.hpp:177</div></div>
<div class="ttc" id="anamespaceleet_html_a00a66e98469fbf8978fc3face0deb78a"><div class="ttname"><a href="namespaceleet.html#a00a66e98469fbf8978fc3face0deb78a">leet::returnUsersInRoom</a></div><div class="ttdeci">const std::vector&lt; User::Profile &gt; returnUsersInRoom(User::CredentialsResponse *resp, Room::Room *room)</div><div class="ttdoc">Returns a vector of all users in a room.</div><div class="ttdef"><b>Definition</b> User.cpp:182</div></div>
<div class="ttc" id="anamespaceleet_html_a047ddd8c4f4dba43c5ee0e38858485ab"><div class="ttname"><a href="namespaceleet.html#a047ddd8c4f4dba43c5ee0e38858485ab">leet::Homeserver</a></div><div class="ttdeci">std::string Homeserver</div><div class="ttdef"><b>Definition</b> libleet.hpp:401</div></div>
<div class="ttc" id="anamespaceleet_html_a05c6e7d0d0a4ca3117c9cd7fffb0c6cd"><div class="ttname"><a href="namespaceleet.html#a05c6e7d0d0a4ca3117c9cd7fffb0c6cd">leet::getUserData</a></div><div class="ttdeci">User::Profile getUserData(User::CredentialsResponse *resp, const std::string &amp;userID)</div><div class="ttdoc">Returns user data in the form of a User::Profile object.</div><div class="ttdef"><b>Definition</b> User.cpp:26</div></div>
<div class="ttc" id="anamespaceleet_html_a196d23dcf6a4e5645af44cd94c59cb48"><div class="ttname"><a href="namespaceleet.html#a196d23dcf6a4e5645af44cd94c59cb48">leet::returnDevicesFromUser</a></div><div class="ttdeci">const std::vector&lt; User::Device &gt; returnDevicesFromUser(User::CredentialsResponse *resp, const std::vector&lt; User::Profile &gt; &amp;user)</div><div class="ttdoc">Returns a vector of all devices for a specific user.</div></div>
<div class="ttc" id="anamespaceleet_html_a4aab99007c2c99bb6231484636d71ead"><div class="ttname"><a href="namespaceleet.html#a4aab99007c2c99bb6231484636d71ead">leet::checkIfUsernameIsAvailable</a></div><div class="ttdeci">const bool checkIfUsernameIsAvailable(const std::string &amp;Username)</div><div class="ttdoc">Returns a boolean for whether a username is available on the home server or not.</div><div class="ttdef"><b>Definition</b> User.cpp:139</div></div>
<div class="ttc" id="anamespaceleet_html_a7f18808fb4942a066467af4da81de7fe"><div class="ttname"><a href="namespaceleet.html#a7f18808fb4942a066467af4da81de7fe">leet::findUserID</a></div><div class="ttdeci">const std::string findUserID(const std::string &amp;Alias, const std::string &amp;Homeserver)</div><div class="ttdoc">Converts an incomplete user ID to a full user ID. (i.e. speedie is converted to @speedie:matrix....</div><div class="ttdef"><b>Definition</b> User.cpp:10</div></div>
<div class="ttc" id="anamespaceleet_html_a87681d6edf2064da9cf4df3dcb3ac67e"><div class="ttname"><a href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a></div><div class="ttdeci">const std::string invokeRequest_Get(const std::string &amp;URL, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Get request.</div><div class="ttdef"><b>Definition</b> Request.cpp:18</div></div>
<div class="ttc" id="anamespaceleet_html_a9411e25fb1f3420d7b6c954926db536a"><div class="ttname"><a href="namespaceleet.html#a9411e25fb1f3420d7b6c954926db536a">leet::returnUserName</a></div><div class="ttdeci">const std::string returnUserName(const std::string &amp;userID)</div><div class="ttdoc">Returns &lt;name&gt; from &lt;name&gt;:&lt;home server&gt;</div><div class="ttdef"><b>Definition</b> User.cpp:17</div></div>
<div class="ttc" id="anamespaceleet_html_aa20a9fa2de98421d60165559a8a23f76"><div class="ttname"><a href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a></div><div class="ttdeci">int errorCode</div><div class="ttdef"><b>Definition</b> libleet.hpp:405</div></div>
<div class="ttc" id="anamespaceleet_html_aa88a91a144b2176d9ce3c4cad3c45bab"><div class="ttname"><a href="namespaceleet.html#aa88a91a144b2176d9ce3c4cad3c45bab">leet::invokeRequest_Post</a></div><div class="ttdeci">const std::string invokeRequest_Post(const std::string &amp;URL, const std::string &amp;Data, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Post request.</div><div class="ttdef"><b>Definition</b> Request.cpp:24</div></div>
<div class="ttc" id="anamespaceleet_html_abf8deb3b48c9f7322aa6654885946738"><div class="ttname"><a href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a></div><div class="ttdeci">const std::string getAPI(const std::string &amp;API)</div><div class="ttdoc">Returns a full API URL from a Matrix endpoint.</div><div class="ttdef"><b>Definition</b> libleet.cpp:31</div></div>
<div class="ttc" id="anamespaceleet_html_aca8cf23cb2471b07f1ee22a2077b5b37"><div class="ttname"><a href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a></div><div class="ttdeci">std::string friendlyError</div><div class="ttdef"><b>Definition</b> libleet.hpp:403</div></div>
<div class="ttc" id="anamespaceleet_html_ae7fadb8f554b82e37512ece5f451e345"><div class="ttname"><a href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a></div><div class="ttdeci">std::string Error</div><div class="ttdef"><b>Definition</b> libleet.hpp:402</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

98
docs/html/Voip_8cpp.html Executable file
View file

@ -0,0 +1,98 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Voip.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Voip.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="Voip_8cpp__dep__incl.png" border="0" usemap="#a_2home_2speedie_2libleet_2src_2Voip_8cppdep" alt=""/></div>
<map name="a_2home_2speedie_2libleet_2src_2Voip_8cppdep" id="a_2home_2speedie_2libleet_2src_2Voip_8cppdep">
<area shape="rect" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" href="libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>
</div>
</div>
<p><a href="Voip_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="/home/speedie/libleet/src/Voip.cpp" name="/home/speedie/libleet/src/Voip.cpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="5,5,150,48"/>
<area shape="rect" id="Node000002" href="$libleet_8cpp.html" title=" " alt="" coords="5,96,150,139"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="80,64,80,96,75,96,75,64"/>
</map>

View file

@ -0,0 +1 @@
750af8f1ee55b8f0f467739855b4ecd1

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

143
docs/html/Voip_8cpp_source.html Executable file
View file

@ -0,0 +1,143 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src/Voip.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">Voip.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="Voip_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/* libleet</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Matrix client library written in C++</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> * Licensed under the GNU Affero General Public License version 3.</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * See included LICENSE file for more information.</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> *</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> * https://git.speedie.site/speedie/libleet</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"> */</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="foldopen" id="foldopen00009" data-start="{" data-end="}">
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="namespaceleet.html#aedf0824145f0f316d71e16085b4fc0c4"> 9</a></span><a class="code hl_class" href="classleet_1_1VOIP_1_1Credentials.html">leet::VOIP::Credentials</a> <a class="code hl_function" href="namespaceleet.html#aedf0824145f0f316d71e16085b4fc0c4">leet::returnTurnCredentials</a>(<a class="code hl_class" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>* resp) {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> <a class="code hl_class" href="classleet_1_1VOIP_1_1Credentials.html">leet::VOIP::Credentials</a> cred;</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> <span class="keyword">using </span>json = nlohmann::json;</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keyword">const</span> std::string APIUrl { <span class="stringliteral">&quot;/_matrix/client/v3/voip/turnServer&quot;</span> };</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="keyword">const</span> std::string Output { <a class="code hl_function" href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a>(<a class="code hl_function" href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a>(APIUrl), resp-&gt;<a class="code hl_variable" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a>) };</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> json reqOutput;</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keywordflow">try</span> {</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> reqOutput = { json::parse(Output) };</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> } <span class="keywordflow">catch</span> (<span class="keyword">const</span> json::parse_error&amp; e) {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">return</span> cred;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> }</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; output : reqOutput) {</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <a class="code hl_variable" href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a> = 0;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;uris&quot;</span>].is_array()) cred.<a class="code hl_variable" href="classleet_1_1VOIP_1_1Credentials.html#a0e92088a4e9d16bfac1535abe3757730">URI</a> = output[<span class="stringliteral">&quot;uris&quot;</span>];</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;username&quot;</span>].is_string()) cred.<a class="code hl_variable" href="classleet_1_1VOIP_1_1Credentials.html#aafa81db0f03f6b86a5d5c12a2a3b9140">Username</a> = output[<span class="stringliteral">&quot;username&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;password&quot;</span>].is_string()) cred.<a class="code hl_variable" href="classleet_1_1VOIP_1_1Credentials.html#a9a36448f6d146a4e0170b726c8f55e02">Password</a> = output[<span class="stringliteral">&quot;password&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;ttl&quot;</span>].is_number_integer()) cred.<a class="code hl_variable" href="classleet_1_1VOIP_1_1Credentials.html#a98b99d454adbf4986782d6aafe241e25">timeToLiveIn</a> = output[<span class="stringliteral">&quot;ttl&quot;</span>].get&lt;<span class="keywordtype">int</span>&gt;();</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;errcode&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a> = output[<span class="stringliteral">&quot;errcode&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">if</span> (output[<span class="stringliteral">&quot;error&quot;</span>].is_string()) <a class="code hl_variable" href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a> = output[<span class="stringliteral">&quot;error&quot;</span>].get&lt;std::string&gt;();</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> }</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">return</span> cred;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span>}</div>
</div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></div><div class="ttdoc">Class which contains the response from the Matrix homeserver on initial login.</div><div class="ttdef"><b>Definition</b> libleet.hpp:144</div></div>
<div class="ttc" id="aclassleet_1_1User_1_1CredentialsResponse_html_ae4d15192559f009ad966de4bc9cdf58a"><div class="ttname"><a href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">leet::User::CredentialsResponse::accessToken</a></div><div class="ttdeci">std::string accessToken</div><div class="ttdef"><b>Definition</b> libleet.hpp:147</div></div>
<div class="ttc" id="aclassleet_1_1VOIP_1_1Credentials_html"><div class="ttname"><a href="classleet_1_1VOIP_1_1Credentials.html">leet::VOIP::Credentials</a></div><div class="ttdoc">Class which represents TURN server credentials returned.</div><div class="ttdef"><b>Definition</b> libleet.hpp:188</div></div>
<div class="ttc" id="aclassleet_1_1VOIP_1_1Credentials_html_a0e92088a4e9d16bfac1535abe3757730"><div class="ttname"><a href="classleet_1_1VOIP_1_1Credentials.html#a0e92088a4e9d16bfac1535abe3757730">leet::VOIP::Credentials::URI</a></div><div class="ttdeci">std::vector&lt; std::string &gt; URI</div><div class="ttdef"><b>Definition</b> libleet.hpp:194</div></div>
<div class="ttc" id="aclassleet_1_1VOIP_1_1Credentials_html_a98b99d454adbf4986782d6aafe241e25"><div class="ttname"><a href="classleet_1_1VOIP_1_1Credentials.html#a98b99d454adbf4986782d6aafe241e25">leet::VOIP::Credentials::timeToLiveIn</a></div><div class="ttdeci">int timeToLiveIn</div><div class="ttdef"><b>Definition</b> libleet.hpp:193</div></div>
<div class="ttc" id="aclassleet_1_1VOIP_1_1Credentials_html_a9a36448f6d146a4e0170b726c8f55e02"><div class="ttname"><a href="classleet_1_1VOIP_1_1Credentials.html#a9a36448f6d146a4e0170b726c8f55e02">leet::VOIP::Credentials::Password</a></div><div class="ttdeci">std::string Password</div><div class="ttdef"><b>Definition</b> libleet.hpp:192</div></div>
<div class="ttc" id="aclassleet_1_1VOIP_1_1Credentials_html_aafa81db0f03f6b86a5d5c12a2a3b9140"><div class="ttname"><a href="classleet_1_1VOIP_1_1Credentials.html#aafa81db0f03f6b86a5d5c12a2a3b9140">leet::VOIP::Credentials::Username</a></div><div class="ttdeci">std::string Username</div><div class="ttdef"><b>Definition</b> libleet.hpp:191</div></div>
<div class="ttc" id="anamespaceleet_html_a87681d6edf2064da9cf4df3dcb3ac67e"><div class="ttname"><a href="namespaceleet.html#a87681d6edf2064da9cf4df3dcb3ac67e">leet::invokeRequest_Get</a></div><div class="ttdeci">const std::string invokeRequest_Get(const std::string &amp;URL, const std::string &amp;Authentication)</div><div class="ttdoc">Invokes a Get request.</div><div class="ttdef"><b>Definition</b> Request.cpp:18</div></div>
<div class="ttc" id="anamespaceleet_html_aa20a9fa2de98421d60165559a8a23f76"><div class="ttname"><a href="namespaceleet.html#aa20a9fa2de98421d60165559a8a23f76">leet::errorCode</a></div><div class="ttdeci">int errorCode</div><div class="ttdef"><b>Definition</b> libleet.hpp:405</div></div>
<div class="ttc" id="anamespaceleet_html_abf8deb3b48c9f7322aa6654885946738"><div class="ttname"><a href="namespaceleet.html#abf8deb3b48c9f7322aa6654885946738">leet::getAPI</a></div><div class="ttdeci">const std::string getAPI(const std::string &amp;API)</div><div class="ttdoc">Returns a full API URL from a Matrix endpoint.</div><div class="ttdef"><b>Definition</b> libleet.cpp:31</div></div>
<div class="ttc" id="anamespaceleet_html_aca8cf23cb2471b07f1ee22a2077b5b37"><div class="ttname"><a href="namespaceleet.html#aca8cf23cb2471b07f1ee22a2077b5b37">leet::friendlyError</a></div><div class="ttdeci">std::string friendlyError</div><div class="ttdef"><b>Definition</b> libleet.hpp:403</div></div>
<div class="ttc" id="anamespaceleet_html_ae7fadb8f554b82e37512ece5f451e345"><div class="ttname"><a href="namespaceleet.html#ae7fadb8f554b82e37512ece5f451e345">leet::Error</a></div><div class="ttdeci">std::string Error</div><div class="ttdef"><b>Definition</b> libleet.hpp:402</div></div>
<div class="ttc" id="anamespaceleet_html_aedf0824145f0f316d71e16085b4fc0c4"><div class="ttname"><a href="namespaceleet.html#aedf0824145f0f316d71e16085b4fc0c4">leet::returnTurnCredentials</a></div><div class="ttdeci">VOIP::Credentials returnTurnCredentials(User::CredentialsResponse *resp)</div><div class="ttdoc">Get TURN server credentials.</div><div class="ttdef"><b>Definition</b> Voip.cpp:9</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

117
docs/html/annotated.html Executable file
View file

@ -0,0 +1,117 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Class List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">Class List</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet.html" target="_self">leet</a></td><td class="desc"></td></tr>
<tr id="row_0_0_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_0_" class="arrow" onclick="toggleFolder('0_0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet_1_1Attachment.html" target="_self">Attachment</a></td><td class="desc"></td></tr>
<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Attachment_1_1Attachment.html" target="_self">Attachment</a></td><td class="desc">Class which represents an uploaded attachment </td></tr>
<tr id="row_0_1_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_1_" class="arrow" onclick="toggleFolder('0_1_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet_1_1Event.html" target="_self">Event</a></td><td class="desc"></td></tr>
<tr id="row_0_1_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Event_1_1Event.html" target="_self">Event</a></td><td class="desc">Class that represents a generic event not covered by another class </td></tr>
<tr id="row_0_2_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_2_" class="arrow" onclick="toggleFolder('0_2_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet_1_1Filter.html" target="_self">Filter</a></td><td class="desc"></td></tr>
<tr id="row_0_2_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Filter_1_1Filter.html" target="_self">Filter</a></td><td class="desc"><a class="el" href="classleet_1_1Filter_1_1Filter.html" title="Filter, can be used to find an event ID by functions that make use of it.">Filter</a>, can be used to find an event ID by functions that make use of it </td></tr>
<tr id="row_0_3_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_3_" class="arrow" onclick="toggleFolder('0_3_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet_1_1Message.html" target="_self">Message</a></td><td class="desc"></td></tr>
<tr id="row_0_3_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Message_1_1Message.html" target="_self">Message</a></td><td class="desc">Class which represents a single message, along with its properties </td></tr>
<tr id="row_0_4_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_4_" class="arrow" onclick="toggleFolder('0_4_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet_1_1Room.html" target="_self">Room</a></td><td class="desc"></td></tr>
<tr id="row_0_4_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Room_1_1Room.html" target="_self">Room</a></td><td class="desc">Class which represents a single room, along with its properties </td></tr>
<tr id="row_0_4_1_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html" target="_self">RoomConfiguration</a></td><td class="desc">Class which represents settings for a single room that should be created </td></tr>
<tr id="row_0_5_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_5_" class="arrow" onclick="toggleFolder('0_5_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet_1_1Space.html" target="_self">Space</a></td><td class="desc"></td></tr>
<tr id="row_0_5_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Space_1_1Space.html" target="_self">Space</a></td><td class="desc">Class which represents a space, which is a collection of rooms </td></tr>
<tr id="row_0_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_6_" class="arrow" onclick="toggleFolder('0_6_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet_1_1Sync.html" target="_self">Sync</a></td><td class="desc"></td></tr>
<tr id="row_0_6_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html" target="_self">inviteEvent</a></td><td class="desc">Class that represents an invite event </td></tr>
<tr id="row_0_6_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Sync_1_1megolmSession.html" target="_self">megolmSession</a></td><td class="desc">Class that represents a Megolm session sent in the room </td></tr>
<tr id="row_0_6_2_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Sync_1_1nameEvent.html" target="_self">nameEvent</a></td><td class="desc">Class that represents a name event </td></tr>
<tr id="row_0_6_3_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Sync_1_1Sync.html" target="_self">Sync</a></td><td class="desc">Class containing objects of all the other classes in <a class="el" href="namespaceleet_1_1Sync.html">leet::Sync</a> </td></tr>
<tr id="row_0_6_4_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Sync_1_1userEvent.html" target="_self">userEvent</a></td><td class="desc">Class that represents a user event </td></tr>
<tr id="row_0_7_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_7_" class="arrow" onclick="toggleFolder('0_7_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet_1_1User.html" target="_self">User</a></td><td class="desc"></td></tr>
<tr id="row_0_7_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1User_1_1Credentials.html" target="_self">Credentials</a></td><td class="desc"><a class="el" href="classleet_1_1User_1_1Credentials.html" title="Credentials class which contains fields passed to login requests.">Credentials</a> class which contains fields passed to login requests </td></tr>
<tr id="row_0_7_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html" target="_self">CredentialsResponse</a></td><td class="desc">Class which contains the response from the Matrix homeserver on initial login </td></tr>
<tr id="row_0_7_2_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1User_1_1Device.html" target="_self">Device</a></td><td class="desc">Class which represents a single device for a user </td></tr>
<tr id="row_0_7_3_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1User_1_1Profile.html" target="_self">Profile</a></td><td class="desc">Class which represents a user profile, along with his or her devices </td></tr>
<tr id="row_0_8_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_8_" class="arrow" onclick="toggleFolder('0_8_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleet_1_1VOIP.html" target="_self">VOIP</a></td><td class="desc"></td></tr>
<tr id="row_0_8_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1VOIP_1_1Credentials.html" target="_self">Credentials</a></td><td class="desc">Class which represents TURN server credentials returned </td></tr>
<tr id="row_0_9_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1Encryption.html" target="_self">Encryption</a></td><td class="desc">Class which hopefully allows you to safely handle encryption and Olm memory </td></tr>
<tr id="row_0_10_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleet_1_1olmAccount.html" target="_self">olmAccount</a></td><td class="desc"></td></tr>
<tr id="row_1_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_1_" class="arrow" onclick="toggleFolder('1_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceleetCrypto.html" target="_self">leetCrypto</a></td><td class="desc"></td></tr>
<tr id="row_1_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classleetCrypto_1_1randomBytes.html" target="_self">randomBytes</a></td><td class="desc">Class used to generate random bytes </td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

BIN
docs/html/bc_s.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 676 B

BIN
docs/html/bc_sd.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 635 B

124
docs/html/classes.html Executable file
View file

@ -0,0 +1,124 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Class Index</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">Class Index</div></div>
</div><!--header-->
<div class="contents">
<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_O">O</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a></div>
<div class="classindex">
<dl class="classindex even">
<dt class="alphachar"><a id="letter_A" name="letter_A">A</a></dt>
<dd><a class="el" href="classleet_1_1Attachment_1_1Attachment.html">Attachment</a> (<a class="el" href="namespaceleet_1_1Attachment.html">leet::Attachment</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_C" name="letter_C">C</a></dt>
<dd><a class="el" href="classleet_1_1User_1_1Credentials.html">Credentials</a> (<a class="el" href="namespaceleet_1_1User.html">leet::User</a>)</dd><dd><a class="el" href="classleet_1_1VOIP_1_1Credentials.html">Credentials</a> (<a class="el" href="namespaceleet_1_1VOIP.html">leet::VOIP</a>)</dd><dd><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">CredentialsResponse</a> (<a class="el" href="namespaceleet_1_1User.html">leet::User</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_D" name="letter_D">D</a></dt>
<dd><a class="el" href="classleet_1_1User_1_1Device.html">Device</a> (<a class="el" href="namespaceleet_1_1User.html">leet::User</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_E" name="letter_E">E</a></dt>
<dd><a class="el" href="classleet_1_1Encryption.html">Encryption</a> (<a class="el" href="namespaceleet.html">leet</a>)</dd><dd><a class="el" href="classleet_1_1Event_1_1Event.html">Event</a> (<a class="el" href="namespaceleet_1_1Event.html">leet::Event</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_F" name="letter_F">F</a></dt>
<dd><a class="el" href="classleet_1_1Filter_1_1Filter.html">Filter</a> (<a class="el" href="namespaceleet_1_1Filter.html">leet::Filter</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_I" name="letter_I">I</a></dt>
<dd><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html">inviteEvent</a> (<a class="el" href="namespaceleet_1_1Sync.html">leet::Sync</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_M" name="letter_M">M</a></dt>
<dd><a class="el" href="classleet_1_1Sync_1_1megolmSession.html">megolmSession</a> (<a class="el" href="namespaceleet_1_1Sync.html">leet::Sync</a>)</dd><dd><a class="el" href="classleet_1_1Message_1_1Message.html">Message</a> (<a class="el" href="namespaceleet_1_1Message.html">leet::Message</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_N" name="letter_N">N</a></dt>
<dd><a class="el" href="classleet_1_1Sync_1_1nameEvent.html">nameEvent</a> (<a class="el" href="namespaceleet_1_1Sync.html">leet::Sync</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_O" name="letter_O">O</a></dt>
<dd><a class="el" href="classleet_1_1olmAccount.html">olmAccount</a> (<a class="el" href="namespaceleet.html">leet</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_P" name="letter_P">P</a></dt>
<dd><a class="el" href="classleet_1_1User_1_1Profile.html">Profile</a> (<a class="el" href="namespaceleet_1_1User.html">leet::User</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_R" name="letter_R">R</a></dt>
<dd><a class="el" href="classleetCrypto_1_1randomBytes.html">randomBytes</a> (<a class="el" href="namespaceleetCrypto.html">leetCrypto</a>)</dd><dd><a class="el" href="classleet_1_1Room_1_1Room.html">Room</a> (<a class="el" href="namespaceleet_1_1Room.html">leet::Room</a>)</dd><dd><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">RoomConfiguration</a> (<a class="el" href="namespaceleet_1_1Room.html">leet::Room</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_S" name="letter_S">S</a></dt>
<dd><a class="el" href="classleet_1_1Space_1_1Space.html">Space</a> (<a class="el" href="namespaceleet_1_1Space.html">leet::Space</a>)</dd><dd><a class="el" href="classleet_1_1Sync_1_1Sync.html">Sync</a> (<a class="el" href="namespaceleet_1_1Sync.html">leet::Sync</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_U" name="letter_U">U</a></dt>
<dd><a class="el" href="classleet_1_1Sync_1_1userEvent.html">userEvent</a> (<a class="el" href="namespaceleet_1_1Sync.html">leet::Sync</a>)</dd></dl>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,95 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleetCrypto.html">leetCrypto</a></li><li class="navelem"><a class="el" href="classleetCrypto_1_1randomBytes.html">randomBytes</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leetCrypto::randomBytes Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleetCrypto_1_1randomBytes.html">leetCrypto::randomBytes</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html#ae45a02fa3982ce872ad471901cc6db6c">_data</a></td><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html">leetCrypto::randomBytes</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html#a0a9d8bb67604d98e7e28b38b2e138b2c">_length</a></td><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html">leetCrypto::randomBytes</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html#a56f27469d76479d47215ea9ce52171f9">data</a>() const</td><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html">leetCrypto::randomBytes</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html#a59845f6cf135cada2c3f9b3caf7886d9">length</a>() const</td><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html">leetCrypto::randomBytes</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html#a1d01d22d64079e0d6266f05af9026d6f">randomBytes</a>(size_t length)</td><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html">leetCrypto::randomBytes</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html#aee90fcc51606f4a10e4421959c55f3e3">~randomBytes</a>()</td><td class="entry"><a class="el" href="classleetCrypto_1_1randomBytes.html">leetCrypto::randomBytes</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,251 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leetCrypto::randomBytes Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleetCrypto.html">leetCrypto</a></li><li class="navelem"><a class="el" href="classleetCrypto_1_1randomBytes.html">randomBytes</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleetCrypto_1_1randomBytes-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leetCrypto::randomBytes Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class used to generate random bytes.
<a href="classleetCrypto_1_1randomBytes.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a1d01d22d64079e0d6266f05af9026d6f" id="r_a1d01d22d64079e0d6266f05af9026d6f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleetCrypto_1_1randomBytes.html#a1d01d22d64079e0d6266f05af9026d6f">randomBytes</a> (size_t <a class="el" href="classleetCrypto_1_1randomBytes.html#a59845f6cf135cada2c3f9b3caf7886d9">length</a>)</td></tr>
<tr class="separator:a1d01d22d64079e0d6266f05af9026d6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee90fcc51606f4a10e4421959c55f3e3" id="r_aee90fcc51606f4a10e4421959c55f3e3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleetCrypto_1_1randomBytes.html#aee90fcc51606f4a10e4421959c55f3e3">~randomBytes</a> ()</td></tr>
<tr class="separator:aee90fcc51606f4a10e4421959c55f3e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59845f6cf135cada2c3f9b3caf7886d9" id="r_a59845f6cf135cada2c3f9b3caf7886d9"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleetCrypto_1_1randomBytes.html#a59845f6cf135cada2c3f9b3caf7886d9">length</a> () const</td></tr>
<tr class="separator:a59845f6cf135cada2c3f9b3caf7886d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56f27469d76479d47215ea9ce52171f9" id="r_a56f27469d76479d47215ea9ce52171f9"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleetCrypto_1_1randomBytes.html#a56f27469d76479d47215ea9ce52171f9">data</a> () const</td></tr>
<tr class="separator:a56f27469d76479d47215ea9ce52171f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:ae45a02fa3982ce872ad471901cc6db6c" id="r_ae45a02fa3982ce872ad471901cc6db6c"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleetCrypto_1_1randomBytes.html#ae45a02fa3982ce872ad471901cc6db6c">_data</a></td></tr>
<tr class="separator:ae45a02fa3982ce872ad471901cc6db6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a9d8bb67604d98e7e28b38b2e138b2c" id="r_a0a9d8bb67604d98e7e28b38b2e138b2c"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleetCrypto_1_1randomBytes.html#a0a9d8bb67604d98e7e28b38b2e138b2c">_length</a></td></tr>
<tr class="separator:a0a9d8bb67604d98e7e28b38b2e138b2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class used to generate random bytes. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a1d01d22d64079e0d6266f05af9026d6f" name="a1d01d22d64079e0d6266f05af9026d6f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1d01d22d64079e0d6266f05af9026d6f">&#9670;&#160;</a></span>randomBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">leetCrypto::randomBytes::randomBytes </td>
<td>(</td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>length</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aee90fcc51606f4a10e4421959c55f3e3" name="aee90fcc51606f4a10e4421959c55f3e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee90fcc51606f4a10e4421959c55f3e3">&#9670;&#160;</a></span>~randomBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">leetCrypto::randomBytes::~randomBytes </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a56f27469d76479d47215ea9ce52171f9" name="a56f27469d76479d47215ea9ce52171f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56f27469d76479d47215ea9ce52171f9">&#9670;&#160;</a></span>data()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void * leetCrypto::randomBytes::data </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a59845f6cf135cada2c3f9b3caf7886d9" name="a59845f6cf135cada2c3f9b3caf7886d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59845f6cf135cada2c3f9b3caf7886d9">&#9670;&#160;</a></span>length()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t leetCrypto::randomBytes::length </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="ae45a02fa3982ce872ad471901cc6db6c" name="ae45a02fa3982ce872ad471901cc6db6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae45a02fa3982ce872ad471901cc6db6c">&#9670;&#160;</a></span>_data</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* leetCrypto::randomBytes::_data</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0a9d8bb67604d98e7e28b38b2e138b2c" name="a0a9d8bb67604d98e7e28b38b2e138b2c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a9d8bb67604d98e7e28b38b2e138b2c">&#9670;&#160;</a></span>_length</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">size_t leetCrypto::randomBytes::_length</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,90 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Attachment.html">Attachment</a></li><li class="navelem"><a class="el" href="classleet_1_1Attachment_1_1Attachment.html">Attachment</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Attachment::Attachment Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Attachment_1_1Attachment.html">leet::Attachment::Attachment</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Attachment_1_1Attachment.html#a47e3ffed35484c82cc92d6736d32de8d">URL</a></td><td class="entry"><a class="el" href="classleet_1_1Attachment_1_1Attachment.html">leet::Attachment::Attachment</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Attachment::Attachment Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Attachment.html">Attachment</a></li><li class="navelem"><a class="el" href="classleet_1_1Attachment_1_1Attachment.html">Attachment</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Attachment_1_1Attachment-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Attachment::Attachment Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which represents an uploaded attachment.
<a href="classleet_1_1Attachment_1_1Attachment.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a47e3ffed35484c82cc92d6736d32de8d" id="r_a47e3ffed35484c82cc92d6736d32de8d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Attachment_1_1Attachment.html#a47e3ffed35484c82cc92d6736d32de8d">URL</a></td></tr>
<tr class="separator:a47e3ffed35484c82cc92d6736d32de8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which represents an uploaded attachment. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a47e3ffed35484c82cc92d6736d32de8d" name="a47e3ffed35484c82cc92d6736d32de8d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47e3ffed35484c82cc92d6736d32de8d">&#9670;&#160;</a></span>URL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Attachment::Attachment::URL</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,94 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="classleet_1_1Encryption.html">Encryption</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Encryption Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Encryption.html">leet::Encryption</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">account</a></td><td class="entry"><a class="el" href="classleet_1_1Encryption.html">leet::Encryption</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Encryption.html#a11be787f5f97dfd5de5a6862f9ab349c">Cleaned</a></td><td class="entry"><a class="el" href="classleet_1_1Encryption.html">leet::Encryption</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Encryption.html#a4630e401cc2fb0aeb87f7bd1b996c486">destroy</a>()</td><td class="entry"><a class="el" href="classleet_1_1Encryption.html">leet::Encryption</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Encryption.html#a9d7f4cc589f078123749f1ee4be2f423">hasCreatedAccount</a></td><td class="entry"><a class="el" href="classleet_1_1Encryption.html">leet::Encryption</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Encryption.html#a1782b7f9823c06e6d105b9e86e08304e">hasUploadedKeys</a></td><td class="entry"><a class="el" href="classleet_1_1Encryption.html">leet::Encryption</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,210 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Encryption Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="classleet_1_1Encryption.html">Encryption</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Encryption-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Encryption Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which hopefully allows you to safely handle encryption and Olm memory.
<a href="classleet_1_1Encryption.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for leet::Encryption:</div>
<div class="dyncontent">
<div class="center"><img src="classleet_1_1Encryption__coll__graph.png" border="0" usemap="#aleet_1_1Encryption_coll__map" alt="Collaboration graph"/></div>
<map name="aleet_1_1Encryption_coll__map" id="aleet_1_1Encryption_coll__map">
<area shape="rect" title="Class which hopefully allows you to safely handle encryption and Olm memory." alt="" coords="9,96,121,123"/>
<area shape="rect" href="classleet_1_1olmAccount.html" title=" " alt="" coords="5,5,125,32"/>
<area shape="poly" title=" " alt="" coords="68,48,68,95,62,95,62,48"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a4630e401cc2fb0aeb87f7bd1b996c486" id="r_a4630e401cc2fb0aeb87f7bd1b996c486"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">void</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Encryption.html#a4630e401cc2fb0aeb87f7bd1b996c486">destroy</a> ()</td></tr>
<tr class="separator:a4630e401cc2fb0aeb87f7bd1b996c486"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:abe9300b67a75daedf15ff2a3d08540d6" id="r_abe9300b67a75daedf15ff2a3d08540d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Encryption.html#abe9300b67a75daedf15ff2a3d08540d6">account</a></td></tr>
<tr class="separator:abe9300b67a75daedf15ff2a3d08540d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1782b7f9823c06e6d105b9e86e08304e" id="r_a1782b7f9823c06e6d105b9e86e08304e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Encryption.html#a1782b7f9823c06e6d105b9e86e08304e">hasUploadedKeys</a> {<a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a>}</td></tr>
<tr class="separator:a1782b7f9823c06e6d105b9e86e08304e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d7f4cc589f078123749f1ee4be2f423" id="r_a9d7f4cc589f078123749f1ee4be2f423"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Encryption.html#a9d7f4cc589f078123749f1ee4be2f423">hasCreatedAccount</a> {<a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a>}</td></tr>
<tr class="separator:a9d7f4cc589f078123749f1ee4be2f423"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11be787f5f97dfd5de5a6862f9ab349c" id="r_a11be787f5f97dfd5de5a6862f9ab349c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Encryption.html#a11be787f5f97dfd5de5a6862f9ab349c">Cleaned</a> = <a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a></td></tr>
<tr class="separator:a11be787f5f97dfd5de5a6862f9ab349c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which hopefully allows you to safely handle encryption and Olm memory. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a4630e401cc2fb0aeb87f7bd1b996c486" name="a4630e401cc2fb0aeb87f7bd1b996c486"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4630e401cc2fb0aeb87f7bd1b996c486">&#9670;&#160;</a></span>destroy()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">void</a> leet::Encryption::destroy </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="abe9300b67a75daedf15ff2a3d08540d6" name="abe9300b67a75daedf15ff2a3d08540d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe9300b67a75daedf15ff2a3d08540d6">&#9670;&#160;</a></span>account</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a> leet::Encryption::account</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a11be787f5f97dfd5de5a6862f9ab349c" name="a11be787f5f97dfd5de5a6862f9ab349c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11be787f5f97dfd5de5a6862f9ab349c">&#9670;&#160;</a></span>Cleaned</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Encryption::Cleaned = <a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9d7f4cc589f078123749f1ee4be2f423" name="a9d7f4cc589f078123749f1ee4be2f423"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d7f4cc589f078123749f1ee4be2f423">&#9670;&#160;</a></span>hasCreatedAccount</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Encryption::hasCreatedAccount {<a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a>}</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a1782b7f9823c06e6d105b9e86e08304e" name="a1782b7f9823c06e6d105b9e86e08304e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1782b7f9823c06e6d105b9e86e08304e">&#9670;&#160;</a></span>hasUploadedKeys</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Encryption::hasUploadedKeys {<a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a>}</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="leet::Encryption" name="leet::Encryption">
<area shape="rect" id="Node000001" title="Class which hopefully allows you to safely handle encryption and Olm memory." alt="" coords="9,96,121,123"/>
<area shape="rect" id="Node000002" href="$classleet_1_1olmAccount.html" title=" " alt="" coords="5,5,125,32"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="68,48,68,95,62,95,62,48"/>
</map>

View file

@ -0,0 +1 @@
48731cea46ba5fda840496d50a7444c1

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

View file

@ -0,0 +1,91 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Event.html">Event</a></li><li class="navelem"><a class="el" href="classleet_1_1Event_1_1Event.html">Event</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Event::Event Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Event_1_1Event.html">leet::Event::Event</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Event_1_1Event.html#a9c67e05cdae82f0c6f758cd80190133a">Age</a></td><td class="entry"><a class="el" href="classleet_1_1Event_1_1Event.html">leet::Event::Event</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Event_1_1Event.html#a44de14ebc615616045df5595c763522c">eventID</a></td><td class="entry"><a class="el" href="classleet_1_1Event_1_1Event.html">leet::Event::Event</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,137 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Event::Event Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Event.html">Event</a></li><li class="navelem"><a class="el" href="classleet_1_1Event_1_1Event.html">Event</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Event_1_1Event-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Event::Event Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class that represents a generic event not covered by another class.
<a href="classleet_1_1Event_1_1Event.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a44de14ebc615616045df5595c763522c" id="r_a44de14ebc615616045df5595c763522c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Event_1_1Event.html#a44de14ebc615616045df5595c763522c">eventID</a></td></tr>
<tr class="separator:a44de14ebc615616045df5595c763522c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c67e05cdae82f0c6f758cd80190133a" id="r_a9c67e05cdae82f0c6f758cd80190133a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Event_1_1Event.html#a9c67e05cdae82f0c6f758cd80190133a">Age</a></td></tr>
<tr class="separator:a9c67e05cdae82f0c6f758cd80190133a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class that represents a generic event not covered by another class. </p>
<p>Class that represents a generic event not covered by another class. It doesn't do much and only provides the event ID and time stamp so it can be used with invokeRequest for example. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a9c67e05cdae82f0c6f758cd80190133a" name="a9c67e05cdae82f0c6f758cd80190133a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c67e05cdae82f0c6f758cd80190133a">&#9670;&#160;</a></span>Age</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int32_t</a> leet::Event::Event::Age</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a44de14ebc615616045df5595c763522c" name="a44de14ebc615616045df5595c763522c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44de14ebc615616045df5595c763522c">&#9670;&#160;</a></span>eventID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Event::Event::eventID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,95 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Filter.html">Filter</a></li><li class="navelem"><a class="el" href="classleet_1_1Filter_1_1Filter.html">Filter</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Filter::Filter Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Filter_1_1Filter.html">leet::Filter::Filter</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html#a24cf8c59760cf7fd021bf3fe8ccc641f">Fields</a></td><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html">leet::Filter::Filter</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html#a18347996b1227a4c7a3d328d184ba3da">Limit</a></td><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html">leet::Filter::Filter</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html#ac0beebf520feb5041a0a74ec38c0aff5">notRooms</a></td><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html">leet::Filter::Filter</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html#a6a512538ce1f23a0c035e5120c392505">notSenders</a></td><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html">leet::Filter::Filter</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html#abd1a9e177b61b8106d8ec73c5be56860">Rooms</a></td><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html">leet::Filter::Filter</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html#a5e1ade5b1170491596260d53ed0194bb">Senders</a></td><td class="entry"><a class="el" href="classleet_1_1Filter_1_1Filter.html">leet::Filter::Filter</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,200 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Filter::Filter Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Filter.html">Filter</a></li><li class="navelem"><a class="el" href="classleet_1_1Filter_1_1Filter.html">Filter</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Filter_1_1Filter-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Filter::Filter Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a class="el" href="classleet_1_1Filter_1_1Filter.html" title="Filter, can be used to find an event ID by functions that make use of it.">Filter</a>, can be used to find an event ID by functions that make use of it.
<a href="classleet_1_1Filter_1_1Filter.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a6a512538ce1f23a0c035e5120c392505" id="r_a6a512538ce1f23a0c035e5120c392505"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Filter_1_1Filter.html#a6a512538ce1f23a0c035e5120c392505">notSenders</a></td></tr>
<tr class="separator:a6a512538ce1f23a0c035e5120c392505"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e1ade5b1170491596260d53ed0194bb" id="r_a5e1ade5b1170491596260d53ed0194bb"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Filter_1_1Filter.html#a5e1ade5b1170491596260d53ed0194bb">Senders</a></td></tr>
<tr class="separator:a5e1ade5b1170491596260d53ed0194bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0beebf520feb5041a0a74ec38c0aff5" id="r_ac0beebf520feb5041a0a74ec38c0aff5"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Filter_1_1Filter.html#ac0beebf520feb5041a0a74ec38c0aff5">notRooms</a></td></tr>
<tr class="separator:ac0beebf520feb5041a0a74ec38c0aff5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd1a9e177b61b8106d8ec73c5be56860" id="r_abd1a9e177b61b8106d8ec73c5be56860"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Filter_1_1Filter.html#abd1a9e177b61b8106d8ec73c5be56860">Rooms</a></td></tr>
<tr class="separator:abd1a9e177b61b8106d8ec73c5be56860"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24cf8c59760cf7fd021bf3fe8ccc641f" id="r_a24cf8c59760cf7fd021bf3fe8ccc641f"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Filter_1_1Filter.html#a24cf8c59760cf7fd021bf3fe8ccc641f">Fields</a> = { &quot;type&quot;, &quot;content&quot;, &quot;sender&quot; }</td></tr>
<tr class="separator:a24cf8c59760cf7fd021bf3fe8ccc641f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18347996b1227a4c7a3d328d184ba3da" id="r_a18347996b1227a4c7a3d328d184ba3da"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Filter_1_1Filter.html#a18347996b1227a4c7a3d328d184ba3da">Limit</a> = 0</td></tr>
<tr class="separator:a18347996b1227a4c7a3d328d184ba3da"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classleet_1_1Filter_1_1Filter.html" title="Filter, can be used to find an event ID by functions that make use of it.">Filter</a>, can be used to find an event ID by functions that make use of it. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a24cf8c59760cf7fd021bf3fe8ccc641f" name="a24cf8c59760cf7fd021bf3fe8ccc641f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24cf8c59760cf7fd021bf3fe8ccc641f">&#9670;&#160;</a></span>Fields</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;std::string&gt; leet::Filter::Filter::Fields = { &quot;type&quot;, &quot;content&quot;, &quot;sender&quot; }</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a18347996b1227a4c7a3d328d184ba3da" name="a18347996b1227a4c7a3d328d184ba3da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18347996b1227a4c7a3d328d184ba3da">&#9670;&#160;</a></span>Limit</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Filter::Filter::Limit = 0</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ac0beebf520feb5041a0a74ec38c0aff5" name="ac0beebf520feb5041a0a74ec38c0aff5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0beebf520feb5041a0a74ec38c0aff5">&#9670;&#160;</a></span>notRooms</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;std::string&gt; leet::Filter::Filter::notRooms</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a6a512538ce1f23a0c035e5120c392505" name="a6a512538ce1f23a0c035e5120c392505"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6a512538ce1f23a0c035e5120c392505">&#9670;&#160;</a></span>notSenders</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;std::string&gt; leet::Filter::Filter::notSenders</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="abd1a9e177b61b8106d8ec73c5be56860" name="abd1a9e177b61b8106d8ec73c5be56860"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd1a9e177b61b8106d8ec73c5be56860">&#9670;&#160;</a></span>Rooms</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;std::string&gt; leet::Filter::Filter::Rooms</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5e1ade5b1170491596260d53ed0194bb" name="a5e1ade5b1170491596260d53ed0194bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e1ade5b1170491596260d53ed0194bb">&#9670;&#160;</a></span>Senders</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;std::string&gt; leet::Filter::Filter::Senders</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,114 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Message.html">Message</a></li><li class="navelem"><a class="el" href="classleet_1_1Message_1_1Message.html">Message</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Message::Message Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a28b5c363010fd021f2f1605522258889">Age</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a80a089d0765fb792ca1472f400170c51">attachmentHeight</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#acc12eccb366d62e626c48d707557bd15">attachmentLength</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#aa0c3f9c7ee665698987b7ad4f3b23040">attachmentSize</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a89b2bfdce96b93c066b5f565c6a0074a">attachmentURL</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a99366bce597aa139f1ab01420a0061bf">attachmentWidth</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a9cdf1012eeeaff58c86fd1ea156a656b">cipherText</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#af257e013a8faa42727367a54873615e3">deviceID</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#ab76d63f5dc59c42f6dc465cf9071f664">Encrypted</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a00407d68662527759fd2404d285f7b82">eventID</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a8dd019876adbaa08129661604f493131">Format</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a83fed20f25325d55a89b41169dd24280">formattedText</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a35e1fbf4f63b29a16f0a6bb1e9de51e8">megolm</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a74739e3eeb0bca60a6c0285af5c642bb">messageText</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#aa81bf1eca55789a987565da2497d67ab">mimeType</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#af5b9b84cdc8ee474c5acb47b7e632bb8">Sender</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a9280e4ed8e1ec6ed3591ac75bb341531">senderKey</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#adaeaa3d24938167e2ce791ea21c9c450">sessionID</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a9991e5daa3476527eed8b140ba99d61e">thumbnailHeight</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#aac353fb22826eed5757682ea3378eb02">thumbnailMimeType</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#aad48127d5068692876945e050d3968ed">thumbnailSize</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a5264e3e6694c7c06960a885d1c7fe49b">thumbnailURL</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a09401ecd78d0e5b06290adf2acf11e28">thumbnailWidth</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html#a4671a0906f0a44c788f8e5b8c82016e6">Type</a></td><td class="entry"><a class="el" href="classleet_1_1Message_1_1Message.html">leet::Message::Message</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,505 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Message::Message Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Message.html">Message</a></li><li class="navelem"><a class="el" href="classleet_1_1Message_1_1Message.html">Message</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Message_1_1Message-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Message::Message Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which represents a single message, along with its properties.
<a href="classleet_1_1Message_1_1Message.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a74739e3eeb0bca60a6c0285af5c642bb" id="r_a74739e3eeb0bca60a6c0285af5c642bb"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a74739e3eeb0bca60a6c0285af5c642bb">messageText</a></td></tr>
<tr class="separator:a74739e3eeb0bca60a6c0285af5c642bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83fed20f25325d55a89b41169dd24280" id="r_a83fed20f25325d55a89b41169dd24280"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a83fed20f25325d55a89b41169dd24280">formattedText</a></td></tr>
<tr class="separator:a83fed20f25325d55a89b41169dd24280"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8dd019876adbaa08129661604f493131" id="r_a8dd019876adbaa08129661604f493131"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a8dd019876adbaa08129661604f493131">Format</a></td></tr>
<tr class="separator:a8dd019876adbaa08129661604f493131"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4671a0906f0a44c788f8e5b8c82016e6" id="r_a4671a0906f0a44c788f8e5b8c82016e6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a4671a0906f0a44c788f8e5b8c82016e6">Type</a></td></tr>
<tr class="separator:a4671a0906f0a44c788f8e5b8c82016e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf6d509850c3827076a63a9fc7320a6e" id="r_acf6d509850c3827076a63a9fc7320a6e"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#acf6d509850c3827076a63a9fc7320a6e">messageType</a></td></tr>
<tr class="separator:acf6d509850c3827076a63a9fc7320a6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00407d68662527759fd2404d285f7b82" id="r_a00407d68662527759fd2404d285f7b82"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a00407d68662527759fd2404d285f7b82">eventID</a></td></tr>
<tr class="separator:a00407d68662527759fd2404d285f7b82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5b9b84cdc8ee474c5acb47b7e632bb8" id="r_af5b9b84cdc8ee474c5acb47b7e632bb8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#af5b9b84cdc8ee474c5acb47b7e632bb8">Sender</a></td></tr>
<tr class="separator:af5b9b84cdc8ee474c5acb47b7e632bb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa81bf1eca55789a987565da2497d67ab" id="r_aa81bf1eca55789a987565da2497d67ab"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#aa81bf1eca55789a987565da2497d67ab">mimeType</a></td></tr>
<tr class="separator:aa81bf1eca55789a987565da2497d67ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28b5c363010fd021f2f1605522258889" id="r_a28b5c363010fd021f2f1605522258889"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a28b5c363010fd021f2f1605522258889">Age</a></td></tr>
<tr class="separator:a28b5c363010fd021f2f1605522258889"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99366bce597aa139f1ab01420a0061bf" id="r_a99366bce597aa139f1ab01420a0061bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a99366bce597aa139f1ab01420a0061bf">attachmentWidth</a></td></tr>
<tr class="separator:a99366bce597aa139f1ab01420a0061bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80a089d0765fb792ca1472f400170c51" id="r_a80a089d0765fb792ca1472f400170c51"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a80a089d0765fb792ca1472f400170c51">attachmentHeight</a></td></tr>
<tr class="separator:a80a089d0765fb792ca1472f400170c51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0c3f9c7ee665698987b7ad4f3b23040" id="r_aa0c3f9c7ee665698987b7ad4f3b23040"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#aa0c3f9c7ee665698987b7ad4f3b23040">attachmentSize</a></td></tr>
<tr class="separator:aa0c3f9c7ee665698987b7ad4f3b23040"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc12eccb366d62e626c48d707557bd15" id="r_acc12eccb366d62e626c48d707557bd15"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#acc12eccb366d62e626c48d707557bd15">attachmentLength</a></td></tr>
<tr class="separator:acc12eccb366d62e626c48d707557bd15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89b2bfdce96b93c066b5f565c6a0074a" id="r_a89b2bfdce96b93c066b5f565c6a0074a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a89b2bfdce96b93c066b5f565c6a0074a">attachmentURL</a></td></tr>
<tr class="separator:a89b2bfdce96b93c066b5f565c6a0074a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09401ecd78d0e5b06290adf2acf11e28" id="r_a09401ecd78d0e5b06290adf2acf11e28"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a09401ecd78d0e5b06290adf2acf11e28">thumbnailWidth</a></td></tr>
<tr class="separator:a09401ecd78d0e5b06290adf2acf11e28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9991e5daa3476527eed8b140ba99d61e" id="r_a9991e5daa3476527eed8b140ba99d61e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a9991e5daa3476527eed8b140ba99d61e">thumbnailHeight</a></td></tr>
<tr class="separator:a9991e5daa3476527eed8b140ba99d61e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad48127d5068692876945e050d3968ed" id="r_aad48127d5068692876945e050d3968ed"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#aad48127d5068692876945e050d3968ed">thumbnailSize</a></td></tr>
<tr class="separator:aad48127d5068692876945e050d3968ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac353fb22826eed5757682ea3378eb02" id="r_aac353fb22826eed5757682ea3378eb02"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#aac353fb22826eed5757682ea3378eb02">thumbnailMimeType</a></td></tr>
<tr class="separator:aac353fb22826eed5757682ea3378eb02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5264e3e6694c7c06960a885d1c7fe49b" id="r_a5264e3e6694c7c06960a885d1c7fe49b"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a5264e3e6694c7c06960a885d1c7fe49b">thumbnailURL</a></td></tr>
<tr class="separator:a5264e3e6694c7c06960a885d1c7fe49b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab76d63f5dc59c42f6dc465cf9071f664" id="r_ab76d63f5dc59c42f6dc465cf9071f664"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#ab76d63f5dc59c42f6dc465cf9071f664">Encrypted</a></td></tr>
<tr class="separator:ab76d63f5dc59c42f6dc465cf9071f664"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35e1fbf4f63b29a16f0a6bb1e9de51e8" id="r_a35e1fbf4f63b29a16f0a6bb1e9de51e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a35e1fbf4f63b29a16f0a6bb1e9de51e8">megolm</a></td></tr>
<tr class="separator:a35e1fbf4f63b29a16f0a6bb1e9de51e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cdf1012eeeaff58c86fd1ea156a656b" id="r_a9cdf1012eeeaff58c86fd1ea156a656b"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a9cdf1012eeeaff58c86fd1ea156a656b">cipherText</a></td></tr>
<tr class="separator:a9cdf1012eeeaff58c86fd1ea156a656b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9280e4ed8e1ec6ed3591ac75bb341531" id="r_a9280e4ed8e1ec6ed3591ac75bb341531"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#a9280e4ed8e1ec6ed3591ac75bb341531">senderKey</a></td></tr>
<tr class="separator:a9280e4ed8e1ec6ed3591ac75bb341531"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adaeaa3d24938167e2ce791ea21c9c450" id="r_adaeaa3d24938167e2ce791ea21c9c450"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#adaeaa3d24938167e2ce791ea21c9c450">sessionID</a></td></tr>
<tr class="separator:adaeaa3d24938167e2ce791ea21c9c450"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af257e013a8faa42727367a54873615e3" id="r_af257e013a8faa42727367a54873615e3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Message_1_1Message.html#af257e013a8faa42727367a54873615e3">deviceID</a></td></tr>
<tr class="separator:af257e013a8faa42727367a54873615e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which represents a single message, along with its properties. </p>
<p>This class represents a single message To represent several messages, one might consider using std::vector </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a28b5c363010fd021f2f1605522258889" name="a28b5c363010fd021f2f1605522258889"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28b5c363010fd021f2f1605522258889">&#9670;&#160;</a></span>Age</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int32_t</a> leet::Message::Message::Age</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a80a089d0765fb792ca1472f400170c51" name="a80a089d0765fb792ca1472f400170c51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a80a089d0765fb792ca1472f400170c51">&#9670;&#160;</a></span>attachmentHeight</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Message::Message::attachmentHeight</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="acc12eccb366d62e626c48d707557bd15" name="acc12eccb366d62e626c48d707557bd15"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc12eccb366d62e626c48d707557bd15">&#9670;&#160;</a></span>attachmentLength</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Message::Message::attachmentLength</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aa0c3f9c7ee665698987b7ad4f3b23040" name="aa0c3f9c7ee665698987b7ad4f3b23040"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0c3f9c7ee665698987b7ad4f3b23040">&#9670;&#160;</a></span>attachmentSize</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Message::Message::attachmentSize</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a89b2bfdce96b93c066b5f565c6a0074a" name="a89b2bfdce96b93c066b5f565c6a0074a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89b2bfdce96b93c066b5f565c6a0074a">&#9670;&#160;</a></span>attachmentURL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::attachmentURL</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a99366bce597aa139f1ab01420a0061bf" name="a99366bce597aa139f1ab01420a0061bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99366bce597aa139f1ab01420a0061bf">&#9670;&#160;</a></span>attachmentWidth</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Message::Message::attachmentWidth</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9cdf1012eeeaff58c86fd1ea156a656b" name="a9cdf1012eeeaff58c86fd1ea156a656b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9cdf1012eeeaff58c86fd1ea156a656b">&#9670;&#160;</a></span>cipherText</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::cipherText</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af257e013a8faa42727367a54873615e3" name="af257e013a8faa42727367a54873615e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af257e013a8faa42727367a54873615e3">&#9670;&#160;</a></span>deviceID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::deviceID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab76d63f5dc59c42f6dc465cf9071f664" name="ab76d63f5dc59c42f6dc465cf9071f664"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab76d63f5dc59c42f6dc465cf9071f664">&#9670;&#160;</a></span>Encrypted</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Message::Message::Encrypted</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a00407d68662527759fd2404d285f7b82" name="a00407d68662527759fd2404d285f7b82"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a00407d68662527759fd2404d285f7b82">&#9670;&#160;</a></span>eventID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::eventID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a8dd019876adbaa08129661604f493131" name="a8dd019876adbaa08129661604f493131"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8dd019876adbaa08129661604f493131">&#9670;&#160;</a></span>Format</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::Format</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a83fed20f25325d55a89b41169dd24280" name="a83fed20f25325d55a89b41169dd24280"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83fed20f25325d55a89b41169dd24280">&#9670;&#160;</a></span>formattedText</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::formattedText</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a35e1fbf4f63b29a16f0a6bb1e9de51e8" name="a35e1fbf4f63b29a16f0a6bb1e9de51e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35e1fbf4f63b29a16f0a6bb1e9de51e8">&#9670;&#160;</a></span>megolm</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Message::Message::megolm</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a74739e3eeb0bca60a6c0285af5c642bb" name="a74739e3eeb0bca60a6c0285af5c642bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a74739e3eeb0bca60a6c0285af5c642bb">&#9670;&#160;</a></span>messageText</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::messageText</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="acf6d509850c3827076a63a9fc7320a6e" name="acf6d509850c3827076a63a9fc7320a6e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acf6d509850c3827076a63a9fc7320a6e">&#9670;&#160;</a></span>messageType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::messageType</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aa81bf1eca55789a987565da2497d67ab" name="aa81bf1eca55789a987565da2497d67ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa81bf1eca55789a987565da2497d67ab">&#9670;&#160;</a></span>mimeType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::mimeType</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af5b9b84cdc8ee474c5acb47b7e632bb8" name="af5b9b84cdc8ee474c5acb47b7e632bb8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5b9b84cdc8ee474c5acb47b7e632bb8">&#9670;&#160;</a></span>Sender</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::Sender</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9280e4ed8e1ec6ed3591ac75bb341531" name="a9280e4ed8e1ec6ed3591ac75bb341531"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9280e4ed8e1ec6ed3591ac75bb341531">&#9670;&#160;</a></span>senderKey</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::senderKey</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="adaeaa3d24938167e2ce791ea21c9c450" name="adaeaa3d24938167e2ce791ea21c9c450"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adaeaa3d24938167e2ce791ea21c9c450">&#9670;&#160;</a></span>sessionID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::sessionID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9991e5daa3476527eed8b140ba99d61e" name="a9991e5daa3476527eed8b140ba99d61e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9991e5daa3476527eed8b140ba99d61e">&#9670;&#160;</a></span>thumbnailHeight</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Message::Message::thumbnailHeight</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aac353fb22826eed5757682ea3378eb02" name="aac353fb22826eed5757682ea3378eb02"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac353fb22826eed5757682ea3378eb02">&#9670;&#160;</a></span>thumbnailMimeType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::thumbnailMimeType</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aad48127d5068692876945e050d3968ed" name="aad48127d5068692876945e050d3968ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad48127d5068692876945e050d3968ed">&#9670;&#160;</a></span>thumbnailSize</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Message::Message::thumbnailSize</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5264e3e6694c7c06960a885d1c7fe49b" name="a5264e3e6694c7c06960a885d1c7fe49b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5264e3e6694c7c06960a885d1c7fe49b">&#9670;&#160;</a></span>thumbnailURL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::thumbnailURL</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a09401ecd78d0e5b06290adf2acf11e28" name="a09401ecd78d0e5b06290adf2acf11e28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09401ecd78d0e5b06290adf2acf11e28">&#9670;&#160;</a></span>thumbnailWidth</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Message::Message::thumbnailWidth</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a4671a0906f0a44c788f8e5b8c82016e6" name="a4671a0906f0a44c788f8e5b8c82016e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4671a0906f0a44c788f8e5b8c82016e6">&#9670;&#160;</a></span>Type</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Message::Message::Type</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,99 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Room.html">Room</a></li><li class="navelem"><a class="el" href="classleet_1_1Room_1_1Room.html">Room</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Room::Room Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#a0538af516a75049404ec9539fe7fb840">Alias</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#ab1052fe37c147c30584aff43b4b069ff">avatarURL</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#ab59f5c2b57fde7afa34889351df89487">guestCanJoin</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#ad0ab315f7274216739745338efe29f07">joinRule</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#af13dd9a222670785bce39a8f37781261">memberCount</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#a6b5746c5c53d42034dec46e2cf6189de">Name</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#aaeec2e60131518470891846c91383e99">roomType</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#a5c8cea2c4db4c9b61ae036cc1916bc1e">Topic</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html#a298b5a68814b235f8a4b06b9c53ce037">worldReadable</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1Room.html">leet::Room::Room</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,264 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Room::Room Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Room.html">Room</a></li><li class="navelem"><a class="el" href="classleet_1_1Room_1_1Room.html">Room</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Room_1_1Room-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Room::Room Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which represents a single room, along with its properties.
<a href="classleet_1_1Room_1_1Room.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a845bb4727d6c821e8d69a15ad0e2eb1f" id="r_a845bb4727d6c821e8d69a15ad0e2eb1f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#a845bb4727d6c821e8d69a15ad0e2eb1f">roomID</a></td></tr>
<tr class="separator:a845bb4727d6c821e8d69a15ad0e2eb1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaeec2e60131518470891846c91383e99" id="r_aaeec2e60131518470891846c91383e99"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#aaeec2e60131518470891846c91383e99">roomType</a></td></tr>
<tr class="separator:aaeec2e60131518470891846c91383e99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b5746c5c53d42034dec46e2cf6189de" id="r_a6b5746c5c53d42034dec46e2cf6189de"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#a6b5746c5c53d42034dec46e2cf6189de">Name</a></td></tr>
<tr class="separator:a6b5746c5c53d42034dec46e2cf6189de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1052fe37c147c30584aff43b4b069ff" id="r_ab1052fe37c147c30584aff43b4b069ff"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#ab1052fe37c147c30584aff43b4b069ff">avatarURL</a></td></tr>
<tr class="separator:ab1052fe37c147c30584aff43b4b069ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab59f5c2b57fde7afa34889351df89487" id="r_ab59f5c2b57fde7afa34889351df89487"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#ab59f5c2b57fde7afa34889351df89487">guestCanJoin</a></td></tr>
<tr class="separator:ab59f5c2b57fde7afa34889351df89487"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a298b5a68814b235f8a4b06b9c53ce037" id="r_a298b5a68814b235f8a4b06b9c53ce037"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#a298b5a68814b235f8a4b06b9c53ce037">worldReadable</a></td></tr>
<tr class="separator:a298b5a68814b235f8a4b06b9c53ce037"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0538af516a75049404ec9539fe7fb840" id="r_a0538af516a75049404ec9539fe7fb840"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#a0538af516a75049404ec9539fe7fb840">Alias</a></td></tr>
<tr class="separator:a0538af516a75049404ec9539fe7fb840"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c8cea2c4db4c9b61ae036cc1916bc1e" id="r_a5c8cea2c4db4c9b61ae036cc1916bc1e"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#a5c8cea2c4db4c9b61ae036cc1916bc1e">Topic</a></td></tr>
<tr class="separator:a5c8cea2c4db4c9b61ae036cc1916bc1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0ab315f7274216739745338efe29f07" id="r_ad0ab315f7274216739745338efe29f07"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#ad0ab315f7274216739745338efe29f07">joinRule</a></td></tr>
<tr class="separator:ad0ab315f7274216739745338efe29f07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af13dd9a222670785bce39a8f37781261" id="r_af13dd9a222670785bce39a8f37781261"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1Room.html#af13dd9a222670785bce39a8f37781261">memberCount</a></td></tr>
<tr class="separator:af13dd9a222670785bce39a8f37781261"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which represents a single room, along with its properties. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a0538af516a75049404ec9539fe7fb840" name="a0538af516a75049404ec9539fe7fb840"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0538af516a75049404ec9539fe7fb840">&#9670;&#160;</a></span>Alias</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::Room::Alias</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab1052fe37c147c30584aff43b4b069ff" name="ab1052fe37c147c30584aff43b4b069ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1052fe37c147c30584aff43b4b069ff">&#9670;&#160;</a></span>avatarURL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::Room::avatarURL</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab59f5c2b57fde7afa34889351df89487" name="ab59f5c2b57fde7afa34889351df89487"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab59f5c2b57fde7afa34889351df89487">&#9670;&#160;</a></span>guestCanJoin</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Room::Room::guestCanJoin</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad0ab315f7274216739745338efe29f07" name="ad0ab315f7274216739745338efe29f07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0ab315f7274216739745338efe29f07">&#9670;&#160;</a></span>joinRule</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::Room::joinRule</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af13dd9a222670785bce39a8f37781261" name="af13dd9a222670785bce39a8f37781261"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af13dd9a222670785bce39a8f37781261">&#9670;&#160;</a></span>memberCount</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Room::Room::memberCount</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a6b5746c5c53d42034dec46e2cf6189de" name="a6b5746c5c53d42034dec46e2cf6189de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6b5746c5c53d42034dec46e2cf6189de">&#9670;&#160;</a></span>Name</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::Room::Name</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a845bb4727d6c821e8d69a15ad0e2eb1f" name="a845bb4727d6c821e8d69a15ad0e2eb1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a845bb4727d6c821e8d69a15ad0e2eb1f">&#9670;&#160;</a></span>roomID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::Room::roomID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aaeec2e60131518470891846c91383e99" name="aaeec2e60131518470891846c91383e99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaeec2e60131518470891846c91383e99">&#9670;&#160;</a></span>roomType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::Room::roomType</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5c8cea2c4db4c9b61ae036cc1916bc1e" name="a5c8cea2c4db4c9b61ae036cc1916bc1e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5c8cea2c4db4c9b61ae036cc1916bc1e">&#9670;&#160;</a></span>Topic</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::Room::Topic</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a298b5a68814b235f8a4b06b9c53ce037" name="a298b5a68814b235f8a4b06b9c53ce037"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a298b5a68814b235f8a4b06b9c53ce037">&#9670;&#160;</a></span>worldReadable</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Room::Room::worldReadable</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,95 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Room.html">Room</a></li><li class="navelem"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">RoomConfiguration</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Room::RoomConfiguration Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">leet::Room::RoomConfiguration</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a488931db81d40d8a5a6c5171c1953bc9">Alias</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">leet::Room::RoomConfiguration</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#adf72ed90c288c8c27def497cd29802be">directMessage</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">leet::Room::RoomConfiguration</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a7e5f488e18d862f3c4655f798ed7115b">Federate</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">leet::Room::RoomConfiguration</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a8c2f5543102d07f01e208b2e60b4e11c">Name</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">leet::Room::RoomConfiguration</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a7bbba753f1a30732f9ab172d91f45eb0">Preset</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">leet::Room::RoomConfiguration</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a6ad56cafb86bf46d037df0895766723c">Topic</a></td><td class="entry"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">leet::Room::RoomConfiguration</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,200 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Room::RoomConfiguration Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Room.html">Room</a></li><li class="navelem"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html">RoomConfiguration</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Room_1_1RoomConfiguration-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Room::RoomConfiguration Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which represents settings for a single room that should be created.
<a href="classleet_1_1Room_1_1RoomConfiguration.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a7e5f488e18d862f3c4655f798ed7115b" id="r_a7e5f488e18d862f3c4655f798ed7115b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a7e5f488e18d862f3c4655f798ed7115b">Federate</a> {<a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a>}</td></tr>
<tr class="separator:a7e5f488e18d862f3c4655f798ed7115b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf72ed90c288c8c27def497cd29802be" id="r_adf72ed90c288c8c27def497cd29802be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#adf72ed90c288c8c27def497cd29802be">directMessage</a> {<a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a>}</td></tr>
<tr class="separator:adf72ed90c288c8c27def497cd29802be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7bbba753f1a30732f9ab172d91f45eb0" id="r_a7bbba753f1a30732f9ab172d91f45eb0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a7bbba753f1a30732f9ab172d91f45eb0">Preset</a> {<a class="el" href="libleet_8hpp.html#a99fb83031ce9923c84392b4e92f956b5a15c58dbe9e3cf5597283ce336d808378">LEET_PRESET_PRIVATE</a>}</td></tr>
<tr class="separator:a7bbba753f1a30732f9ab172d91f45eb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c2f5543102d07f01e208b2e60b4e11c" id="r_a8c2f5543102d07f01e208b2e60b4e11c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a8c2f5543102d07f01e208b2e60b4e11c">Name</a></td></tr>
<tr class="separator:a8c2f5543102d07f01e208b2e60b4e11c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a488931db81d40d8a5a6c5171c1953bc9" id="r_a488931db81d40d8a5a6c5171c1953bc9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a488931db81d40d8a5a6c5171c1953bc9">Alias</a></td></tr>
<tr class="separator:a488931db81d40d8a5a6c5171c1953bc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ad56cafb86bf46d037df0895766723c" id="r_a6ad56cafb86bf46d037df0895766723c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Room_1_1RoomConfiguration.html#a6ad56cafb86bf46d037df0895766723c">Topic</a></td></tr>
<tr class="separator:a6ad56cafb86bf46d037df0895766723c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which represents settings for a single room that should be created. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a488931db81d40d8a5a6c5171c1953bc9" name="a488931db81d40d8a5a6c5171c1953bc9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a488931db81d40d8a5a6c5171c1953bc9">&#9670;&#160;</a></span>Alias</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::RoomConfiguration::Alias</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="adf72ed90c288c8c27def497cd29802be" name="adf72ed90c288c8c27def497cd29802be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adf72ed90c288c8c27def497cd29802be">&#9670;&#160;</a></span>directMessage</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Room::RoomConfiguration::directMessage {<a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a>}</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7e5f488e18d862f3c4655f798ed7115b" name="a7e5f488e18d862f3c4655f798ed7115b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e5f488e18d862f3c4655f798ed7115b">&#9670;&#160;</a></span>Federate</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Room::RoomConfiguration::Federate {<a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">false</a>}</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a8c2f5543102d07f01e208b2e60b4e11c" name="a8c2f5543102d07f01e208b2e60b4e11c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c2f5543102d07f01e208b2e60b4e11c">&#9670;&#160;</a></span>Name</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::RoomConfiguration::Name</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7bbba753f1a30732f9ab172d91f45eb0" name="a7bbba753f1a30732f9ab172d91f45eb0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7bbba753f1a30732f9ab172d91f45eb0">&#9670;&#160;</a></span>Preset</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Room::RoomConfiguration::Preset {<a class="el" href="libleet_8hpp.html#a99fb83031ce9923c84392b4e92f956b5a15c58dbe9e3cf5597283ce336d808378">LEET_PRESET_PRIVATE</a>}</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a6ad56cafb86bf46d037df0895766723c" name="a6ad56cafb86bf46d037df0895766723c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6ad56cafb86bf46d037df0895766723c">&#9670;&#160;</a></span>Topic</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Room::RoomConfiguration::Topic</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,100 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Space.html">Space</a></li><li class="navelem"><a class="el" href="classleet_1_1Space_1_1Space.html">Space</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Space::Space Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#a604b0077380d6603afe00b176795b40d">Alias</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#aff9b4f7a0caf0cc07690975bef9c01b0">avatarURL</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#ad239a67124112092cfc4bd7db6127de3">guestCanJoin</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#aa6a2dcb28ff823991d16f8c1841e70c1">joinRule</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#a2898d95d87f84676063aac02fdf17367">memberCount</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#a6129d6d781a3af69cb6e1d0eb6fa6fa6">Name</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#a30dac192936b2a8763e36115850c2c4a">Rooms</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#a5fd9c978b593c770005c87af82aa5a65">roomType</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#a52764052510fc54888847af4db7d729a">spaceID</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#a4114754daba01833bff6e1c58c13b974">Topic</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html#aaaa1ca02f50c37b566ef6146f87d17ce">worldReadable</a></td><td class="entry"><a class="el" href="classleet_1_1Space_1_1Space.html">leet::Space::Space</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,282 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Space::Space Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Space.html">Space</a></li><li class="navelem"><a class="el" href="classleet_1_1Space_1_1Space.html">Space</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Space_1_1Space-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Space::Space Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which represents a space, which is a collection of rooms.
<a href="classleet_1_1Space_1_1Space.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a52764052510fc54888847af4db7d729a" id="r_a52764052510fc54888847af4db7d729a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#a52764052510fc54888847af4db7d729a">spaceID</a></td></tr>
<tr class="separator:a52764052510fc54888847af4db7d729a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fd9c978b593c770005c87af82aa5a65" id="r_a5fd9c978b593c770005c87af82aa5a65"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#a5fd9c978b593c770005c87af82aa5a65">roomType</a></td></tr>
<tr class="separator:a5fd9c978b593c770005c87af82aa5a65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6129d6d781a3af69cb6e1d0eb6fa6fa6" id="r_a6129d6d781a3af69cb6e1d0eb6fa6fa6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#a6129d6d781a3af69cb6e1d0eb6fa6fa6">Name</a></td></tr>
<tr class="separator:a6129d6d781a3af69cb6e1d0eb6fa6fa6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff9b4f7a0caf0cc07690975bef9c01b0" id="r_aff9b4f7a0caf0cc07690975bef9c01b0"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#aff9b4f7a0caf0cc07690975bef9c01b0">avatarURL</a></td></tr>
<tr class="separator:aff9b4f7a0caf0cc07690975bef9c01b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad239a67124112092cfc4bd7db6127de3" id="r_ad239a67124112092cfc4bd7db6127de3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#ad239a67124112092cfc4bd7db6127de3">guestCanJoin</a></td></tr>
<tr class="separator:ad239a67124112092cfc4bd7db6127de3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaaa1ca02f50c37b566ef6146f87d17ce" id="r_aaaa1ca02f50c37b566ef6146f87d17ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#aaaa1ca02f50c37b566ef6146f87d17ce">worldReadable</a></td></tr>
<tr class="separator:aaaa1ca02f50c37b566ef6146f87d17ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a604b0077380d6603afe00b176795b40d" id="r_a604b0077380d6603afe00b176795b40d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#a604b0077380d6603afe00b176795b40d">Alias</a></td></tr>
<tr class="separator:a604b0077380d6603afe00b176795b40d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4114754daba01833bff6e1c58c13b974" id="r_a4114754daba01833bff6e1c58c13b974"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#a4114754daba01833bff6e1c58c13b974">Topic</a></td></tr>
<tr class="separator:a4114754daba01833bff6e1c58c13b974"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6a2dcb28ff823991d16f8c1841e70c1" id="r_aa6a2dcb28ff823991d16f8c1841e70c1"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#aa6a2dcb28ff823991d16f8c1841e70c1">joinRule</a></td></tr>
<tr class="separator:aa6a2dcb28ff823991d16f8c1841e70c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2898d95d87f84676063aac02fdf17367" id="r_a2898d95d87f84676063aac02fdf17367"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#a2898d95d87f84676063aac02fdf17367">memberCount</a></td></tr>
<tr class="separator:a2898d95d87f84676063aac02fdf17367"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30dac192936b2a8763e36115850c2c4a" id="r_a30dac192936b2a8763e36115850c2c4a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classleet_1_1Room_1_1Room.html">Room::Room</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Space_1_1Space.html#a30dac192936b2a8763e36115850c2c4a">Rooms</a></td></tr>
<tr class="separator:a30dac192936b2a8763e36115850c2c4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which represents a space, which is a collection of rooms. </p>
<p>This class represents a space, which in libleet is different from a room, for simplicity. In reality, a space is almost identical to a room.</p>
<p>TODO: Maybe we should inheret from rooms? </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a604b0077380d6603afe00b176795b40d" name="a604b0077380d6603afe00b176795b40d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a604b0077380d6603afe00b176795b40d">&#9670;&#160;</a></span>Alias</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Space::Space::Alias</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aff9b4f7a0caf0cc07690975bef9c01b0" name="aff9b4f7a0caf0cc07690975bef9c01b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff9b4f7a0caf0cc07690975bef9c01b0">&#9670;&#160;</a></span>avatarURL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Space::Space::avatarURL</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad239a67124112092cfc4bd7db6127de3" name="ad239a67124112092cfc4bd7db6127de3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad239a67124112092cfc4bd7db6127de3">&#9670;&#160;</a></span>guestCanJoin</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Space::Space::guestCanJoin</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aa6a2dcb28ff823991d16f8c1841e70c1" name="aa6a2dcb28ff823991d16f8c1841e70c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa6a2dcb28ff823991d16f8c1841e70c1">&#9670;&#160;</a></span>joinRule</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Space::Space::joinRule</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2898d95d87f84676063aac02fdf17367" name="a2898d95d87f84676063aac02fdf17367"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2898d95d87f84676063aac02fdf17367">&#9670;&#160;</a></span>memberCount</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Space::Space::memberCount</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a6129d6d781a3af69cb6e1d0eb6fa6fa6" name="a6129d6d781a3af69cb6e1d0eb6fa6fa6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6129d6d781a3af69cb6e1d0eb6fa6fa6">&#9670;&#160;</a></span>Name</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Space::Space::Name</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a30dac192936b2a8763e36115850c2c4a" name="a30dac192936b2a8763e36115850c2c4a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a30dac192936b2a8763e36115850c2c4a">&#9670;&#160;</a></span>Rooms</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classleet_1_1Room_1_1Room.html">Room::Room</a>&gt; leet::Space::Space::Rooms</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5fd9c978b593c770005c87af82aa5a65" name="a5fd9c978b593c770005c87af82aa5a65"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5fd9c978b593c770005c87af82aa5a65">&#9670;&#160;</a></span>roomType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Space::Space::roomType</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a52764052510fc54888847af4db7d729a" name="a52764052510fc54888847af4db7d729a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52764052510fc54888847af4db7d729a">&#9670;&#160;</a></span>spaceID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Space::Space::spaceID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a4114754daba01833bff6e1c58c13b974" name="a4114754daba01833bff6e1c58c13b974"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4114754daba01833bff6e1c58c13b974">&#9670;&#160;</a></span>Topic</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Space::Space::Topic</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aaaa1ca02f50c37b566ef6146f87d17ce" name="aaaa1ca02f50c37b566ef6146f87d17ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaaa1ca02f50c37b566ef6146f87d17ce">&#9670;&#160;</a></span>worldReadable</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Space::Space::worldReadable</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,95 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1Sync.html">Sync</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Sync::Sync Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html#af4db8436cae02aea3ef75252fe47b87b">inviteEvents</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html#a4f8c5d3ffc58b636016fe620f6f80424">megolmSessions</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html#ad758687b0021d7d040cf3b4f996f0e0d">nameEvents</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html#a851a34eab73407f9860bff00c12b1d5b">nextBatch</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html#a2f7e58b985d4676bdb69cb69b6a9bbc8">theRequest</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html#a0e68751f6cabefbef1582dc0e1078c91">userEvents</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1Sync.html">leet::Sync::Sync</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,200 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Sync::Sync Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1Sync.html">Sync</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Sync_1_1Sync-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Sync::Sync Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class containing objects of all the other classes in <a class="el" href="namespaceleet_1_1Sync.html">leet::Sync</a>.
<a href="classleet_1_1Sync_1_1Sync.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a0e68751f6cabefbef1582dc0e1078c91" id="r_a0e68751f6cabefbef1582dc0e1078c91"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classleet_1_1Sync_1_1userEvent.html">userEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1Sync.html#a0e68751f6cabefbef1582dc0e1078c91">userEvents</a></td></tr>
<tr class="separator:a0e68751f6cabefbef1582dc0e1078c91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad758687b0021d7d040cf3b4f996f0e0d" id="r_ad758687b0021d7d040cf3b4f996f0e0d"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classleet_1_1Sync_1_1nameEvent.html">nameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1Sync.html#ad758687b0021d7d040cf3b4f996f0e0d">nameEvents</a></td></tr>
<tr class="separator:ad758687b0021d7d040cf3b4f996f0e0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4db8436cae02aea3ef75252fe47b87b" id="r_af4db8436cae02aea3ef75252fe47b87b"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classleet_1_1Sync_1_1inviteEvent.html">inviteEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1Sync.html#af4db8436cae02aea3ef75252fe47b87b">inviteEvents</a></td></tr>
<tr class="separator:af4db8436cae02aea3ef75252fe47b87b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f8c5d3ffc58b636016fe620f6f80424" id="r_a4f8c5d3ffc58b636016fe620f6f80424"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classleet_1_1Sync_1_1megolmSession.html">megolmSession</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1Sync.html#a4f8c5d3ffc58b636016fe620f6f80424">megolmSessions</a></td></tr>
<tr class="separator:a4f8c5d3ffc58b636016fe620f6f80424"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a851a34eab73407f9860bff00c12b1d5b" id="r_a851a34eab73407f9860bff00c12b1d5b"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1Sync.html#a851a34eab73407f9860bff00c12b1d5b">nextBatch</a></td></tr>
<tr class="separator:a851a34eab73407f9860bff00c12b1d5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f7e58b985d4676bdb69cb69b6a9bbc8" id="r_a2f7e58b985d4676bdb69cb69b6a9bbc8"><td class="memItemLeft" align="right" valign="top">nlohmann::json&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1Sync.html#a2f7e58b985d4676bdb69cb69b6a9bbc8">theRequest</a></td></tr>
<tr class="separator:a2f7e58b985d4676bdb69cb69b6a9bbc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class containing objects of all the other classes in <a class="el" href="namespaceleet_1_1Sync.html">leet::Sync</a>. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="af4db8436cae02aea3ef75252fe47b87b" name="af4db8436cae02aea3ef75252fe47b87b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af4db8436cae02aea3ef75252fe47b87b">&#9670;&#160;</a></span>inviteEvents</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classleet_1_1Sync_1_1inviteEvent.html">inviteEvent</a>&gt; leet::Sync::Sync::inviteEvents</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a4f8c5d3ffc58b636016fe620f6f80424" name="a4f8c5d3ffc58b636016fe620f6f80424"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f8c5d3ffc58b636016fe620f6f80424">&#9670;&#160;</a></span>megolmSessions</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classleet_1_1Sync_1_1megolmSession.html">megolmSession</a>&gt; leet::Sync::Sync::megolmSessions</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad758687b0021d7d040cf3b4f996f0e0d" name="ad758687b0021d7d040cf3b4f996f0e0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad758687b0021d7d040cf3b4f996f0e0d">&#9670;&#160;</a></span>nameEvents</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classleet_1_1Sync_1_1nameEvent.html">nameEvent</a>&gt; leet::Sync::Sync::nameEvents</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a851a34eab73407f9860bff00c12b1d5b" name="a851a34eab73407f9860bff00c12b1d5b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a851a34eab73407f9860bff00c12b1d5b">&#9670;&#160;</a></span>nextBatch</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::Sync::nextBatch</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2f7e58b985d4676bdb69cb69b6a9bbc8" name="a2f7e58b985d4676bdb69cb69b6a9bbc8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f7e58b985d4676bdb69cb69b6a9bbc8">&#9670;&#160;</a></span>theRequest</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">nlohmann::json leet::Sync::Sync::theRequest</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0e68751f6cabefbef1582dc0e1078c91" name="a0e68751f6cabefbef1582dc0e1078c91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0e68751f6cabefbef1582dc0e1078c91">&#9670;&#160;</a></span>userEvents</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classleet_1_1Sync_1_1userEvent.html">userEvent</a>&gt; leet::Sync::Sync::userEvents</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,92 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html">inviteEvent</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Sync::inviteEvent Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Sync_1_1inviteEvent.html">leet::Sync::inviteEvent</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html#ae62193732854c5789d1093131d68dd6a">invitedUser</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html">leet::Sync::inviteEvent</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html#aaeaf606e6ff6e8358463660d8ccfa868">Inviter</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html">leet::Sync::inviteEvent</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html#a440b4d38a4ca950ec6b2b8cb52158d0c">Membership</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html">leet::Sync::inviteEvent</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,152 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Sync::inviteEvent Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html">inviteEvent</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Sync_1_1inviteEvent-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Sync::inviteEvent Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class that represents an invite event.
<a href="classleet_1_1Sync_1_1inviteEvent.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a440b4d38a4ca950ec6b2b8cb52158d0c" id="r_a440b4d38a4ca950ec6b2b8cb52158d0c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html#a440b4d38a4ca950ec6b2b8cb52158d0c">Membership</a></td></tr>
<tr class="separator:a440b4d38a4ca950ec6b2b8cb52158d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaeaf606e6ff6e8358463660d8ccfa868" id="r_aaeaf606e6ff6e8358463660d8ccfa868"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html#aaeaf606e6ff6e8358463660d8ccfa868">Inviter</a></td></tr>
<tr class="separator:aaeaf606e6ff6e8358463660d8ccfa868"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae62193732854c5789d1093131d68dd6a" id="r_ae62193732854c5789d1093131d68dd6a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1inviteEvent.html#ae62193732854c5789d1093131d68dd6a">invitedUser</a></td></tr>
<tr class="separator:ae62193732854c5789d1093131d68dd6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class that represents an invite event. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="ae62193732854c5789d1093131d68dd6a" name="ae62193732854c5789d1093131d68dd6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae62193732854c5789d1093131d68dd6a">&#9670;&#160;</a></span>invitedUser</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::inviteEvent::invitedUser</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aaeaf606e6ff6e8358463660d8ccfa868" name="aaeaf606e6ff6e8358463660d8ccfa868"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaeaf606e6ff6e8358463660d8ccfa868">&#9670;&#160;</a></span>Inviter</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::inviteEvent::Inviter</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a440b4d38a4ca950ec6b2b8cb52158d0c" name="a440b4d38a4ca950ec6b2b8cb52158d0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a440b4d38a4ca950ec6b2b8cb52158d0c">&#9670;&#160;</a></span>Membership</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::inviteEvent::Membership</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,95 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html">megolmSession</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Sync::megolmSession Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Sync_1_1megolmSession.html">leet::Sync::megolmSession</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a83e4d359a3e4d40060358310b6dbcf49">Algorithm</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html">leet::Sync::megolmSession</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a79a9a7f9811e4007d23f15e8b643ecf2">cipherText</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html">leet::Sync::megolmSession</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a7f9ca69710f886c5463994ace9bedace">cipherType</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html">leet::Sync::megolmSession</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a9429f9a7f131f323e99decd2a498a779">Sender</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html">leet::Sync::megolmSession</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#aff7c3cbe5d689e39f1f883a3756a974c">senderKey</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html">leet::Sync::megolmSession</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a1f7aacb252a7f5a51cb2720b0d521732">Type</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html">leet::Sync::megolmSession</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,200 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Sync::megolmSession Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html">megolmSession</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Sync_1_1megolmSession-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Sync::megolmSession Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class that represents a Megolm session sent in the room.
<a href="classleet_1_1Sync_1_1megolmSession.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a83e4d359a3e4d40060358310b6dbcf49" id="r_a83e4d359a3e4d40060358310b6dbcf49"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a83e4d359a3e4d40060358310b6dbcf49">Algorithm</a></td></tr>
<tr class="separator:a83e4d359a3e4d40060358310b6dbcf49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79a9a7f9811e4007d23f15e8b643ecf2" id="r_a79a9a7f9811e4007d23f15e8b643ecf2"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a79a9a7f9811e4007d23f15e8b643ecf2">cipherText</a></td></tr>
<tr class="separator:a79a9a7f9811e4007d23f15e8b643ecf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f9ca69710f886c5463994ace9bedace" id="r_a7f9ca69710f886c5463994ace9bedace"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a7f9ca69710f886c5463994ace9bedace">cipherType</a></td></tr>
<tr class="separator:a7f9ca69710f886c5463994ace9bedace"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff7c3cbe5d689e39f1f883a3756a974c" id="r_aff7c3cbe5d689e39f1f883a3756a974c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#aff7c3cbe5d689e39f1f883a3756a974c">senderKey</a></td></tr>
<tr class="separator:aff7c3cbe5d689e39f1f883a3756a974c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9429f9a7f131f323e99decd2a498a779" id="r_a9429f9a7f131f323e99decd2a498a779"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a9429f9a7f131f323e99decd2a498a779">Sender</a></td></tr>
<tr class="separator:a9429f9a7f131f323e99decd2a498a779"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f7aacb252a7f5a51cb2720b0d521732" id="r_a1f7aacb252a7f5a51cb2720b0d521732"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1megolmSession.html#a1f7aacb252a7f5a51cb2720b0d521732">Type</a></td></tr>
<tr class="separator:a1f7aacb252a7f5a51cb2720b0d521732"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class that represents a Megolm session sent in the room. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a83e4d359a3e4d40060358310b6dbcf49" name="a83e4d359a3e4d40060358310b6dbcf49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83e4d359a3e4d40060358310b6dbcf49">&#9670;&#160;</a></span>Algorithm</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::megolmSession::Algorithm</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a79a9a7f9811e4007d23f15e8b643ecf2" name="a79a9a7f9811e4007d23f15e8b643ecf2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79a9a7f9811e4007d23f15e8b643ecf2">&#9670;&#160;</a></span>cipherText</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::megolmSession::cipherText</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7f9ca69710f886c5463994ace9bedace" name="a7f9ca69710f886c5463994ace9bedace"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f9ca69710f886c5463994ace9bedace">&#9670;&#160;</a></span>cipherType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Sync::megolmSession::cipherType</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9429f9a7f131f323e99decd2a498a779" name="a9429f9a7f131f323e99decd2a498a779"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9429f9a7f131f323e99decd2a498a779">&#9670;&#160;</a></span>Sender</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::megolmSession::Sender</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aff7c3cbe5d689e39f1f883a3756a974c" name="aff7c3cbe5d689e39f1f883a3756a974c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff7c3cbe5d689e39f1f883a3756a974c">&#9670;&#160;</a></span>senderKey</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::megolmSession::senderKey</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a1f7aacb252a7f5a51cb2720b0d521732" name="a1f7aacb252a7f5a51cb2720b0d521732"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f7aacb252a7f5a51cb2720b0d521732">&#9670;&#160;</a></span>Type</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::megolmSession::Type</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,93 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html">nameEvent</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Sync::nameEvent Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Sync_1_1nameEvent.html">leet::Sync::nameEvent</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html#a8be903f5571aadcf3409518b75a8a24c">Inviter</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html">leet::Sync::nameEvent</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html#a0c9fe5a640d795ff12ff5273266e8ef8">roomID</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html">leet::Sync::nameEvent</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html#a4844c8ba233c6eabb3de542c301a67a1">roomName</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html">leet::Sync::nameEvent</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html#a52f90666f5ea32bf972932c7ecefc656">stateKey</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html">leet::Sync::nameEvent</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,168 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Sync::nameEvent Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html">nameEvent</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Sync_1_1nameEvent-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Sync::nameEvent Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class that represents a name event.
<a href="classleet_1_1Sync_1_1nameEvent.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a0c9fe5a640d795ff12ff5273266e8ef8" id="r_a0c9fe5a640d795ff12ff5273266e8ef8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html#a0c9fe5a640d795ff12ff5273266e8ef8">roomID</a></td></tr>
<tr class="separator:a0c9fe5a640d795ff12ff5273266e8ef8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4844c8ba233c6eabb3de542c301a67a1" id="r_a4844c8ba233c6eabb3de542c301a67a1"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html#a4844c8ba233c6eabb3de542c301a67a1">roomName</a></td></tr>
<tr class="separator:a4844c8ba233c6eabb3de542c301a67a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8be903f5571aadcf3409518b75a8a24c" id="r_a8be903f5571aadcf3409518b75a8a24c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html#a8be903f5571aadcf3409518b75a8a24c">Inviter</a></td></tr>
<tr class="separator:a8be903f5571aadcf3409518b75a8a24c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52f90666f5ea32bf972932c7ecefc656" id="r_a52f90666f5ea32bf972932c7ecefc656"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1nameEvent.html#a52f90666f5ea32bf972932c7ecefc656">stateKey</a></td></tr>
<tr class="separator:a52f90666f5ea32bf972932c7ecefc656"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class that represents a name event. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a8be903f5571aadcf3409518b75a8a24c" name="a8be903f5571aadcf3409518b75a8a24c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8be903f5571aadcf3409518b75a8a24c">&#9670;&#160;</a></span>Inviter</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::nameEvent::Inviter</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0c9fe5a640d795ff12ff5273266e8ef8" name="a0c9fe5a640d795ff12ff5273266e8ef8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c9fe5a640d795ff12ff5273266e8ef8">&#9670;&#160;</a></span>roomID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::nameEvent::roomID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a4844c8ba233c6eabb3de542c301a67a1" name="a4844c8ba233c6eabb3de542c301a67a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4844c8ba233c6eabb3de542c301a67a1">&#9670;&#160;</a></span>roomName</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::nameEvent::roomName</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a52f90666f5ea32bf972932c7ecefc656" name="a52f90666f5ea32bf972932c7ecefc656"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52f90666f5ea32bf972932c7ecefc656">&#9670;&#160;</a></span>stateKey</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::nameEvent::stateKey</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,95 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1userEvent.html">userEvent</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::Sync::userEvent Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1Sync_1_1userEvent.html">leet::Sync::userEvent</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#ab1a314f201a602c2d53e236cf4e254f3">avatarURL</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html">leet::Sync::userEvent</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a73d1b76b742bcc29d4809d60833c448e">currentlyActive</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html">leet::Sync::userEvent</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a5e033f7bafd5c206d3893ae44a868cc9">lastActiveAgo</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html">leet::Sync::userEvent</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a9db25a571fbbcf0a3284e26d5e0c8e96">Presence</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html">leet::Sync::userEvent</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a09c61940cd2b29b5874aed38446cf7ab">statusMessage</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html">leet::Sync::userEvent</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a872f5d8fb68c1f01ae5b39e82579bc43">userID</a></td><td class="entry"><a class="el" href="classleet_1_1Sync_1_1userEvent.html">leet::Sync::userEvent</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,200 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::Sync::userEvent Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1Sync.html">Sync</a></li><li class="navelem"><a class="el" href="classleet_1_1Sync_1_1userEvent.html">userEvent</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1Sync_1_1userEvent-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::Sync::userEvent Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class that represents a user event.
<a href="classleet_1_1Sync_1_1userEvent.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a872f5d8fb68c1f01ae5b39e82579bc43" id="r_a872f5d8fb68c1f01ae5b39e82579bc43"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a872f5d8fb68c1f01ae5b39e82579bc43">userID</a></td></tr>
<tr class="separator:a872f5d8fb68c1f01ae5b39e82579bc43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1a314f201a602c2d53e236cf4e254f3" id="r_ab1a314f201a602c2d53e236cf4e254f3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#ab1a314f201a602c2d53e236cf4e254f3">avatarURL</a></td></tr>
<tr class="separator:ab1a314f201a602c2d53e236cf4e254f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73d1b76b742bcc29d4809d60833c448e" id="r_a73d1b76b742bcc29d4809d60833c448e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a73d1b76b742bcc29d4809d60833c448e">currentlyActive</a></td></tr>
<tr class="separator:a73d1b76b742bcc29d4809d60833c448e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e033f7bafd5c206d3893ae44a868cc9" id="r_a5e033f7bafd5c206d3893ae44a868cc9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a5e033f7bafd5c206d3893ae44a868cc9">lastActiveAgo</a></td></tr>
<tr class="separator:a5e033f7bafd5c206d3893ae44a868cc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9db25a571fbbcf0a3284e26d5e0c8e96" id="r_a9db25a571fbbcf0a3284e26d5e0c8e96"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a9db25a571fbbcf0a3284e26d5e0c8e96">Presence</a></td></tr>
<tr class="separator:a9db25a571fbbcf0a3284e26d5e0c8e96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09c61940cd2b29b5874aed38446cf7ab" id="r_a09c61940cd2b29b5874aed38446cf7ab"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1Sync_1_1userEvent.html#a09c61940cd2b29b5874aed38446cf7ab">statusMessage</a></td></tr>
<tr class="separator:a09c61940cd2b29b5874aed38446cf7ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class that represents a user event. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="ab1a314f201a602c2d53e236cf4e254f3" name="ab1a314f201a602c2d53e236cf4e254f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1a314f201a602c2d53e236cf4e254f3">&#9670;&#160;</a></span>avatarURL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::userEvent::avatarURL</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a73d1b76b742bcc29d4809d60833c448e" name="a73d1b76b742bcc29d4809d60833c448e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a73d1b76b742bcc29d4809d60833c448e">&#9670;&#160;</a></span>currentlyActive</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::Sync::userEvent::currentlyActive</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5e033f7bafd5c206d3893ae44a868cc9" name="a5e033f7bafd5c206d3893ae44a868cc9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e033f7bafd5c206d3893ae44a868cc9">&#9670;&#160;</a></span>lastActiveAgo</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::Sync::userEvent::lastActiveAgo</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9db25a571fbbcf0a3284e26d5e0c8e96" name="a9db25a571fbbcf0a3284e26d5e0c8e96"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9db25a571fbbcf0a3284e26d5e0c8e96">&#9670;&#160;</a></span>Presence</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::userEvent::Presence</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a09c61940cd2b29b5874aed38446cf7ab" name="a09c61940cd2b29b5874aed38446cf7ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a09c61940cd2b29b5874aed38446cf7ab">&#9670;&#160;</a></span>statusMessage</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::userEvent::statusMessage</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a872f5d8fb68c1f01ae5b39e82579bc43" name="a872f5d8fb68c1f01ae5b39e82579bc43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a872f5d8fb68c1f01ae5b39e82579bc43">&#9670;&#160;</a></span>userID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::Sync::userEvent::userID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,99 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1User.html">User</a></li><li class="navelem"><a class="el" href="classleet_1_1User_1_1Credentials.html">Credentials</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::User::Credentials Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#a01b5f82e4edecb6128ffe3fb89c2275a">clearCredentials</a>()</td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#ad6a50d9f239f3abfb0627617e19a91e1">deviceID</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#a14f30a55899e724877a84623378c00c8">displayName</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#af93cb0d1ad2137e1c0d54cefa3418123">Homeserver</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#a8c29a5564ae35191afb4f63383b1ff5d">Identifier</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#a2601635196c112cc819b48449f143457">Password</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#ae4d62ad39baa02795e11bf1daa74e12e">refreshToken</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#a60e506535df8e6672ea8e8ea7dff451e">Token</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#a319bf175ae5c1209abbb7c05199648d3">Type</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html#ab69825910cc4796bd7992cd7cdfd6248">Username</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Credentials.html">leet::User::Credentials</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,281 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::User::Credentials Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1User.html">User</a></li><li class="navelem"><a class="el" href="classleet_1_1User_1_1Credentials.html">Credentials</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1User_1_1Credentials-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::User::Credentials Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a class="el" href="classleet_1_1User_1_1Credentials.html" title="Credentials class which contains fields passed to login requests.">Credentials</a> class which contains fields passed to login requests.
<a href="classleet_1_1User_1_1Credentials.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a01b5f82e4edecb6128ffe3fb89c2275a" id="r_a01b5f82e4edecb6128ffe3fb89c2275a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">void</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#a01b5f82e4edecb6128ffe3fb89c2275a">clearCredentials</a> ()</td></tr>
<tr class="separator:a01b5f82e4edecb6128ffe3fb89c2275a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:ab69825910cc4796bd7992cd7cdfd6248" id="r_ab69825910cc4796bd7992cd7cdfd6248"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#ab69825910cc4796bd7992cd7cdfd6248">Username</a></td></tr>
<tr class="separator:ab69825910cc4796bd7992cd7cdfd6248"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2601635196c112cc819b48449f143457" id="r_a2601635196c112cc819b48449f143457"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#a2601635196c112cc819b48449f143457">Password</a></td></tr>
<tr class="separator:a2601635196c112cc819b48449f143457"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14f30a55899e724877a84623378c00c8" id="r_a14f30a55899e724877a84623378c00c8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#a14f30a55899e724877a84623378c00c8">displayName</a></td></tr>
<tr class="separator:a14f30a55899e724877a84623378c00c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6a50d9f239f3abfb0627617e19a91e1" id="r_ad6a50d9f239f3abfb0627617e19a91e1"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#ad6a50d9f239f3abfb0627617e19a91e1">deviceID</a></td></tr>
<tr class="separator:ad6a50d9f239f3abfb0627617e19a91e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af93cb0d1ad2137e1c0d54cefa3418123" id="r_af93cb0d1ad2137e1c0d54cefa3418123"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#af93cb0d1ad2137e1c0d54cefa3418123">Homeserver</a></td></tr>
<tr class="separator:af93cb0d1ad2137e1c0d54cefa3418123"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4d62ad39baa02795e11bf1daa74e12e" id="r_ae4d62ad39baa02795e11bf1daa74e12e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#ae4d62ad39baa02795e11bf1daa74e12e">refreshToken</a></td></tr>
<tr class="separator:ae4d62ad39baa02795e11bf1daa74e12e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60e506535df8e6672ea8e8ea7dff451e" id="r_a60e506535df8e6672ea8e8ea7dff451e"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#a60e506535df8e6672ea8e8ea7dff451e">Token</a></td></tr>
<tr class="separator:a60e506535df8e6672ea8e8ea7dff451e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c29a5564ae35191afb4f63383b1ff5d" id="r_a8c29a5564ae35191afb4f63383b1ff5d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#a8c29a5564ae35191afb4f63383b1ff5d">Identifier</a></td></tr>
<tr class="separator:a8c29a5564ae35191afb4f63383b1ff5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a319bf175ae5c1209abbb7c05199648d3" id="r_a319bf175ae5c1209abbb7c05199648d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Credentials.html#a319bf175ae5c1209abbb7c05199648d3">Type</a></td></tr>
<tr class="separator:a319bf175ae5c1209abbb7c05199648d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classleet_1_1User_1_1Credentials.html" title="Credentials class which contains fields passed to login requests.">Credentials</a> class which contains fields passed to login requests. </p>
<p><a class="el" href="classleet_1_1User_1_1Credentials.html" title="Credentials class which contains fields passed to login requests.">Credentials</a> class which contains fields passed to login requests. The client should set these fields in an object and pass that to a login function. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a01b5f82e4edecb6128ffe3fb89c2275a" name="a01b5f82e4edecb6128ffe3fb89c2275a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01b5f82e4edecb6128ffe3fb89c2275a">&#9670;&#160;</a></span>clearCredentials()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">void</a> leet::User::Credentials::clearCredentials </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="ad6a50d9f239f3abfb0627617e19a91e1" name="ad6a50d9f239f3abfb0627617e19a91e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad6a50d9f239f3abfb0627617e19a91e1">&#9670;&#160;</a></span>deviceID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Credentials::deviceID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a14f30a55899e724877a84623378c00c8" name="a14f30a55899e724877a84623378c00c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14f30a55899e724877a84623378c00c8">&#9670;&#160;</a></span>displayName</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Credentials::displayName</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af93cb0d1ad2137e1c0d54cefa3418123" name="af93cb0d1ad2137e1c0d54cefa3418123"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af93cb0d1ad2137e1c0d54cefa3418123">&#9670;&#160;</a></span>Homeserver</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Credentials::Homeserver</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a8c29a5564ae35191afb4f63383b1ff5d" name="a8c29a5564ae35191afb4f63383b1ff5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c29a5564ae35191afb4f63383b1ff5d">&#9670;&#160;</a></span>Identifier</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::User::Credentials::Identifier</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2601635196c112cc819b48449f143457" name="a2601635196c112cc819b48449f143457"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2601635196c112cc819b48449f143457">&#9670;&#160;</a></span>Password</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Credentials::Password</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae4d62ad39baa02795e11bf1daa74e12e" name="ae4d62ad39baa02795e11bf1daa74e12e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae4d62ad39baa02795e11bf1daa74e12e">&#9670;&#160;</a></span>refreshToken</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::User::Credentials::refreshToken</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a60e506535df8e6672ea8e8ea7dff451e" name="a60e506535df8e6672ea8e8ea7dff451e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a60e506535df8e6672ea8e8ea7dff451e">&#9670;&#160;</a></span>Token</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Credentials::Token</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a319bf175ae5c1209abbb7c05199648d3" name="a319bf175ae5c1209abbb7c05199648d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a319bf175ae5c1209abbb7c05199648d3">&#9670;&#160;</a></span>Type</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::User::Credentials::Type</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab69825910cc4796bd7992cd7cdfd6248" name="ab69825910cc4796bd7992cd7cdfd6248"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab69825910cc4796bd7992cd7cdfd6248">&#9670;&#160;</a></span>Username</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Credentials::Username</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,95 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1User.html">User</a></li><li class="navelem"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">CredentialsResponse</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::User::CredentialsResponse Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a2c9bc29b7c1702af9c372fccd5e14c6d">deviceID</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a3373697c8735dc08e71d590da7ca6b6f">Expiration</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a9233923ddc9627b08b8572b2a379ae0c">Homeserver</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a0c193776bac32142e4b48034a45b7411">refreshToken</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">userID</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">leet::User::CredentialsResponse</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,200 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::User::CredentialsResponse Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1User.html">User</a></li><li class="navelem"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html">CredentialsResponse</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1User_1_1CredentialsResponse-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::User::CredentialsResponse Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which contains the response from the Matrix homeserver on initial login.
<a href="classleet_1_1User_1_1CredentialsResponse.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:ae4d15192559f009ad966de4bc9cdf58a" id="r_ae4d15192559f009ad966de4bc9cdf58a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#ae4d15192559f009ad966de4bc9cdf58a">accessToken</a></td></tr>
<tr class="separator:ae4d15192559f009ad966de4bc9cdf58a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c193776bac32142e4b48034a45b7411" id="r_a0c193776bac32142e4b48034a45b7411"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a0c193776bac32142e4b48034a45b7411">refreshToken</a></td></tr>
<tr class="separator:a0c193776bac32142e4b48034a45b7411"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c9bc29b7c1702af9c372fccd5e14c6d" id="r_a2c9bc29b7c1702af9c372fccd5e14c6d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a2c9bc29b7c1702af9c372fccd5e14c6d">deviceID</a></td></tr>
<tr class="separator:a2c9bc29b7c1702af9c372fccd5e14c6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9233923ddc9627b08b8572b2a379ae0c" id="r_a9233923ddc9627b08b8572b2a379ae0c"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a9233923ddc9627b08b8572b2a379ae0c">Homeserver</a></td></tr>
<tr class="separator:a9233923ddc9627b08b8572b2a379ae0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7561824b6e56efae7257ac9995d43846" id="r_a7561824b6e56efae7257ac9995d43846"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a7561824b6e56efae7257ac9995d43846">userID</a></td></tr>
<tr class="separator:a7561824b6e56efae7257ac9995d43846"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3373697c8735dc08e71d590da7ca6b6f" id="r_a3373697c8735dc08e71d590da7ca6b6f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1CredentialsResponse.html#a3373697c8735dc08e71d590da7ca6b6f">Expiration</a></td></tr>
<tr class="separator:a3373697c8735dc08e71d590da7ca6b6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which contains the response from the Matrix homeserver on initial login. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="ae4d15192559f009ad966de4bc9cdf58a" name="ae4d15192559f009ad966de4bc9cdf58a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae4d15192559f009ad966de4bc9cdf58a">&#9670;&#160;</a></span>accessToken</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::CredentialsResponse::accessToken</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2c9bc29b7c1702af9c372fccd5e14c6d" name="a2c9bc29b7c1702af9c372fccd5e14c6d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c9bc29b7c1702af9c372fccd5e14c6d">&#9670;&#160;</a></span>deviceID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::CredentialsResponse::deviceID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a3373697c8735dc08e71d590da7ca6b6f" name="a3373697c8735dc08e71d590da7ca6b6f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3373697c8735dc08e71d590da7ca6b6f">&#9670;&#160;</a></span>Expiration</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::User::CredentialsResponse::Expiration</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9233923ddc9627b08b8572b2a379ae0c" name="a9233923ddc9627b08b8572b2a379ae0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9233923ddc9627b08b8572b2a379ae0c">&#9670;&#160;</a></span>Homeserver</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::CredentialsResponse::Homeserver</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0c193776bac32142e4b48034a45b7411" name="a0c193776bac32142e4b48034a45b7411"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c193776bac32142e4b48034a45b7411">&#9670;&#160;</a></span>refreshToken</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::CredentialsResponse::refreshToken</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7561824b6e56efae7257ac9995d43846" name="a7561824b6e56efae7257ac9995d43846"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7561824b6e56efae7257ac9995d43846">&#9670;&#160;</a></span>userID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::CredentialsResponse::userID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,97 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1User.html">User</a></li><li class="navelem"><a class="el" href="classleet_1_1User_1_1Device.html">Device</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::User::Device Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1User_1_1Device.html">leet::User::Device</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html#abae3e799bf2e2b392827ff83f9280220">curve25519Key</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html">leet::User::Device</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html#ae3eb4a922db791eb92264ef9656febd5">deviceDisplayName</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html">leet::User::Device</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">deviceID</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html">leet::User::Device</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html#a6de003ef59747f0d64f391cca9479390">ed25519Key</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html">leet::User::Device</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html#a31b2b73e0920a4c8a2c31c06e8c14612">ed25519Signature</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html">leet::User::Device</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html#acae68e9559f1baf239fa0efd2a84d35f">megolm</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html">leet::User::Device</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html#af848c7b87bb41ab7c3d3c6f57b5fd667">olm</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html">leet::User::Device</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html#a0fb0c5d9b1f6f9e358380c47bf8c27b6">userID</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Device.html">leet::User::Device</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,232 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::User::Device Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1User.html">User</a></li><li class="navelem"><a class="el" href="classleet_1_1User_1_1Device.html">Device</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1User_1_1Device-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::User::Device Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which represents a single device for a user.
<a href="classleet_1_1User_1_1Device.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a0fb0c5d9b1f6f9e358380c47bf8c27b6" id="r_a0fb0c5d9b1f6f9e358380c47bf8c27b6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Device.html#a0fb0c5d9b1f6f9e358380c47bf8c27b6">userID</a></td></tr>
<tr class="separator:a0fb0c5d9b1f6f9e358380c47bf8c27b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1f19ee3d41ea38ddba0f469734ccf1f" id="r_af1f19ee3d41ea38ddba0f469734ccf1f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Device.html#af1f19ee3d41ea38ddba0f469734ccf1f">deviceID</a></td></tr>
<tr class="separator:af1f19ee3d41ea38ddba0f469734ccf1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abae3e799bf2e2b392827ff83f9280220" id="r_abae3e799bf2e2b392827ff83f9280220"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Device.html#abae3e799bf2e2b392827ff83f9280220">curve25519Key</a></td></tr>
<tr class="separator:abae3e799bf2e2b392827ff83f9280220"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6de003ef59747f0d64f391cca9479390" id="r_a6de003ef59747f0d64f391cca9479390"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Device.html#a6de003ef59747f0d64f391cca9479390">ed25519Key</a></td></tr>
<tr class="separator:a6de003ef59747f0d64f391cca9479390"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31b2b73e0920a4c8a2c31c06e8c14612" id="r_a31b2b73e0920a4c8a2c31c06e8c14612"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Device.html#a31b2b73e0920a4c8a2c31c06e8c14612">ed25519Signature</a></td></tr>
<tr class="separator:a31b2b73e0920a4c8a2c31c06e8c14612"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3eb4a922db791eb92264ef9656febd5" id="r_ae3eb4a922db791eb92264ef9656febd5"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Device.html#ae3eb4a922db791eb92264ef9656febd5">deviceDisplayName</a></td></tr>
<tr class="separator:ae3eb4a922db791eb92264ef9656febd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af848c7b87bb41ab7c3d3c6f57b5fd667" id="r_af848c7b87bb41ab7c3d3c6f57b5fd667"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Device.html#af848c7b87bb41ab7c3d3c6f57b5fd667">olm</a></td></tr>
<tr class="separator:af848c7b87bb41ab7c3d3c6f57b5fd667"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acae68e9559f1baf239fa0efd2a84d35f" id="r_acae68e9559f1baf239fa0efd2a84d35f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Device.html#acae68e9559f1baf239fa0efd2a84d35f">megolm</a></td></tr>
<tr class="separator:acae68e9559f1baf239fa0efd2a84d35f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which represents a single device for a user. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="abae3e799bf2e2b392827ff83f9280220" name="abae3e799bf2e2b392827ff83f9280220"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abae3e799bf2e2b392827ff83f9280220">&#9670;&#160;</a></span>curve25519Key</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Device::curve25519Key</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae3eb4a922db791eb92264ef9656febd5" name="ae3eb4a922db791eb92264ef9656febd5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3eb4a922db791eb92264ef9656febd5">&#9670;&#160;</a></span>deviceDisplayName</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Device::deviceDisplayName</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af1f19ee3d41ea38ddba0f469734ccf1f" name="af1f19ee3d41ea38ddba0f469734ccf1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1f19ee3d41ea38ddba0f469734ccf1f">&#9670;&#160;</a></span>deviceID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Device::deviceID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a6de003ef59747f0d64f391cca9479390" name="a6de003ef59747f0d64f391cca9479390"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6de003ef59747f0d64f391cca9479390">&#9670;&#160;</a></span>ed25519Key</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Device::ed25519Key</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a31b2b73e0920a4c8a2c31c06e8c14612" name="a31b2b73e0920a4c8a2c31c06e8c14612"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31b2b73e0920a4c8a2c31c06e8c14612">&#9670;&#160;</a></span>ed25519Signature</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Device::ed25519Signature</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="acae68e9559f1baf239fa0efd2a84d35f" name="acae68e9559f1baf239fa0efd2a84d35f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acae68e9559f1baf239fa0efd2a84d35f">&#9670;&#160;</a></span>megolm</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::User::Device::megolm</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="af848c7b87bb41ab7c3d3c6f57b5fd667" name="af848c7b87bb41ab7c3d3c6f57b5fd667"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af848c7b87bb41ab7c3d3c6f57b5fd667">&#9670;&#160;</a></span>olm</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">bool</a> leet::User::Device::olm</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0fb0c5d9b1f6f9e358380c47bf8c27b6" name="a0fb0c5d9b1f6f9e358380c47bf8c27b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fb0c5d9b1f6f9e358380c47bf8c27b6">&#9670;&#160;</a></span>userID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Device::userID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,93 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1User.html">User</a></li><li class="navelem"><a class="el" href="classleet_1_1User_1_1Profile.html">Profile</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::User::Profile Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Profile.html#aca64ad4120289dad0d55c623ff3d0ac5">avatarURL</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Profile.html#a2adeec50cb835a6977e971ff54064db2">Devices</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1User_1_1Profile.html#a682c1db4b7f50f3aad4e6b6c08c557a1">displayName</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1User_1_1Profile.html#ad9a9c118c09885e9020674b7826756f8">userID</a></td><td class="entry"><a class="el" href="classleet_1_1User_1_1Profile.html">leet::User::Profile</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,168 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::User::Profile Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1User.html">User</a></li><li class="navelem"><a class="el" href="classleet_1_1User_1_1Profile.html">Profile</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1User_1_1Profile-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::User::Profile Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which represents a user profile, along with his or her devices.
<a href="classleet_1_1User_1_1Profile.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:ad9a9c118c09885e9020674b7826756f8" id="r_ad9a9c118c09885e9020674b7826756f8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Profile.html#ad9a9c118c09885e9020674b7826756f8">userID</a></td></tr>
<tr class="separator:ad9a9c118c09885e9020674b7826756f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a682c1db4b7f50f3aad4e6b6c08c557a1" id="r_a682c1db4b7f50f3aad4e6b6c08c557a1"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Profile.html#a682c1db4b7f50f3aad4e6b6c08c557a1">displayName</a></td></tr>
<tr class="separator:a682c1db4b7f50f3aad4e6b6c08c557a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca64ad4120289dad0d55c623ff3d0ac5" id="r_aca64ad4120289dad0d55c623ff3d0ac5"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Profile.html#aca64ad4120289dad0d55c623ff3d0ac5">avatarURL</a></td></tr>
<tr class="separator:aca64ad4120289dad0d55c623ff3d0ac5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2adeec50cb835a6977e971ff54064db2" id="r_a2adeec50cb835a6977e971ff54064db2"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classleet_1_1User_1_1Device.html">User::Device</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1User_1_1Profile.html#a2adeec50cb835a6977e971ff54064db2">Devices</a></td></tr>
<tr class="separator:a2adeec50cb835a6977e971ff54064db2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which represents a user profile, along with his or her devices. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="aca64ad4120289dad0d55c623ff3d0ac5" name="aca64ad4120289dad0d55c623ff3d0ac5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca64ad4120289dad0d55c623ff3d0ac5">&#9670;&#160;</a></span>avatarURL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Profile::avatarURL</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2adeec50cb835a6977e971ff54064db2" name="a2adeec50cb835a6977e971ff54064db2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2adeec50cb835a6977e971ff54064db2">&#9670;&#160;</a></span>Devices</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;<a class="el" href="classleet_1_1User_1_1Device.html">User::Device</a>&gt; leet::User::Profile::Devices</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a682c1db4b7f50f3aad4e6b6c08c557a1" name="a682c1db4b7f50f3aad4e6b6c08c557a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a682c1db4b7f50f3aad4e6b6c08c557a1">&#9670;&#160;</a></span>displayName</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Profile::displayName</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad9a9c118c09885e9020674b7826756f8" name="ad9a9c118c09885e9020674b7826756f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9a9c118c09885e9020674b7826756f8">&#9670;&#160;</a></span>userID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::User::Profile::userID</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,93 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1VOIP.html">VOIP</a></li><li class="navelem"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html">Credentials</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::VOIP::Credentials Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1VOIP_1_1Credentials.html">leet::VOIP::Credentials</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html#a9a36448f6d146a4e0170b726c8f55e02">Password</a></td><td class="entry"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html">leet::VOIP::Credentials</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html#a98b99d454adbf4986782d6aafe241e25">timeToLiveIn</a></td><td class="entry"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html">leet::VOIP::Credentials</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html#a0e92088a4e9d16bfac1535abe3757730">URI</a></td><td class="entry"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html">leet::VOIP::Credentials</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html#aafa81db0f03f6b86a5d5c12a2a3b9140">Username</a></td><td class="entry"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html">leet::VOIP::Credentials</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,168 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: leet::VOIP::Credentials Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="namespaceleet_1_1VOIP.html">VOIP</a></li><li class="navelem"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html">Credentials</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="classleet_1_1VOIP_1_1Credentials-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">leet::VOIP::Credentials Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Class which represents TURN server credentials returned.
<a href="classleet_1_1VOIP_1_1Credentials.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:aafa81db0f03f6b86a5d5c12a2a3b9140" id="r_aafa81db0f03f6b86a5d5c12a2a3b9140"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html#aafa81db0f03f6b86a5d5c12a2a3b9140">Username</a></td></tr>
<tr class="separator:aafa81db0f03f6b86a5d5c12a2a3b9140"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a36448f6d146a4e0170b726c8f55e02" id="r_a9a36448f6d146a4e0170b726c8f55e02"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html#a9a36448f6d146a4e0170b726c8f55e02">Password</a></td></tr>
<tr class="separator:a9a36448f6d146a4e0170b726c8f55e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98b99d454adbf4986782d6aafe241e25" id="r_a98b99d454adbf4986782d6aafe241e25"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html#a98b99d454adbf4986782d6aafe241e25">timeToLiveIn</a></td></tr>
<tr class="separator:a98b99d454adbf4986782d6aafe241e25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e92088a4e9d16bfac1535abe3757730" id="r_a0e92088a4e9d16bfac1535abe3757730"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classleet_1_1VOIP_1_1Credentials.html#a0e92088a4e9d16bfac1535abe3757730">URI</a></td></tr>
<tr class="separator:a0e92088a4e9d16bfac1535abe3757730"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class which represents TURN server credentials returned. </p>
</div><h2 class="groupheader">Member Data Documentation</h2>
<a id="a9a36448f6d146a4e0170b726c8f55e02" name="a9a36448f6d146a4e0170b726c8f55e02"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a36448f6d146a4e0170b726c8f55e02">&#9670;&#160;</a></span>Password</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::VOIP::Credentials::Password</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a98b99d454adbf4986782d6aafe241e25" name="a98b99d454adbf4986782d6aafe241e25"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98b99d454adbf4986782d6aafe241e25">&#9670;&#160;</a></span>timeToLiveIn</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceleet.html#a8e1e00b1de977d7ae4b3d4d4e753d2a2">int</a> leet::VOIP::Credentials::timeToLiveIn</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0e92088a4e9d16bfac1535abe3757730" name="a0e92088a4e9d16bfac1535abe3757730"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0e92088a4e9d16bfac1535abe3757730">&#9670;&#160;</a></span>URI</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;std::string&gt; leet::VOIP::Credentials::URI</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="aafa81db0f03f6b86a5d5c12a2a3b9140" name="aafa81db0f03f6b86a5d5c12a2a3b9140"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aafa81db0f03f6b86a5d5c12a2a3b9140">&#9670;&#160;</a></span>Username</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string leet::VOIP::Credentials::Username</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/speedie/libleet/include/<a class="el" href="libleet_8hpp_source.html">libleet.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

View file

@ -0,0 +1,134 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: Member List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceleet.html">leet</a></li><li class="navelem"><a class="el" href="classleet_1_1olmAccount.html">olmAccount</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">leet::olmAccount Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#afff87a57045cb7128bf6f6721ed844dd">Account</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a9e16289f1ba1ab95e85433f230df99fa">accountMemory</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#aadcd18456837d84069cf1695e5d8515c">accountMemoryAllocated</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#aa19c65418db88ced5be3761d52526dde">clear</a>()</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a630917281fbc3411146c7f2eb6266601">createAccount</a>()</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#af92b2a11dc88153b2ae48fdc895b2c41">createIdentity</a>()</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#ac41a8db6a79cc11b67588592aa7f48cb">createMegolmSession</a>()</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a10d76b67a728792ee645ba904d7a3f46">createSession</a>(leet::User::CredentialsResponse *resp, leet::Room::Room *room, const std::vector&lt; leet::User::Profile &gt; &amp;users)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a03e7b55200d1afbeeaa9ecea4ad5b487">curve25519</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a380e1fef56330b3924de08f671ec0246">destroy</a>()</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a7f92aa6bd4c492bf558bf40ba161b9a0">ed25519</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#ab5422499f6fcef344d157f7d74cfffb8">encryptMessage</a>(leet::User::CredentialsResponse *resp, const std::string &amp;message)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a413254224d9c62c5da115fc7d8f1345b">handleError</a>(const std::string &amp;Failure)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#ac32d7240e542e5eb05f1f40f9980ebc6">Identity</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a93d8b9aefc2be25745611e7e1bf1a799">identityLength</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#add0ceec9c4c5ffa05cd2de377b5b6583">identityMemoryAllocated</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a9f1d6ebdd74a6f0fd568eca162eb6352">json</a> typedef</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a2ce1942fb235fc664c64aa02af51e39b">keysRemaining</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#aa87110b7a44952292e48fdb46ba30d00">loadAccount</a>(const std::string &amp;pickleKey, const std::string &amp;pickleData)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a2eda608498d23fbe094f4efcb9efb146">loadMegolmSession</a>(const std::string &amp;pickleKey, const std::string &amp;pickleData)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#ae5a74c5a2e7819f293606eb6d480a0f0">megolmSession</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a173be267e027dda61392317996df091c">megolmSessionID</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a39d5c59e5cdcf9f1e3c3fb6ed93a15d0">megolmSessionIDLength</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#aba60abf43933c689ec97556c17f9e6bb">megolmSessionIDMemoryAllocated</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#aeb82f0d36ae773e94567d37ddb5f0e95">megolmSessionKey</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#abed42411cef1634472f6197bb82c1553">megolmSessionKeyLength</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a2856582d3fbc688d27d050405ef6e064">megolmSessionMemory</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#ab4bd1e66652c36da4134febc552b8095">megolmSessionMemoryAllocated</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#ae2453a849ff9a4b3d1c9fc33da9e2c10">olmSessionMemoryAllocated</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a39680df039504cada271abb5d9e4899a">olmSessions</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a84125cb85744db3979abae4da3dc8892">pickle</a>(const std::string &amp;pickleKey, OlmAccount *acc)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#af8ba7cff11f6191f03cafd6165a88e6e">pickle</a>(const std::string &amp;pickleKey, OlmInboundGroupSession *session)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a9509fa1fe0a4bafe9b7f71643ff2712f">pickle</a>(const std::string &amp;pickleKey, OlmOutboundGroupSession *session)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a0c20c97df0c7806c621b329f102e5975">pickle</a>(const std::string &amp;pickleKey, OlmSession *session)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#aeba3e7caea55f16f85669416daef6729">Signature</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#ac05a5e45616deea6b4f573a0b0570883">signatureLength</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a2d2c0661f747ae25324cdef543dca71f">signatureMemoryAllocated</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#aa646061d451e058b6abf2f668e239e4d">unpickle</a>(const std::string &amp;pickleKey, const std::string &amp;pickleData, OlmAccount *acc)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a5e8d5432106c3e671d04efa6f988f536">unpickle</a>(const std::string &amp;pickleKey, const std::string &amp;pickleData, OlmInboundGroupSession *session)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a6748ed0dba727be369c0d45f84a32ea5">unpickle</a>(const std::string &amp;pickleKey, const std::string &amp;pickleData, OlmOutboundGroupSession *session)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#af2426a3cf09da3b2636e82c1b72e6c59">unpickle</a>(const std::string &amp;pickleKey, const std::string &amp;pickleData, OlmSession *session)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#ad11b6a0848606c7ffead1ef4741772f3">upload</a>(leet::User::CredentialsResponse *resp)</td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a899cc79b680746c8fdfccd374b314d2c">Utility</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a90563302e87f0772f6fc6a59d162630d">utilityMemory</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classleet_1_1olmAccount.html#a98424b565dd41275786a44a487d90394">utilityMemoryAllocated</a></td><td class="entry"><a class="el" href="classleet_1_1olmAccount.html">leet::olmAccount</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

File diff suppressed because it is too large Load diff

BIN
docs/html/closed.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 B

View file

@ -0,0 +1,83 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libleet: /home/speedie/libleet/src -&gt; include Relation</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">libleet<span id="projectnumber">&#160;0.1</span>
</div>
<div id="projectbrief">C++ Matrix client library/SDK</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="contents">
<h3>src &rarr; include Relation</h3><table class="dirtab"><tr class="dirtab"><th class="dirtab">File in src</th><th class="dirtab">Includes file in include</th></tr><tr class="dirtab"><td class="dirtab"><a class="el" href="libleet_8cpp.html">libleet.cpp</a></td><td class="dirtab"><a class="el" href="libleet_8hpp.html">libleet.hpp</a></td></tr></table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show more