This file is indexed.

/usr/share/doc/libratbag-dev/html/libratbag_8h_source.html is in libratbag-doc 0.9-4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
<!-- HTML header for doxygen 1.8.8-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <!-- For Mobile Devices -->
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
        <meta name="generator" content="Doxygen 1.8.13"/>
        <script type="text/javascript" src="file:///usr/share/javascript/jquery/jquery.js"></script>
        <title>libratbag: /build/libratbag-1ltGPZ/libratbag-0.9/src/libratbag.h Source File</title>
        <!--<link href="tabs.css" rel="stylesheet" type="text/css"/>-->
        <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>
        <script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="file:///usr/share/javascript/mathjax/MathJax.js"></script>
        <link href="doxygen.css" rel="stylesheet" type="text/css" />
        <link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
<link href="bootstrap.css" rel="stylesheet" type="text/css"/>
        <link href="bootstrap.css" rel="stylesheet" type="text/css" />
        <script src="file:///usr/share/javascript/bootstrap/js/bootstrap.js"></script>
        <script type="text/javascript" src="doxy-boot.js"></script>
    </head>
    <body>
        <nav class="navbar navbar-default" role="navigation">
            <div class="container">
                <div class="navbar-header">
                    <a class="navbar-brand">libratbag 0.9.0</a>
                </div>
            </div>
        </nav>
        <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
            <div class="content" id="content">
                <div class="container">
                    <div class="row">
                        <div class="col-sm-12 panel panel-default" style="padding-bottom: 15px;">
                            <div style="margin-bottom: 15px;">
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</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">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</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">libratbag.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="libratbag_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> * Copyright © 2015 Red Hat, Inc.</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * Permission is hereby granted, free of charge, to any person obtaining a</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> * copy of this software and associated documentation files (the &quot;Software&quot;),</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> * to deal in the Software without restriction, including without limitation</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> * the rights to use, copy, modify, merge, publish, distribute, sublicense,</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> * and/or sell copies of the Software, and to permit persons to whom the</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> * Software is furnished to do so, subject to the following conditions:</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> * The above copyright notice and this permission notice (including the next</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> * paragraph) shall be included in all copies or substantial portions of the</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> * Software.</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"> * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"> * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment"> * DEALINGS IN THE SOFTWARE.</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &lt;stdarg.h&gt;</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &lt;stdbool.h&gt;</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &lt;libudev.h&gt;</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="libratbag_8h.html#ab2787026c82761eee155214ad8d5e54c">   35</a></span>&#160;<span class="preprocessor">#define LIBRATBAG_ATTRIBUTE_PRINTF(_format, _args) \</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">        __attribute__ ((format (printf, _format, _args)))</span></div><div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="libratbag_8h.html#a87f8b098530f550588a6dc63bffcc68a">   37</a></span>&#160;<span class="preprocessor">#define LIBRATBAG_ATTRIBUTE_DEPRECATED __attribute__ ((deprecated))</span></div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structratbag__device.html">   85</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag.html">ratbag</a>;</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structratbag__profile.html">   94</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__device.html">ratbag_device</a>;</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="structratbag__button.html">  105</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__profile.html">ratbag_profile</a>;</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="structratbag__resolution.html">  116</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__button.html">ratbag_button</a>;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__resolution.html">ratbag_resolution</a>;</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="structratbag__color.html">  138</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__color.html">ratbag_color</a> {</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="structratbag__color.html#a0da0a7e6cc2e4ac994a56b01109aeff8">  139</a></span>&#160;        <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structratbag__color.html#a0da0a7e6cc2e4ac994a56b01109aeff8">red</a>;</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="structratbag__color.html#a533a55f67764eef824454c2651168e4a">  140</a></span>&#160;        <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structratbag__color.html#a533a55f67764eef824454c2651168e4a">green</a>;</div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="structratbag__color.html#ab83a445c8fcb5da4b3a6d30f22973732">  141</a></span>&#160;        <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structratbag__color.html#ab83a445c8fcb5da4b3a6d30f22973732">blue</a>;</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;};</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="structratbag__macro.html">  150</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__led.html">ratbag_led</a>;</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;<span class="keyword">struct </span>ratbag_button_macro;</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;</div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="group__base.html#ga778f6aa9aeee462860007415895baec1">  168</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a> {</div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="group__base.html#gga778f6aa9aeee462860007415895baec1a2e737355144b856d0a872b648a5da140">  169</a></span>&#160;        <a class="code" href="group__base.html#gga778f6aa9aeee462860007415895baec1a2e737355144b856d0a872b648a5da140">RATBAG_SUCCESS</a> = 0,</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="group__base.html#gga778f6aa9aeee462860007415895baec1a6126953b4fc122e5e9e796175597dbc6">  175</a></span>&#160;        <a class="code" href="group__base.html#gga778f6aa9aeee462860007415895baec1a6126953b4fc122e5e9e796175597dbc6">RATBAG_ERROR_DEVICE</a> = -1000,</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="group__base.html#gga778f6aa9aeee462860007415895baec1a53c6de635fca4186074550e8f7bcc008">  181</a></span>&#160;        <a class="code" href="group__base.html#gga778f6aa9aeee462860007415895baec1a53c6de635fca4186074550e8f7bcc008">RATBAG_ERROR_CAPABILITY</a> = -1001,</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="group__base.html#gga778f6aa9aeee462860007415895baec1aa4181dfc60a9fd47d85fcf05cc62e9a2">  187</a></span>&#160;        <a class="code" href="group__base.html#gga778f6aa9aeee462860007415895baec1aa4181dfc60a9fd47d85fcf05cc62e9a2">RATBAG_ERROR_VALUE</a> = -1002,</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div><div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="group__base.html#gga778f6aa9aeee462860007415895baec1aa497fc927ae7b6f4d34ea1097669257d">  195</a></span>&#160;        <a class="code" href="group__base.html#gga778f6aa9aeee462860007415895baec1aa497fc927ae7b6f4d34ea1097669257d">RATBAG_ERROR_SYSTEM</a> = -1003,</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="group__base.html#gga778f6aa9aeee462860007415895baec1a9d0f55d2981272643e23ac2880dbe3da">  203</a></span>&#160;        <a class="code" href="group__base.html#gga778f6aa9aeee462860007415895baec1a9d0f55d2981272643e23ac2880dbe3da">RATBAG_ERROR_IMPLEMENTATION</a> = -1004,</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;};</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="group__base.html#ga23609c083d2bf82a65db8c780fea0125">  211</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga23609c083d2bf82a65db8c780fea0125">ratbag_log_priority</a> {</div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="group__base.html#gga23609c083d2bf82a65db8c780fea0125a663d17fb774c6c86f8234fa8624ff5c6">  216</a></span>&#160;        <a class="code" href="group__base.html#gga23609c083d2bf82a65db8c780fea0125a663d17fb774c6c86f8234fa8624ff5c6">RATBAG_LOG_PRIORITY_RAW</a> = 10,</div><div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="group__base.html#gga23609c083d2bf82a65db8c780fea0125a1ef357dad433d3d5326e6037fcfd3640">  217</a></span>&#160;        <a class="code" href="group__base.html#gga23609c083d2bf82a65db8c780fea0125a1ef357dad433d3d5326e6037fcfd3640">RATBAG_LOG_PRIORITY_DEBUG</a> = 20,</div><div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="group__base.html#gga23609c083d2bf82a65db8c780fea0125a072d5e9b642837eb365a540363e352aa">  218</a></span>&#160;        <a class="code" href="group__base.html#gga23609c083d2bf82a65db8c780fea0125a072d5e9b642837eb365a540363e352aa">RATBAG_LOG_PRIORITY_INFO</a> = 30,</div><div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="group__base.html#gga23609c083d2bf82a65db8c780fea0125ae0116289263b8c2ed01d9b190bea8e2c">  219</a></span>&#160;        <a class="code" href="group__base.html#gga23609c083d2bf82a65db8c780fea0125ae0116289263b8c2ed01d9b190bea8e2c">RATBAG_LOG_PRIORITY_ERROR</a> = 40,</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;};</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="group__base.html#ga8ea38d087793faa644e44d36caf41a04">  236</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="group__base.html#ga8ea38d087793faa644e44d36caf41a04">ratbag_log_handler</a>)(<span class="keyword">struct </span><a class="code" href="structratbag.html">ratbag</a> *<a class="code" href="structratbag.html">ratbag</a>,</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;                                      <span class="keyword">enum</span> <a class="code" href="group__base.html#ga23609c083d2bf82a65db8c780fea0125">ratbag_log_priority</a> priority,</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;                                      <span class="keyword">const</span> <span class="keywordtype">char</span> *format, va_list args)</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;           <a class="code" href="libratbag_8h.html#ab2787026c82761eee155214ad8d5e54c">LIBRATBAG_ATTRIBUTE_PRINTF</a>(3, 0);</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="group__base.html#gaf91249ec430e6f82df68f48b3796f7ae">  257</a></span>&#160;<a class="code" href="group__base.html#gaf91249ec430e6f82df68f48b3796f7ae">ratbag_log_set_priority</a>(<span class="keyword">struct</span> ratbag *ratbag,</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;                        <span class="keyword">enum</span> <a class="code" href="group__base.html#ga23609c083d2bf82a65db8c780fea0125">ratbag_log_priority</a> priority);</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga23609c083d2bf82a65db8c780fea0125">ratbag_log_priority</a></div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<a class="code" href="group__base.html#ga050316341453af027b12f5955fa8ad6a">ratbag_log_get_priority</a>(<span class="keyword">const</span> <span class="keyword">struct</span> ratbag *ratbag);</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;<a class="code" href="group__base.html#gacbfae84a89699399e5ab09633e00d44f">ratbag_log_set_handler</a>(<span class="keyword">struct</span> ratbag *ratbag,</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;                       <a class="code" href="group__base.html#ga8ea38d087793faa644e44d36caf41a04">ratbag_log_handler</a> log_handler);</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="structratbag__interface.html">  307</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__interface.html">ratbag_interface</a> {</div><div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="structratbag__interface.html#a7625875340ab631722a6717a975d02bd">  319</a></span>&#160;        int (*open_restricted)(<span class="keyword">const</span> <span class="keywordtype">char</span> *path, <span class="keywordtype">int</span> flags, <span class="keywordtype">void</span> *user_data);</div><div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="structratbag__interface.html#a5ccac29e0114151d12aba7f4acb82491">  327</a></span>&#160;        void (*close_restricted)(<span class="keywordtype">int</span> fd, <span class="keywordtype">void</span> *user_data);</div><div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;};</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="keyword">struct </span>ratbag *</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<a class="code" href="group__base.html#ga3394131f8d3dda1d29bec9384a9ca903">ratbag_create_context</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__interface.html">ratbag_interface</a> *interface,</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;                         <span class="keywordtype">void</span> *userdata);</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<a class="code" href="group__base.html#ga5d25e0b78d3dd35b051dc42d1bdfa459">ratbag_set_user_data</a>(<span class="keyword">struct</span> ratbag *ratbag, <span class="keywordtype">void</span> *userdata);</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="keywordtype">void</span>*</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<a class="code" href="group__base.html#ga6e7b4b977b8698188646ff9ec9c0c1fc">ratbag_get_user_data</a>(<span class="keyword">const</span> <span class="keyword">struct</span> ratbag *ratbag);</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;<span class="keyword">struct </span>ratbag *</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;<a class="code" href="group__base.html#ga3986d618589de98ea54a60087c349824">ratbag_ref</a>(<span class="keyword">struct</span> ratbag *ratbag);</div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;<span class="keyword">struct </span>ratbag *</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;<a class="code" href="group__base.html#ga554a9d5ef77b8012f6f38e6d82de15bf">ratbag_unref</a>(<span class="keyword">struct</span> ratbag *ratbag);</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;<a class="code" href="group__base.html#ga5ce9f80e3f90800d9260af0834046451">ratbag_device_new_from_udev_device</a>(<span class="keyword">struct</span> ratbag *ratbag,</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;                                   <span class="keyword">struct</span> udev_device *udev_device,</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;                                   <span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> **device);</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__device.html">ratbag_device</a> *</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<a class="code" href="group__device.html#gaaeade1470e390e04848c0fa4f15e4f2b">ratbag_device_ref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device);</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__device.html">ratbag_device</a> *</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;<a class="code" href="group__device.html#gacb6674aea50753e1ce30fb0a2bcf4bc8">ratbag_device_unref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device);</div><div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;<a class="code" href="group__device.html#gaa41c2f2db4ee920548aa4e9a72f86a14">ratbag_device_set_user_data</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device, <span class="keywordtype">void</span> *userdata);</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;<span class="keywordtype">void</span>*</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;<a class="code" href="group__device.html#ga72297497f8c82952604f25b30fc29e83">ratbag_device_get_user_data</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device);</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<a class="code" href="group__device.html#gab463581e68404f6362537b27744fdd04">ratbag_device_get_name</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a>* device);</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<a class="code" href="group__device.html#gab51b2638874739f6be746c2fc14365a5">ratbag_device_get_svg_name</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a>* device);</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;</div><div class="line"><a name="l00491"></a><span class="lineno"><a class="line" href="group__device.html#gadac0b3995c97da4276a6f21ecadecedf">  491</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__device.html#gadac0b3995c97da4276a6f21ecadecedf">ratbag_device_capability</a> {</div><div class="line"><a name="l00492"></a><span class="lineno"><a class="line" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfa5272595d43de2ecb86551be9d20bad6f">  492</a></span>&#160;        <a class="code" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfa5272595d43de2ecb86551be9d20bad6f">RATBAG_DEVICE_CAP_NONE</a> = 0,</div><div class="line"><a name="l00501"></a><span class="lineno"><a class="line" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaf4fbc43472adb35835f5e1d2fed9a05e">  501</a></span>&#160;        <a class="code" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaf4fbc43472adb35835f5e1d2fed9a05e">RATBAG_DEVICE_CAP_SWITCHABLE_RESOLUTION</a>,</div><div class="line"><a name="l00509"></a><span class="lineno"><a class="line" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfa610acfcea4d029aac89b10a73ddaf7dc">  509</a></span>&#160;        <a class="code" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfa610acfcea4d029aac89b10a73ddaf7dc">RATBAG_DEVICE_CAP_SWITCHABLE_PROFILE</a>,</div><div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;</div><div class="line"><a name="l00515"></a><span class="lineno"><a class="line" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfa950d081db409d31604b86d0a0087fb45">  515</a></span>&#160;        <a class="code" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfa950d081db409d31604b86d0a0087fb45">RATBAG_DEVICE_CAP_BUTTON_KEY</a>,</div><div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno"><a class="line" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaa0d892a820b48517c4ea83018ab48eda">  520</a></span>&#160;        <a class="code" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaa0d892a820b48517c4ea83018ab48eda">RATBAG_DEVICE_CAP_LED</a>,</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;</div><div class="line"><a name="l00525"></a><span class="lineno"><a class="line" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfac6de8a11a57ee4971be159e511c0065e">  525</a></span>&#160;        <a class="code" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfac6de8a11a57ee4971be159e511c0065e">RATBAG_DEVICE_CAP_BUTTON_MACROS</a>,</div><div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;</div><div class="line"><a name="l00533"></a><span class="lineno"><a class="line" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaf70724e79aec52503a32566d4f7bbb32">  533</a></span>&#160;        <a class="code" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaf70724e79aec52503a32566d4f7bbb32">RATBAG_DEVICE_CAP_DEFAULT_PROFILE</a>,</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;</div><div class="line"><a name="l00550"></a><span class="lineno"><a class="line" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfacee7c64e3ea8797c2462c72001afe619">  550</a></span>&#160;        <a class="code" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfacee7c64e3ea8797c2462c72001afe619">RATBAG_DEVICE_CAP_QUERY_CONFIGURATION</a>,</div><div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;</div><div class="line"><a name="l00559"></a><span class="lineno"><a class="line" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaca1ffce8a02c08124ed78ac5192869a8">  559</a></span>&#160;        <a class="code" href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaca1ffce8a02c08124ed78ac5192869a8">RATBAG_DEVICE_CAP_DISABLE_PROFILE</a>,</div><div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;};</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<a class="code" href="group__device.html#ga234f5713cd4db3dc7c100461bfabe269">ratbag_device_has_capability</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device,</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;                             <span class="keyword">enum</span> <a class="code" href="group__device.html#gadac0b3995c97da4276a6f21ecadecedf">ratbag_device_capability</a> cap);</div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;</div><div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;<a class="code" href="group__device.html#ga7ba9d519de19961846cccd63e632a2f2">ratbag_device_commit</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device);</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;</div><div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span></div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;<a class="code" href="group__device.html#ga45a7982c317f4a7ece37b42d6dcbb4c1">ratbag_device_get_num_profiles</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device);</div><div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;</div><div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span></div><div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;<a class="code" href="group__device.html#ga3b04791bc03f4f5ea6691ca346cf8c18">ratbag_device_get_num_buttons</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device);</div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span></div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;<a class="code" href="group__device.html#ga5ef8f8c5e8c45ca7660fb2c9b7586f52">ratbag_device_get_num_leds</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device);</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;</div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__profile.html">ratbag_profile</a> *</div><div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;<a class="code" href="group__profile.html#gaafa8356d4af464a063c72daf7ab3da8f">ratbag_profile_ref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile);</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;</div><div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__profile.html">ratbag_profile</a> *</div><div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;<a class="code" href="group__profile.html#gab5f9d8032769e9f84e78f8e02187eb91">ratbag_profile_unref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile);</div><div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;</div><div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;<a class="code" href="group__profile.html#gaf11661959bbc73dace4da8591e719e98">ratbag_profile_set_enabled</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile, <span class="keywordtype">bool</span> enabled);</div><div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;<span class="keywordtype">bool</span></div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;<a class="code" href="group__profile.html#ga88aab098ab4ebef59dd1200cfeb66f1b">ratbag_profile_is_enabled</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile);</div><div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;</div><div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;<a class="code" href="group__profile.html#gaebf3e26861590805407cc52fac30dfb2">ratbag_profile_set_user_data</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile, <span class="keywordtype">void</span> *userdata);</div><div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;</div><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;<span class="keywordtype">void</span>*</div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;<a class="code" href="group__profile.html#ga1a606957ee177707273f168a892f9ae5">ratbag_profile_get_user_data</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile);</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;</div><div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__profile.html">ratbag_profile</a> *</div><div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;<a class="code" href="group__profile.html#ga7678b274a5307f764fe829849c313088">ratbag_device_get_profile</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__device.html">ratbag_device</a> *device, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index);</div><div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;</div><div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;<a class="code" href="group__profile.html#ga2ed8ff2c772f5f6a4165e30533fc5628">ratbag_profile_is_active</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile);</div><div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;</div><div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;<a class="code" href="group__profile.html#ga87f321a303c031292c5850e77f2c3194">ratbag_profile_set_active</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile);</div><div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;</div><div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span></div><div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;<a class="code" href="group__profile.html#ga27de2026ec173d33da48f8635ebd65cb">ratbag_profile_get_num_resolutions</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile);</div><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;</div><div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *</div><div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;<a class="code" href="group__profile.html#ga952c361c0c853e7a3b6669dc1f4fedb5">ratbag_profile_get_resolution</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> idx);</div><div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;</div><div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *</div><div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;<a class="code" href="group__resolution.html#ga0718f2922e37ed10704fad2d2aeefece">ratbag_resolution_ref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;</div><div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *</div><div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;<a class="code" href="group__resolution.html#ga3b207a0de53cd01460af70494b7493b6">ratbag_resolution_unref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;</div><div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;<a class="code" href="group__resolution.html#gac0d204063f6e14dbf1cac1348bea14e5">ratbag_resolution_set_user_data</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution, <span class="keywordtype">void</span> *userdata);</div><div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;</div><div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;<span class="keywordtype">void</span>*</div><div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;<a class="code" href="group__resolution.html#gac0687e5dd24d1842cc9450db536f82c4">ratbag_resolution_get_user_data</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;</div><div class="line"><a name="l00850"></a><span class="lineno"><a class="line" href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3">  850</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3">ratbag_resolution_capability</a> {</div><div class="line"><a name="l00856"></a><span class="lineno"><a class="line" href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3a7ba0b0c4048bd5315f4eda12a4cd4342">  856</a></span>&#160;        <a class="code" href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3a7ba0b0c4048bd5315f4eda12a4cd4342">RATBAG_RESOLUTION_CAP_INDIVIDUAL_REPORT_RATE</a> = 1,</div><div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;</div><div class="line"><a name="l00861"></a><span class="lineno"><a class="line" href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3a99ee14f4fe1f3a571316e1c8c3068ed6">  861</a></span>&#160;        <a class="code" href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3a99ee14f4fe1f3a571316e1c8c3068ed6">RATBAG_RESOLUTION_CAP_SEPARATE_XY_RESOLUTION</a>,</div><div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;};</div><div class="line"><a name="l00863"></a><span class="lineno">  863</span>&#160;</div><div class="line"><a name="l00871"></a><span class="lineno">  871</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l00872"></a><span class="lineno">  872</span>&#160;<a class="code" href="group__resolution.html#ga45c509541bacca70c1cf1a5726a3d7d2">ratbag_resolution_has_capability</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution,</div><div class="line"><a name="l00873"></a><span class="lineno">  873</span>&#160;                                 <span class="keyword">enum</span> <a class="code" href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3">ratbag_resolution_capability</a> cap);</div><div class="line"><a name="l00874"></a><span class="lineno">  874</span>&#160;</div><div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;<a class="code" href="group__resolution.html#gac77329eb260520654e5a12b3bed9fe75">ratbag_resolution_set_dpi</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution,</div><div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;                          <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> dpi);</div><div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;</div><div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160;<a class="code" href="group__resolution.html#ga66b841bb901766ca23dad631d2a0d7a4">ratbag_resolution_set_dpi_xy</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution,</div><div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;                             <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> x, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> y);</div><div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160;</div><div class="line"><a name="l00937"></a><span class="lineno">  937</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l00938"></a><span class="lineno">  938</span>&#160;<a class="code" href="group__resolution.html#gae26eaf50161f9f3d83b4c93c7f9ef49f">ratbag_resolution_get_dpi</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l00939"></a><span class="lineno">  939</span>&#160;</div><div class="line"><a name="l00954"></a><span class="lineno">  954</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l00955"></a><span class="lineno">  955</span>&#160;<a class="code" href="group__resolution.html#gace364969e6ad48504f23869ab0e7751d">ratbag_resolution_get_dpi_x</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;</div><div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;<a class="code" href="group__resolution.html#ga8d3a916a9e79b92f271bb4a1758e74d7">ratbag_resolution_get_dpi_y</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;</div><div class="line"><a name="l00994"></a><span class="lineno">  994</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l00995"></a><span class="lineno">  995</span>&#160;<a class="code" href="group__resolution.html#gac1f8e59e543527306649fec849066d11">ratbag_resolution_set_report_rate</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution,</div><div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;                                  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> hz);</div><div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;<a class="code" href="group__resolution.html#gabb45f662b634e7452852d835179109d3">ratbag_resolution_get_report_rate</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160;<a class="code" href="group__resolution.html#ga398d09762ac2e7bd2b8f29770f1b3ae7">ratbag_resolution_set_active</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160;<a class="code" href="group__resolution.html#gacdef33344806b7bf188ac4c62ad576d2">ratbag_resolution_is_active</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;<a class="code" href="group__resolution.html#ga26c8a1ed15dd7f8df86ce71427cd151f">ratbag_resolution_set_default</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;<a class="code" href="group__resolution.html#gadf53fe8bfc5fd3272073d11e90a125c8">ratbag_resolution_is_default</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__resolution.html">ratbag_resolution</a> *resolution);</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__button.html">ratbag_button</a>*</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;<a class="code" href="group__profile.html#ga64451f65602cdf5805792c1ab9e3182f">ratbag_profile_get_button</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index);</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;<a class="code" href="group__button.html#ga332d7dde5121d3b34b1af6371c375c75">ratbag_button_set_user_data</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button, <span class="keywordtype">void</span> *userdata);</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;<span class="keywordtype">void</span>*</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;<a class="code" href="group__button.html#ga57b7c5582b9a92c08cc70dffa7bbf3c9">ratbag_button_get_user_data</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button);</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;</div><div class="line"><a name="l01131"></a><span class="lineno"><a class="line" href="group__button.html#gafcdd5e2cf88f351085b341ffbb909fd2"> 1131</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__button.html#gafcdd5e2cf88f351085b341ffbb909fd2">ratbag_button_type</a> {</div><div class="line"><a name="l01132"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a7bca635d9025f6900dba449bccda3d3d"> 1132</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a7bca635d9025f6900dba449bccda3d3d">RATBAG_BUTTON_TYPE_UNKNOWN</a> = 0,</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;        <span class="comment">/* mouse buttons */</span></div><div class="line"><a name="l01135"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a8042afc70b84fdf7d7d21b7d949d4b9c"> 1135</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a8042afc70b84fdf7d7d21b7d949d4b9c">RATBAG_BUTTON_TYPE_LEFT</a>,</div><div class="line"><a name="l01136"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ad3a2abf81fcfd49b56134102a2653676"> 1136</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ad3a2abf81fcfd49b56134102a2653676">RATBAG_BUTTON_TYPE_MIDDLE</a>,</div><div class="line"><a name="l01137"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a8de7a91e89376d03ac5f0851fab70600"> 1137</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a8de7a91e89376d03ac5f0851fab70600">RATBAG_BUTTON_TYPE_RIGHT</a>,</div><div class="line"><a name="l01138"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a77288824bca980d8880e2317963176ab"> 1138</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a77288824bca980d8880e2317963176ab">RATBAG_BUTTON_TYPE_THUMB</a>,</div><div class="line"><a name="l01139"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aa878e5948b2b12d13a91f08f309cf1cb"> 1139</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aa878e5948b2b12d13a91f08f309cf1cb">RATBAG_BUTTON_TYPE_THUMB2</a>,</div><div class="line"><a name="l01140"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ac8ab5c27c077f614f4e3e7016425239b"> 1140</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ac8ab5c27c077f614f4e3e7016425239b">RATBAG_BUTTON_TYPE_THUMB3</a>,</div><div class="line"><a name="l01141"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aedd64f753389d04fe881c8841fb45971"> 1141</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aedd64f753389d04fe881c8841fb45971">RATBAG_BUTTON_TYPE_THUMB4</a>,</div><div class="line"><a name="l01142"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a4e7833dbcc430912bdbbbf04e6625662"> 1142</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a4e7833dbcc430912bdbbbf04e6625662">RATBAG_BUTTON_TYPE_WHEEL_LEFT</a>,</div><div class="line"><a name="l01143"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2abe71df878436dd40e96945b449f67f21"> 1143</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2abe71df878436dd40e96945b449f67f21">RATBAG_BUTTON_TYPE_WHEEL_RIGHT</a>,</div><div class="line"><a name="l01144"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ae97892b752aabd9811af1030bb91a995"> 1144</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ae97892b752aabd9811af1030bb91a995">RATBAG_BUTTON_TYPE_WHEEL_CLICK</a>,</div><div class="line"><a name="l01145"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a3f34fbc88fcda99c49ab9b93bff1def0"> 1145</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a3f34fbc88fcda99c49ab9b93bff1def0">RATBAG_BUTTON_TYPE_WHEEL_UP</a>,</div><div class="line"><a name="l01146"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a6e403e17fb115525dba21cf59f2d1607"> 1146</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a6e403e17fb115525dba21cf59f2d1607">RATBAG_BUTTON_TYPE_WHEEL_DOWN</a>,</div><div class="line"><a name="l01150"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a09d8e95699fa185af5a1aec61fa18b94"> 1150</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a09d8e95699fa185af5a1aec61fa18b94">RATBAG_BUTTON_TYPE_WHEEL_RATCHET_MODE_SHIFT</a>,</div><div class="line"><a name="l01151"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a822f6cc8b0ecbb3ae0c00ef83287a64a"> 1151</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a822f6cc8b0ecbb3ae0c00ef83287a64a">RATBAG_BUTTON_TYPE_EXTRA</a>,</div><div class="line"><a name="l01152"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a16e45fc796c4f3f398678b6d2b5fb5a3"> 1152</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a16e45fc796c4f3f398678b6d2b5fb5a3">RATBAG_BUTTON_TYPE_SIDE</a>,</div><div class="line"><a name="l01153"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ac259042c3f1e3706c03f2313d7707922"> 1153</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ac259042c3f1e3706c03f2313d7707922">RATBAG_BUTTON_TYPE_PINKIE</a>,</div><div class="line"><a name="l01154"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ad47127aaee5e28f4644556f72d60d6fa"> 1154</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ad47127aaee5e28f4644556f72d60d6fa">RATBAG_BUTTON_TYPE_PINKIE2</a>,</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;        <span class="comment">/* DPI switch */</span></div><div class="line"><a name="l01157"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a5a59741e9f83d956b2ed3f4a2c572dd2"> 1157</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a5a59741e9f83d956b2ed3f4a2c572dd2">RATBAG_BUTTON_TYPE_RESOLUTION_CYCLE_UP</a>,</div><div class="line"><a name="l01158"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a41a171b1c2ccdf23f683dedd01eb9bab"> 1158</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a41a171b1c2ccdf23f683dedd01eb9bab">RATBAG_BUTTON_TYPE_RESOLUTION_UP</a>,</div><div class="line"><a name="l01159"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a8174ea6fac3d7276678f878871302833"> 1159</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a8174ea6fac3d7276678f878871302833">RATBAG_BUTTON_TYPE_RESOLUTION_DOWN</a>,</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;        <span class="comment">/* Profile */</span></div><div class="line"><a name="l01162"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aa3a4a64a92a0ab82e6e38a782ce07dbb"> 1162</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aa3a4a64a92a0ab82e6e38a782ce07dbb">RATBAG_BUTTON_TYPE_PROFILE_CYCLE_UP</a>,</div><div class="line"><a name="l01163"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a49c607b930139e78180fcb89e6910844"> 1163</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a49c607b930139e78180fcb89e6910844">RATBAG_BUTTON_TYPE_PROFILE_UP</a>,</div><div class="line"><a name="l01164"></a><span class="lineno"><a class="line" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aac44c2a2f7c31266a8ffbe566efcc8b4"> 1164</a></span>&#160;        <a class="code" href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aac44c2a2f7c31266a8ffbe566efcc8b4">RATBAG_BUTTON_TYPE_PROFILE_DOWN</a>,</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;};</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__button.html#gafcdd5e2cf88f351085b341ffbb909fd2">ratbag_button_type</a></div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160;<a class="code" href="group__button.html#gae25844ee57fc9ca22a9b33427ad066fb">ratbag_button_get_type</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button);</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160;</div><div class="line"><a name="l01191"></a><span class="lineno"><a class="line" href="group__button.html#ga9f5b77ec6305b4371baea749105bec13"> 1191</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__button.html#ga9f5b77ec6305b4371baea749105bec13">ratbag_button_action_type</a> {</div><div class="line"><a name="l01195"></a><span class="lineno"><a class="line" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13aa086780609b50d838da775d6edcb8720"> 1195</a></span>&#160;        <a class="code" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13aa086780609b50d838da775d6edcb8720">RATBAG_BUTTON_ACTION_TYPE_UNKNOWN</a> = -1,</div><div class="line"><a name="l01199"></a><span class="lineno"><a class="line" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13af50bfdfab7f8cf69e06349f40aec9586"> 1199</a></span>&#160;        <a class="code" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13af50bfdfab7f8cf69e06349f40aec9586">RATBAG_BUTTON_ACTION_TYPE_NONE</a> = 0,</div><div class="line"><a name="l01203"></a><span class="lineno"><a class="line" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13ab08c3d054f1d6e7ecc4fdb9b9b20484a"> 1203</a></span>&#160;        <a class="code" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13ab08c3d054f1d6e7ecc4fdb9b9b20484a">RATBAG_BUTTON_ACTION_TYPE_BUTTON</a>,</div><div class="line"><a name="l01208"></a><span class="lineno"><a class="line" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13ab969f0ad28a4e285454c3dd95414e02c"> 1208</a></span>&#160;        <a class="code" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13ab969f0ad28a4e285454c3dd95414e02c">RATBAG_BUTTON_ACTION_TYPE_SPECIAL</a>,</div><div class="line"><a name="l01212"></a><span class="lineno"><a class="line" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13ae6a8937936a354d2536c55474591b90d"> 1212</a></span>&#160;        <a class="code" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13ae6a8937936a354d2536c55474591b90d">RATBAG_BUTTON_ACTION_TYPE_KEY</a>,</div><div class="line"><a name="l01216"></a><span class="lineno"><a class="line" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13a89b777e45740ba18398c528d85351352"> 1216</a></span>&#160;        <a class="code" href="group__button.html#gga9f5b77ec6305b4371baea749105bec13a89b777e45740ba18398c528d85351352">RATBAG_BUTTON_ACTION_TYPE_MACRO</a>,</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;};</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__button.html#ga9f5b77ec6305b4371baea749105bec13">ratbag_button_action_type</a></div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160;<a class="code" href="group__button.html#gabde4d3cbf659daec6309da81640463f4">ratbag_button_get_action_type</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button);</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160;</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160;<a class="code" href="group__button.html#ga1a3d6e7b1708d11912acab9732b2f91e">ratbag_button_has_action_type</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button,</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;                              <span class="keyword">enum</span> <a class="code" href="group__button.html#ga9f5b77ec6305b4371baea749105bec13">ratbag_button_action_type</a> action_type);</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160;</div><div class="line"><a name="l01251"></a><span class="lineno"><a class="line" href="group__button.html#ga8158a0f03a168268ec347f0a96699473"> 1251</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__button.html#ga8158a0f03a168268ec347f0a96699473">ratbag_button_action_special</a> {</div><div class="line"><a name="l01255"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473aec5fadf1f36a4ded8ecca313391108be"> 1255</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473aec5fadf1f36a4ded8ecca313391108be">RATBAG_BUTTON_ACTION_SPECIAL_INVALID</a> = -1,</div><div class="line"><a name="l01256"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473ab2d432e782ef10e3989acdbfc1eec1e1"> 1256</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473ab2d432e782ef10e3989acdbfc1eec1e1">RATBAG_BUTTON_ACTION_SPECIAL_UNKNOWN</a> = (1 &lt;&lt; 30),</div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160;</div><div class="line"><a name="l01258"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a8f35e47cdafb09262bab48e3eb6f0b5c"> 1258</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a8f35e47cdafb09262bab48e3eb6f0b5c">RATBAG_BUTTON_ACTION_SPECIAL_DOUBLECLICK</a>,</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160;</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160;        <span class="comment">/* Wheel mappings */</span></div><div class="line"><a name="l01261"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a3da43a68518921c1617be68c953d0c9f"> 1261</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a3da43a68518921c1617be68c953d0c9f">RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_LEFT</a>,</div><div class="line"><a name="l01262"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a18c8de16a7aefa0e943be16b241909dc"> 1262</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a18c8de16a7aefa0e943be16b241909dc">RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_RIGHT</a>,</div><div class="line"><a name="l01263"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a3b30fce388bb591483da08ac2042f122"> 1263</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a3b30fce388bb591483da08ac2042f122">RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_UP</a>,</div><div class="line"><a name="l01264"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a0d0db353fdff8f2aaad5ca1e21c4b8c8"> 1264</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a0d0db353fdff8f2aaad5ca1e21c4b8c8">RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_DOWN</a>,</div><div class="line"><a name="l01265"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473ab74802c2069025c7b76431538a9a51ea"> 1265</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473ab74802c2069025c7b76431538a9a51ea">RATBAG_BUTTON_ACTION_SPECIAL_RATCHET_MODE_SWITCH</a>,</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160;        <span class="comment">/* DPI switch */</span></div><div class="line"><a name="l01268"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a992cf85a6d69128e42b2038ffe006740"> 1268</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a992cf85a6d69128e42b2038ffe006740">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_CYCLE_UP</a>,</div><div class="line"><a name="l01269"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a22e1732b745a0a6de04fac2c65484a72"> 1269</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a22e1732b745a0a6de04fac2c65484a72">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_CYCLE_DOWN</a>,</div><div class="line"><a name="l01270"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473af61126c18363c2aa63cc626f94ec10f1"> 1270</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473af61126c18363c2aa63cc626f94ec10f1">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_UP</a>,</div><div class="line"><a name="l01271"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a9ac6b495a4398b5d762e8241742562c9"> 1271</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a9ac6b495a4398b5d762e8241742562c9">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_DOWN</a>,</div><div class="line"><a name="l01272"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a36b89d5d86f8952b22070f53bca4bf25"> 1272</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a36b89d5d86f8952b22070f53bca4bf25">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_ALTERNATE</a>,</div><div class="line"><a name="l01273"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473af35a8207085784f0c199ce7c246a7269"> 1273</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473af35a8207085784f0c199ce7c246a7269">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_DEFAULT</a>,</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160;</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160;        <span class="comment">/* Profile */</span></div><div class="line"><a name="l01276"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a4eec5bccff9914efde9e020f195e482f"> 1276</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a4eec5bccff9914efde9e020f195e482f">RATBAG_BUTTON_ACTION_SPECIAL_PROFILE_CYCLE_UP</a>,</div><div class="line"><a name="l01277"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a41d19cc4ffbc0817965b67f44e120c16"> 1277</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a41d19cc4ffbc0817965b67f44e120c16">RATBAG_BUTTON_ACTION_SPECIAL_PROFILE_CYCLE_DOWN</a>,</div><div class="line"><a name="l01278"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473ae20a7f522c04f61aaa8c8f465d18aa01"> 1278</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473ae20a7f522c04f61aaa8c8f465d18aa01">RATBAG_BUTTON_ACTION_SPECIAL_PROFILE_UP</a>,</div><div class="line"><a name="l01279"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a1582729ba01270530482fb312fd26650"> 1279</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a1582729ba01270530482fb312fd26650">RATBAG_BUTTON_ACTION_SPECIAL_PROFILE_DOWN</a>,</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160;</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160;        <span class="comment">/* second mode for buttons */</span></div><div class="line"><a name="l01282"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a46369e1a68c1516b94d4370a3bfa3d4d"> 1282</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a46369e1a68c1516b94d4370a3bfa3d4d">RATBAG_BUTTON_ACTION_SPECIAL_SECOND_MODE</a>,</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160;</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160;        <span class="comment">/* battery level */</span></div><div class="line"><a name="l01285"></a><span class="lineno"><a class="line" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a6eb414e7c080a5aee427dee1b7b65689"> 1285</a></span>&#160;        <a class="code" href="group__button.html#gga8158a0f03a168268ec347f0a96699473a6eb414e7c080a5aee427dee1b7b65689">RATBAG_BUTTON_ACTION_SPECIAL_BATTERY_LEVEL</a>,</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160;</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160;};</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span></div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160;<a class="code" href="group__button.html#ga1d8d788732b2ffb5c328c27b6bf32ab9">ratbag_button_get_button</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button);</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160;</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160;<a class="code" href="group__button.html#ga30d5f9eb5b66d54686aa0f303cd45bc0">ratbag_button_set_button</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button,</div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160;                         <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> btn);</div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160;</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__button.html#ga8158a0f03a168268ec347f0a96699473">ratbag_button_action_special</a></div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160;<a class="code" href="group__button.html#gaf0f65eefca1a380075718a96535cb6ef">ratbag_button_get_special</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button);</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160;</div><div class="line"><a name="l01354"></a><span class="lineno"><a class="line" href="group__led.html#gad1be32cfd9fa5b3a423211f11bed67d1"> 1354</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__led.html#gad1be32cfd9fa5b3a423211f11bed67d1">ratbag_led_mode</a> {</div><div class="line"><a name="l01355"></a><span class="lineno"><a class="line" href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a3a0c208dc717aa497be7ce44f1d4140f"> 1355</a></span>&#160;        <a class="code" href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a3a0c208dc717aa497be7ce44f1d4140f">RATBAG_LED_OFF</a> = 0,</div><div class="line"><a name="l01356"></a><span class="lineno"><a class="line" href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a4ad514c9f66e6de6261b849f2c7bc47f"> 1356</a></span>&#160;        <a class="code" href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a4ad514c9f66e6de6261b849f2c7bc47f">RATBAG_LED_ON</a>,</div><div class="line"><a name="l01357"></a><span class="lineno"><a class="line" href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a1118650e587ec5fac6ae4969b318e640"> 1357</a></span>&#160;        <a class="code" href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a1118650e587ec5fac6ae4969b318e640">RATBAG_LED_CYCLE</a>,</div><div class="line"><a name="l01358"></a><span class="lineno"><a class="line" href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a77a9df31393082ff27cee3361551c26f"> 1358</a></span>&#160;        <a class="code" href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a77a9df31393082ff27cee3361551c26f">RATBAG_LED_BREATHING</a>,</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160;};</div><div class="line"><a name="l01365"></a><span class="lineno"><a class="line" href="group__led.html#gade0742d37e151927d6bc08e37e83c930"> 1365</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__led.html#gade0742d37e151927d6bc08e37e83c930">ratbag_led_type</a> {</div><div class="line"><a name="l01366"></a><span class="lineno"><a class="line" href="group__led.html#ggade0742d37e151927d6bc08e37e83c930a6c7e99efb36224e445649010040e6125"> 1366</a></span>&#160;        <a class="code" href="group__led.html#ggade0742d37e151927d6bc08e37e83c930a6c7e99efb36224e445649010040e6125">RATBAG_LED_TYPE_UNKNOWN</a> = -1,</div><div class="line"><a name="l01367"></a><span class="lineno"><a class="line" href="group__led.html#ggade0742d37e151927d6bc08e37e83c930a8d0984c0f2f5e21fa7a85adca3cf6ace"> 1367</a></span>&#160;        <a class="code" href="group__led.html#ggade0742d37e151927d6bc08e37e83c930a8d0984c0f2f5e21fa7a85adca3cf6ace">RATBAG_LED_TYPE_LOGO</a> = 0,</div><div class="line"><a name="l01368"></a><span class="lineno"><a class="line" href="group__led.html#ggade0742d37e151927d6bc08e37e83c930a87600e3a9f3349f9c27497ded26ca170"> 1368</a></span>&#160;        <a class="code" href="group__led.html#ggade0742d37e151927d6bc08e37e83c930a87600e3a9f3349f9c27497ded26ca170">RATBAG_LED_TYPE_SIDE</a></div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160;};</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160;</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__led.html">ratbag_led</a> *</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160;<a class="code" href="group__led.html#ga539a6d3e5721132efe001f8b6f18b801">ratbag_profile_get_led</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__profile.html">ratbag_profile</a> *profile, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index);</div><div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__led.html#gade0742d37e151927d6bc08e37e83c930">ratbag_led_type</a></div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160;<a class="code" href="group__led.html#ga9836b757484e40d589bb83fe3e258a03">ratbag_led_get_type</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led);</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__led.html#gad1be32cfd9fa5b3a423211f11bed67d1">ratbag_led_mode</a></div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160;<a class="code" href="group__led.html#ga38a9ce74dd1befaf1d89d8d367e7a4e3">ratbag_led_get_mode</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led);</div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__color.html">ratbag_color</a></div><div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160;<a class="code" href="group__led.html#gaec2018afcd26bb31ca12ac9e8f995d47">ratbag_led_get_color</a>(struct <a class="code" href="structratbag__led.html">ratbag_led</a> *led);</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160;<a class="code" href="group__led.html#gaa8c8047c8ad6b476dc25ed24d4e50e89">ratbag_led_get_effect_rate</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led);</div><div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span></div><div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160;<a class="code" href="group__led.html#gaf0ab94fd921904e83758dc6c0c60d94d">ratbag_led_get_brightness</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led);</div><div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160;</div><div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;<a class="code" href="group__led.html#gac1a6918e0c7d94e5e2166d73ba8dfa5b">ratbag_led_set_mode</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led, <span class="keyword">enum</span> <a class="code" href="group__led.html#gad1be32cfd9fa5b3a423211f11bed67d1">ratbag_led_mode</a> mode);</div><div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160;</div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160;<a class="code" href="group__led.html#gaed6c3fd08b50338c852f9e2271bdf19d">ratbag_led_set_color</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led, <span class="keyword">struct</span> <a class="code" href="structratbag__color.html">ratbag_color</a> color);</div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160;</div><div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160;<a class="code" href="group__led.html#ga5c0777440a1b33e864f6513ea8ddbb2e">ratbag_led_set_effect_rate</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> rate);</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160;</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160;<a class="code" href="group__led.html#ga1b4f360abe5a0617b26dd47d22a582f9">ratbag_led_set_brightness</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> brightness);</div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160;</div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160;<a class="code" href="group__button.html#ga2651e1b9603d22e7cf003a0ef9273a97">ratbag_button_set_special</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button,</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160;                          <span class="keyword">enum</span> <a class="code" href="group__button.html#ga8158a0f03a168268ec347f0a96699473">ratbag_button_action_special</a> action);</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160;</div><div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span></div><div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>&#160;<a class="code" href="group__button.html#gacd6cb74791510fff4b81cdc4ec05dccb">ratbag_button_get_key</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button,</div><div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160;                      <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *modifiers,</div><div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160;                      <span class="keywordtype">size_t</span> *sz);</div><div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160;</div><div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160;<a class="code" href="group__button.html#ga7c23b964b5d0a4296af343786c128033">ratbag_button_set_key</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button,</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160;                      <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> key,</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160;                      <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *modifiers,</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;                      <span class="keywordtype">size_t</span> sz);</div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160;</div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160;<a class="code" href="group__button.html#ga7a68272f2ee379d44e1c96ae1096481f">ratbag_button_disable</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button);</div><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160;</div><div class="line"><a name="l01587"></a><span class="lineno"><a class="line" href="group__button.html#ga212d6f42b701a7795c73a5a1caba02fb"> 1587</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="group__button.html#ga212d6f42b701a7795c73a5a1caba02fb">ratbag_macro_event_type</a> {</div><div class="line"><a name="l01588"></a><span class="lineno"><a class="line" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fba1f860412a64de869a0a45d65cb009edf"> 1588</a></span>&#160;        <a class="code" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fba1f860412a64de869a0a45d65cb009edf">RATBAG_MACRO_EVENT_INVALID</a> = -1,</div><div class="line"><a name="l01589"></a><span class="lineno"><a class="line" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fba20c83bbdb34b15f779df6fd2f2055744"> 1589</a></span>&#160;        <a class="code" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fba20c83bbdb34b15f779df6fd2f2055744">RATBAG_MACRO_EVENT_NONE</a> = 0,</div><div class="line"><a name="l01590"></a><span class="lineno"><a class="line" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fbae037921092a1d9a7cb2e2cea7edd4195"> 1590</a></span>&#160;        <a class="code" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fbae037921092a1d9a7cb2e2cea7edd4195">RATBAG_MACRO_EVENT_KEY_PRESSED</a>,</div><div class="line"><a name="l01591"></a><span class="lineno"><a class="line" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fbaa48c811d550da53cf698132131fe1d51"> 1591</a></span>&#160;        <a class="code" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fbaa48c811d550da53cf698132131fe1d51">RATBAG_MACRO_EVENT_KEY_RELEASED</a>,</div><div class="line"><a name="l01592"></a><span class="lineno"><a class="line" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fbaf9b44f200255f432b9cbb9d261fc8a22"> 1592</a></span>&#160;        <a class="code" href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fbaf9b44f200255f432b9cbb9d261fc8a22">RATBAG_MACRO_EVENT_WAIT</a>,</div><div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>&#160;};</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160;</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *</div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160;<a class="code" href="group__button.html#gadad04a96fcf421dea448c9dea95b1a39">ratbag_button_macro_get_name</a>(<span class="keyword">struct</span> ratbag_button_macro *macro);</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;</div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span></div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160;<a class="code" href="group__button.html#gaccdc81330ea5eae6204a670865769e65">ratbag_button_macro_get_num_events</a>(<span class="keyword">struct</span> ratbag_button_macro *macro);</div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160;</div><div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__button.html#ga212d6f42b701a7795c73a5a1caba02fb">ratbag_macro_event_type</a></div><div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>&#160;<a class="code" href="group__button.html#ga1bd7c610e5dfc0d9316be2c9f73e891f">ratbag_button_macro_get_event_type</a>(<span class="keyword">struct</span> ratbag_button_macro *macro,</div><div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>&#160;                                   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index);</div><div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>&#160;</div><div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160;<a class="code" href="group__button.html#gaa4f923df7f8228334ca202a404df7af3">ratbag_button_macro_get_event_key</a>(<span class="keyword">struct</span> ratbag_button_macro*macro,</div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160;                                  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index);</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160;</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160;<span class="keywordtype">int</span></div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>&#160;<a class="code" href="group__button.html#ga59bf9309c5c5566c970e24f5e8b00aaa">ratbag_button_macro_get_event_timeout</a>(<span class="keyword">struct</span> ratbag_button_macro *macro,</div><div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>&#160;                                      <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index);</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160;</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160;<a class="code" href="group__button.html#gab0171d0aa19b40efc480890440baed39">ratbag_button_set_macro</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button,</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160;                        <span class="keyword">const</span> <span class="keyword">struct</span> ratbag_button_macro *macro);</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160;</div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160;<span class="keyword">struct </span>ratbag_button_macro *</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160;<a class="code" href="group__button.html#ga4b3efb01e2183e55e6589bc6d1486be9">ratbag_button_macro_new</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160;</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160;<span class="keyword">struct </span>ratbag_button_macro *</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160;<a class="code" href="group__button.html#ga7ac445a5532b67ab03f8447a41881faf">ratbag_button_get_macro</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button);</div><div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>&#160;</div><div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160;<span class="keyword">enum</span> <a class="code" href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>&#160;<a class="code" href="group__button.html#ga8f7b7270177e9da69b9fdf8d72034f4a">ratbag_button_macro_set_event</a>(<span class="keyword">struct</span> ratbag_button_macro *macro,</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160;                              <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index,</div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160;                              <span class="keyword">enum</span> <a class="code" href="group__button.html#ga212d6f42b701a7795c73a5a1caba02fb">ratbag_macro_event_type</a> type,</div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160;                              <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> data);</div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160;</div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160;<span class="keyword">struct </span>ratbag_button_macro *</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160;<a class="code" href="group__button.html#ga6937bdc91d208ac46b91966c34205879">ratbag_button_macro_ref</a>(<span class="keyword">struct</span> ratbag_button_macro *macro);</div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160;</div><div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>&#160;<span class="keyword">struct </span>ratbag_button_macro *</div><div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>&#160;<a class="code" href="group__button.html#gaf57897e6fc96fc6ff321c244b501f752">ratbag_button_macro_unref</a>(<span class="keyword">struct</span> ratbag_button_macro *macro);</div><div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>&#160;</div><div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__button.html">ratbag_button</a> *</div><div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>&#160;<a class="code" href="group__button.html#gacbe158e5e95c8efb524406d2b9c6b4eb">ratbag_button_ref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button);</div><div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>&#160;</div><div class="line"><a name="l01789"></a><span class="lineno"> 1789</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__button.html">ratbag_button</a> *</div><div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>&#160;<a class="code" href="group__button.html#ga259f5ad3d0566bec161c48a285a0206e">ratbag_button_unref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__button.html">ratbag_button</a> *button);</div><div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>&#160;</div><div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__led.html">ratbag_led</a> *</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>&#160;<a class="code" href="group__led.html#gaba42b8fbbcabb3756a7c76bf3129b028">ratbag_led_ref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led);</div><div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>&#160;</div><div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>&#160;<span class="keyword">struct </span><a class="code" href="structratbag__led.html">ratbag_led</a> *</div><div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>&#160;<a class="code" href="group__led.html#gab5cd5a96754b67cd3bc542cb5775d260">ratbag_led_unref</a>(<span class="keyword">struct</span> <a class="code" href="structratbag__led.html">ratbag_led</a> *led);</div><div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>&#160;</div><div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>&#160;}</div><div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2aedd64f753389d04fe881c8841fb45971"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aedd64f753389d04fe881c8841fb45971">RATBAG_BUTTON_TYPE_THUMB4</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1141</div></div>
<div class="ttc" id="group__device_html_gaaeade1470e390e04848c0fa4f15e4f2b"><div class="ttname"><a href="group__device.html#gaaeade1470e390e04848c0fa4f15e4f2b">ratbag_device_ref</a></div><div class="ttdeci">struct ratbag_device * ratbag_device_ref(struct ratbag_device *device)</div><div class="ttdoc">Add a reference to the device. </div></div>
<div class="ttc" id="group__button_html_ga212d6f42b701a7795c73a5a1caba02fb"><div class="ttname"><a href="group__button.html#ga212d6f42b701a7795c73a5a1caba02fb">ratbag_macro_event_type</a></div><div class="ttdeci">ratbag_macro_event_type</div><div class="ttdoc">Macro event types describing the event. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1587</div></div>
<div class="ttc" id="group__resolution_html_gac1f8e59e543527306649fec849066d11"><div class="ttname"><a href="group__resolution.html#gac1f8e59e543527306649fec849066d11">ratbag_resolution_set_report_rate</a></div><div class="ttdeci">enum ratbag_error_code ratbag_resolution_set_report_rate(struct ratbag_resolution *resolution, unsigned int hz)</div><div class="ttdoc">Set the report rate in Hz for the resolution mode. </div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473af35a8207085784f0c199ce7c246a7269"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473af35a8207085784f0c199ce7c246a7269">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_DEFAULT</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1273</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a09d8e95699fa185af5a1aec61fa18b94"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a09d8e95699fa185af5a1aec61fa18b94">RATBAG_BUTTON_TYPE_WHEEL_RATCHET_MODE_SHIFT</a></div><div class="ttdoc">A button to toggle the wheel from free-spinning to click-based. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1150</div></div>
<div class="ttc" id="group__device_html_ga7ba9d519de19961846cccd63e632a2f2"><div class="ttname"><a href="group__device.html#ga7ba9d519de19961846cccd63e632a2f2">ratbag_device_commit</a></div><div class="ttdeci">enum ratbag_error_code ratbag_device_commit(struct ratbag_device *device)</div><div class="ttdoc">Write any changes to the device. </div></div>
<div class="ttc" id="group__button_html_gabde4d3cbf659daec6309da81640463f4"><div class="ttname"><a href="group__button.html#gabde4d3cbf659daec6309da81640463f4">ratbag_button_get_action_type</a></div><div class="ttdeci">enum ratbag_button_action_type ratbag_button_get_action_type(struct ratbag_button *button)</div></div>
<div class="ttc" id="group__base_html_gga778f6aa9aeee462860007415895baec1a2e737355144b856d0a872b648a5da140"><div class="ttname"><a href="group__base.html#gga778f6aa9aeee462860007415895baec1a2e737355144b856d0a872b648a5da140">RATBAG_SUCCESS</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:169</div></div>
<div class="ttc" id="group__profile_html_gaafa8356d4af464a063c72daf7ab3da8f"><div class="ttname"><a href="group__profile.html#gaafa8356d4af464a063c72daf7ab3da8f">ratbag_profile_ref</a></div><div class="ttdeci">struct ratbag_profile * ratbag_profile_ref(struct ratbag_profile *profile)</div><div class="ttdoc">Add a reference to the profile. </div></div>
<div class="ttc" id="group__resolution_html_gae26eaf50161f9f3d83b4c93c7f9ef49f"><div class="ttname"><a href="group__resolution.html#gae26eaf50161f9f3d83b4c93c7f9ef49f">ratbag_resolution_get_dpi</a></div><div class="ttdeci">int ratbag_resolution_get_dpi(struct ratbag_resolution *resolution)</div><div class="ttdoc">Get the resolution in DPI for the resolution mode. </div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2ad3a2abf81fcfd49b56134102a2653676"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ad3a2abf81fcfd49b56134102a2653676">RATBAG_BUTTON_TYPE_MIDDLE</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1136</div></div>
<div class="ttc" id="group__device_html_ga5ef8f8c5e8c45ca7660fb2c9b7586f52"><div class="ttname"><a href="group__device.html#ga5ef8f8c5e8c45ca7660fb2c9b7586f52">ratbag_device_get_num_leds</a></div><div class="ttdeci">unsigned int ratbag_device_get_num_leds(struct ratbag_device *device)</div><div class="ttdoc">Return the number of LEDs available on this device. </div></div>
<div class="ttc" id="group__device_html_ga234f5713cd4db3dc7c100461bfabe269"><div class="ttname"><a href="group__device.html#ga234f5713cd4db3dc7c100461bfabe269">ratbag_device_has_capability</a></div><div class="ttdeci">int ratbag_device_has_capability(const struct ratbag_device *device, enum ratbag_device_capability cap)</div><div class="ttdoc">Note that a device may not support any of the capabilities but still initialize fine otherwise...</div></div>
<div class="ttc" id="group__button_html_ga2651e1b9603d22e7cf003a0ef9273a97"><div class="ttname"><a href="group__button.html#ga2651e1b9603d22e7cf003a0ef9273a97">ratbag_button_set_special</a></div><div class="ttdeci">enum ratbag_error_code ratbag_button_set_special(struct ratbag_button *button, enum ratbag_button_action_special action)</div><div class="ttdoc">This function sets the special function assigned to this button. </div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a16e45fc796c4f3f398678b6d2b5fb5a3"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a16e45fc796c4f3f398678b6d2b5fb5a3">RATBAG_BUTTON_TYPE_SIDE</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1152</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a46369e1a68c1516b94d4370a3bfa3d4d"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a46369e1a68c1516b94d4370a3bfa3d4d">RATBAG_BUTTON_ACTION_SPECIAL_SECOND_MODE</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1282</div></div>
<div class="ttc" id="group__button_html_gadad04a96fcf421dea448c9dea95b1a39"><div class="ttname"><a href="group__button.html#gadad04a96fcf421dea448c9dea95b1a39">ratbag_button_macro_get_name</a></div><div class="ttdeci">const char * ratbag_button_macro_get_name(struct ratbag_button_macro *macro)</div></div>
<div class="ttc" id="group__device_html_ggadac0b3995c97da4276a6f21ecadecedfaa0d892a820b48517c4ea83018ab48eda"><div class="ttname"><a href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaa0d892a820b48517c4ea83018ab48eda">RATBAG_DEVICE_CAP_LED</a></div><div class="ttdoc">The device supports assigning LED colors and effects. </div><div class="ttdef"><b>Definition:</b> libratbag.h:520</div></div>
<div class="ttc" id="libratbag_8h_html_a4d5d0b9251bde32091d278b4f2cde0f3"><div class="ttname"><a href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3">ratbag_resolution_capability</a></div><div class="ttdeci">ratbag_resolution_capability</div><div class="ttdef"><b>Definition:</b> libratbag.h:850</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473aec5fadf1f36a4ded8ecca313391108be"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473aec5fadf1f36a4ded8ecca313391108be">RATBAG_BUTTON_ACTION_SPECIAL_INVALID</a></div><div class="ttdoc">This button is not set up for a special action. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1255</div></div>
<div class="ttc" id="group__resolution_html_gacdef33344806b7bf188ac4c62ad576d2"><div class="ttname"><a href="group__resolution.html#gacdef33344806b7bf188ac4c62ad576d2">ratbag_resolution_is_active</a></div><div class="ttdeci">int ratbag_resolution_is_active(const struct ratbag_resolution *resolution)</div><div class="ttdoc">Check if the resolution mode is the currently active one. </div></div>
<div class="ttc" id="group__button_html_gga212d6f42b701a7795c73a5a1caba02fbaf9b44f200255f432b9cbb9d261fc8a22"><div class="ttname"><a href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fbaf9b44f200255f432b9cbb9d261fc8a22">RATBAG_MACRO_EVENT_WAIT</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1592</div></div>
<div class="ttc" id="group__button_html_ga59bf9309c5c5566c970e24f5e8b00aaa"><div class="ttname"><a href="group__button.html#ga59bf9309c5c5566c970e24f5e8b00aaa">ratbag_button_macro_get_event_timeout</a></div><div class="ttdeci">int ratbag_button_macro_get_event_timeout(struct ratbag_button_macro *macro, unsigned int index)</div><div class="ttdoc">If the event stored at the given index is RATBAG_MACRO_EVENT_WAIT, this function returns the timeout ...</div></div>
<div class="ttc" id="group__resolution_html_gace364969e6ad48504f23869ab0e7751d"><div class="ttname"><a href="group__resolution.html#gace364969e6ad48504f23869ab0e7751d">ratbag_resolution_get_dpi_x</a></div><div class="ttdeci">int ratbag_resolution_get_dpi_x(struct ratbag_resolution *resolution)</div><div class="ttdoc">Get the x resolution in DPI for the resolution mode. </div></div>
<div class="ttc" id="group__button_html_gaccdc81330ea5eae6204a670865769e65"><div class="ttname"><a href="group__button.html#gaccdc81330ea5eae6204a670865769e65">ratbag_button_macro_get_num_events</a></div><div class="ttdeci">unsigned int ratbag_button_macro_get_num_events(struct ratbag_button_macro *macro)</div></div>
<div class="ttc" id="group__led_html_gad1be32cfd9fa5b3a423211f11bed67d1"><div class="ttname"><a href="group__led.html#gad1be32cfd9fa5b3a423211f11bed67d1">ratbag_led_mode</a></div><div class="ttdeci">ratbag_led_mode</div><div class="ttdoc">RATBAG_LED_OFF - led is now off, RATBAG_LED_ON - led is on with static color, RATBAG_LED_CYCLE - led ...</div><div class="ttdef"><b>Definition:</b> libratbag.h:1354</div></div>
<div class="ttc" id="group__button_html_gae25844ee57fc9ca22a9b33427ad066fb"><div class="ttname"><a href="group__button.html#gae25844ee57fc9ca22a9b33427ad066fb">ratbag_button_get_type</a></div><div class="ttdeci">enum ratbag_button_type ratbag_button_get_type(struct ratbag_button *button)</div><div class="ttdoc">Return the type of the physical button. </div></div>
<div class="ttc" id="group__button_html_ga1a3d6e7b1708d11912acab9732b2f91e"><div class="ttname"><a href="group__button.html#ga1a3d6e7b1708d11912acab9732b2f91e">ratbag_button_has_action_type</a></div><div class="ttdeci">int ratbag_button_has_action_type(struct ratbag_button *button, enum ratbag_button_action_type action_type)</div><div class="ttdoc">Check if a button supports a specific action type. </div></div>
<div class="ttc" id="structratbag__led_html"><div class="ttname"><a href="structratbag__led.html">ratbag_led</a></div><div class="ttdoc">Represents a led on the device. </div></div>
<div class="ttc" id="group__button_html_ga1d8d788732b2ffb5c328c27b6bf32ab9"><div class="ttname"><a href="group__button.html#ga1d8d788732b2ffb5c328c27b6bf32ab9">ratbag_button_get_button</a></div><div class="ttdeci">unsigned int ratbag_button_get_button(struct ratbag_button *button)</div><div class="ttdoc">If a button&amp;#39;s action is RATBAG_BUTTON_ACTION_TYPE_BUTTON, this function returns the logical button nu...</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a22e1732b745a0a6de04fac2c65484a72"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a22e1732b745a0a6de04fac2c65484a72">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_CYCLE_DOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1269</div></div>
<div class="ttc" id="group__button_html_ga7a68272f2ee379d44e1c96ae1096481f"><div class="ttname"><a href="group__button.html#ga7a68272f2ee379d44e1c96ae1096481f">ratbag_button_disable</a></div><div class="ttdeci">enum ratbag_error_code ratbag_button_disable(struct ratbag_button *button)</div></div>
<div class="ttc" id="group__base_html_ga050316341453af027b12f5955fa8ad6a"><div class="ttname"><a href="group__base.html#ga050316341453af027b12f5955fa8ad6a">ratbag_log_get_priority</a></div><div class="ttdeci">enum ratbag_log_priority ratbag_log_get_priority(const struct ratbag *ratbag)</div><div class="ttdoc">Get the context&amp;#39;s log priority. </div></div>
<div class="ttc" id="group__base_html_gga23609c083d2bf82a65db8c780fea0125a663d17fb774c6c86f8234fa8624ff5c6"><div class="ttname"><a href="group__base.html#gga23609c083d2bf82a65db8c780fea0125a663d17fb774c6c86f8234fa8624ff5c6">RATBAG_LOG_PRIORITY_RAW</a></div><div class="ttdoc">Raw protocol messages. </div><div class="ttdef"><b>Definition:</b> libratbag.h:216</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2ae97892b752aabd9811af1030bb91a995"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ae97892b752aabd9811af1030bb91a995">RATBAG_BUTTON_TYPE_WHEEL_CLICK</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1144</div></div>
<div class="ttc" id="group__led_html_gaa8c8047c8ad6b476dc25ed24d4e50e89"><div class="ttname"><a href="group__led.html#gaa8c8047c8ad6b476dc25ed24d4e50e89">ratbag_led_get_effect_rate</a></div><div class="ttdeci">int ratbag_led_get_effect_rate(struct ratbag_led *led)</div><div class="ttdoc">This function returns the LED effect rate. </div></div>
<div class="ttc" id="group__device_html_ggadac0b3995c97da4276a6f21ecadecedfac6de8a11a57ee4971be159e511c0065e"><div class="ttname"><a href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfac6de8a11a57ee4971be159e511c0065e">RATBAG_DEVICE_CAP_BUTTON_MACROS</a></div><div class="ttdoc">The device supports user-defined key or button sequences. </div><div class="ttdef"><b>Definition:</b> libratbag.h:525</div></div>
<div class="ttc" id="group__device_html_ggadac0b3995c97da4276a6f21ecadecedfa610acfcea4d029aac89b10a73ddaf7dc"><div class="ttname"><a href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfa610acfcea4d029aac89b10a73ddaf7dc">RATBAG_DEVICE_CAP_SWITCHABLE_PROFILE</a></div><div class="ttdoc">The device can switch between hardware profiles. </div><div class="ttdef"><b>Definition:</b> libratbag.h:509</div></div>
<div class="ttc" id="group__device_html_ggadac0b3995c97da4276a6f21ecadecedfaca1ffce8a02c08124ed78ac5192869a8"><div class="ttname"><a href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaca1ffce8a02c08124ed78ac5192869a8">RATBAG_DEVICE_CAP_DISABLE_PROFILE</a></div><div class="ttdoc">The device has the capability to disable and enable profiles. </div><div class="ttdef"><b>Definition:</b> libratbag.h:559</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a18c8de16a7aefa0e943be16b241909dc"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a18c8de16a7aefa0e943be16b241909dc">RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_RIGHT</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1262</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2abe71df878436dd40e96945b449f67f21"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2abe71df878436dd40e96945b449f67f21">RATBAG_BUTTON_TYPE_WHEEL_RIGHT</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1143</div></div>
<div class="ttc" id="structratbag__color_html_a0da0a7e6cc2e4ac994a56b01109aeff8"><div class="ttname"><a href="structratbag__color.html#a0da0a7e6cc2e4ac994a56b01109aeff8">ratbag_color::red</a></div><div class="ttdeci">unsigned int red</div><div class="ttdef"><b>Definition:</b> libratbag.h:139</div></div>
<div class="ttc" id="group__base_html_gga778f6aa9aeee462860007415895baec1a6126953b4fc122e5e9e796175597dbc6"><div class="ttname"><a href="group__base.html#gga778f6aa9aeee462860007415895baec1a6126953b4fc122e5e9e796175597dbc6">RATBAG_ERROR_DEVICE</a></div><div class="ttdoc">An error occured on the device. </div><div class="ttdef"><b>Definition:</b> libratbag.h:175</div></div>
<div class="ttc" id="group__led_html_ga9836b757484e40d589bb83fe3e258a03"><div class="ttname"><a href="group__led.html#ga9836b757484e40d589bb83fe3e258a03">ratbag_led_get_type</a></div><div class="ttdeci">enum ratbag_led_type ratbag_led_get_type(struct ratbag_led *led)</div><div class="ttdoc">This function returns the type for ratbag_led. </div></div>
<div class="ttc" id="group__button_html_ga8f7b7270177e9da69b9fdf8d72034f4a"><div class="ttname"><a href="group__button.html#ga8f7b7270177e9da69b9fdf8d72034f4a">ratbag_button_macro_set_event</a></div><div class="ttdeci">enum ratbag_error_code ratbag_button_macro_set_event(struct ratbag_button_macro *macro, unsigned int index, enum ratbag_macro_event_type type, unsigned int data)</div><div class="ttdoc">Sets the macro&amp;#39;s event at the given index to the given type with the key code or timeout given...</div></div>
<div class="ttc" id="libratbag_8h_html_a4d5d0b9251bde32091d278b4f2cde0f3a99ee14f4fe1f3a571316e1c8c3068ed6"><div class="ttname"><a href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3a99ee14f4fe1f3a571316e1c8c3068ed6">RATBAG_RESOLUTION_CAP_SEPARATE_XY_RESOLUTION</a></div><div class="ttdoc">The resolution can be set for x and y separately. </div><div class="ttdef"><b>Definition:</b> libratbag.h:861</div></div>
<div class="ttc" id="group__button_html_ga1bd7c610e5dfc0d9316be2c9f73e891f"><div class="ttname"><a href="group__button.html#ga1bd7c610e5dfc0d9316be2c9f73e891f">ratbag_button_macro_get_event_type</a></div><div class="ttdeci">enum ratbag_macro_event_type ratbag_button_macro_get_event_type(struct ratbag_button_macro *macro, unsigned int index)</div><div class="ttdoc">Returns the macro event type configured for the event at the given index. </div></div>
<div class="ttc" id="group__led_html_gaed6c3fd08b50338c852f9e2271bdf19d"><div class="ttname"><a href="group__led.html#gaed6c3fd08b50338c852f9e2271bdf19d">ratbag_led_set_color</a></div><div class="ttdeci">enum ratbag_error_code ratbag_led_set_color(struct ratbag_led *led, struct ratbag_color color)</div><div class="ttdoc">If the LED&amp;#39;s mode is RATBAG_LED_ON or RATBAG_LED_BREATHING then this function sets the LED color...</div></div>
<div class="ttc" id="group__resolution_html_gabb45f662b634e7452852d835179109d3"><div class="ttname"><a href="group__resolution.html#gabb45f662b634e7452852d835179109d3">ratbag_resolution_get_report_rate</a></div><div class="ttdeci">int ratbag_resolution_get_report_rate(struct ratbag_resolution *resolution)</div><div class="ttdoc">Get the report rate in Hz for the resolution mode. </div></div>
<div class="ttc" id="group__button_html_gga212d6f42b701a7795c73a5a1caba02fba1f860412a64de869a0a45d65cb009edf"><div class="ttname"><a href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fba1f860412a64de869a0a45d65cb009edf">RATBAG_MACRO_EVENT_INVALID</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1588</div></div>
<div class="ttc" id="group__device_html_ggadac0b3995c97da4276a6f21ecadecedfaf4fbc43472adb35835f5e1d2fed9a05e"><div class="ttname"><a href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaf4fbc43472adb35835f5e1d2fed9a05e">RATBAG_DEVICE_CAP_SWITCHABLE_RESOLUTION</a></div><div class="ttdoc">The device can change resolution, either software-controlled or by a hardware button. </div><div class="ttdef"><b>Definition:</b> libratbag.h:501</div></div>
<div class="ttc" id="group__profile_html_ga88aab098ab4ebef59dd1200cfeb66f1b"><div class="ttname"><a href="group__profile.html#ga88aab098ab4ebef59dd1200cfeb66f1b">ratbag_profile_is_enabled</a></div><div class="ttdeci">bool ratbag_profile_is_enabled(const struct ratbag_profile *profile)</div><div class="ttdoc">Check whether the ratbag profile is enabled or not. </div></div>
<div class="ttc" id="group__profile_html_ga952c361c0c853e7a3b6669dc1f4fedb5"><div class="ttname"><a href="group__profile.html#ga952c361c0c853e7a3b6669dc1f4fedb5">ratbag_profile_get_resolution</a></div><div class="ttdeci">struct ratbag_resolution * ratbag_profile_get_resolution(struct ratbag_profile *profile, unsigned int idx)</div><div class="ttdoc">Return the resolution in DPI and the report rate in Hz for the resolution mode identified by the give...</div></div>
<div class="ttc" id="group__profile_html_ga87f321a303c031292c5850e77f2c3194"><div class="ttname"><a href="group__profile.html#ga87f321a303c031292c5850e77f2c3194">ratbag_profile_set_active</a></div><div class="ttdeci">enum ratbag_error_code ratbag_profile_set_active(struct ratbag_profile *profile)</div><div class="ttdoc">Make the given profile the currently active profile. </div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a4eec5bccff9914efde9e020f195e482f"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a4eec5bccff9914efde9e020f195e482f">RATBAG_BUTTON_ACTION_SPECIAL_PROFILE_CYCLE_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1276</div></div>
<div class="ttc" id="group__button_html_gga9f5b77ec6305b4371baea749105bec13aa086780609b50d838da775d6edcb8720"><div class="ttname"><a href="group__button.html#gga9f5b77ec6305b4371baea749105bec13aa086780609b50d838da775d6edcb8720">RATBAG_BUTTON_ACTION_TYPE_UNKNOWN</a></div><div class="ttdoc">Button action is unknown. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1195</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a3b30fce388bb591483da08ac2042f122"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a3b30fce388bb591483da08ac2042f122">RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1263</div></div>
<div class="ttc" id="group__led_html_ggade0742d37e151927d6bc08e37e83c930a6c7e99efb36224e445649010040e6125"><div class="ttname"><a href="group__led.html#ggade0742d37e151927d6bc08e37e83c930a6c7e99efb36224e445649010040e6125">RATBAG_LED_TYPE_UNKNOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1366</div></div>
<div class="ttc" id="group__resolution_html_ga26c8a1ed15dd7f8df86ce71427cd151f"><div class="ttname"><a href="group__resolution.html#ga26c8a1ed15dd7f8df86ce71427cd151f">ratbag_resolution_set_default</a></div><div class="ttdeci">enum ratbag_error_code ratbag_resolution_set_default(struct ratbag_resolution *resolution)</div><div class="ttdoc">Set the default resolution mode for the associated profile. </div></div>
<div class="ttc" id="group__profile_html_ga2ed8ff2c772f5f6a4165e30533fc5628"><div class="ttname"><a href="group__profile.html#ga2ed8ff2c772f5f6a4165e30533fc5628">ratbag_profile_is_active</a></div><div class="ttdeci">int ratbag_profile_is_active(struct ratbag_profile *profile)</div><div class="ttdoc">Check if the given profile is the currently active one. </div></div>
<div class="ttc" id="group__profile_html_gaebf3e26861590805407cc52fac30dfb2"><div class="ttname"><a href="group__profile.html#gaebf3e26861590805407cc52fac30dfb2">ratbag_profile_set_user_data</a></div><div class="ttdeci">void ratbag_profile_set_user_data(struct ratbag_profile *profile, void *userdata)</div><div class="ttdoc">Set caller-specific data associated with this profile. </div></div>
<div class="ttc" id="group__device_html_gadac0b3995c97da4276a6f21ecadecedf"><div class="ttname"><a href="group__device.html#gadac0b3995c97da4276a6f21ecadecedf">ratbag_device_capability</a></div><div class="ttdeci">ratbag_device_capability</div><div class="ttdef"><b>Definition:</b> libratbag.h:491</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2ac8ab5c27c077f614f4e3e7016425239b"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ac8ab5c27c077f614f4e3e7016425239b">RATBAG_BUTTON_TYPE_THUMB3</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1140</div></div>
<div class="ttc" id="group__device_html_gab51b2638874739f6be746c2fc14365a5"><div class="ttname"><a href="group__device.html#gab51b2638874739f6be746c2fc14365a5">ratbag_device_get_svg_name</a></div><div class="ttdeci">const char * ratbag_device_get_svg_name(const struct ratbag_device *device)</div></div>
<div class="ttc" id="group__led_html_ggad1be32cfd9fa5b3a423211f11bed67d1a77a9df31393082ff27cee3361551c26f"><div class="ttname"><a href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a77a9df31393082ff27cee3361551c26f">RATBAG_LED_BREATHING</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1358</div></div>
<div class="ttc" id="group__profile_html_ga1a606957ee177707273f168a892f9ae5"><div class="ttname"><a href="group__profile.html#ga1a606957ee177707273f168a892f9ae5">ratbag_profile_get_user_data</a></div><div class="ttdeci">void * ratbag_profile_get_user_data(const struct ratbag_profile *profile)</div><div class="ttdoc">Get the caller-specific data associated with this profile, if any. </div></div>
<div class="ttc" id="structratbag__resolution_html"><div class="ttname"><a href="structratbag__resolution.html">ratbag_resolution</a></div><div class="ttdoc">Represents a resolution setting on the device. </div><div class="ttdef"><b>Definition:</b> libratbag.h:116</div></div>
<div class="ttc" id="group__resolution_html_ga66b841bb901766ca23dad631d2a0d7a4"><div class="ttname"><a href="group__resolution.html#ga66b841bb901766ca23dad631d2a0d7a4">ratbag_resolution_set_dpi_xy</a></div><div class="ttdeci">enum ratbag_error_code ratbag_resolution_set_dpi_xy(struct ratbag_resolution *resolution, unsigned int x, unsigned int y)</div><div class="ttdoc">Set the x and y resolution in DPI for the resolution mode. </div></div>
<div class="ttc" id="group__profile_html_gaf11661959bbc73dace4da8591e719e98"><div class="ttname"><a href="group__profile.html#gaf11661959bbc73dace4da8591e719e98">ratbag_profile_set_enabled</a></div><div class="ttdeci">enum ratbag_error_code ratbag_profile_set_enabled(struct ratbag_profile *profile, bool enabled)</div><div class="ttdoc">Enable/disable the ratbag profile. </div></div>
<div class="ttc" id="group__base_html_gga23609c083d2bf82a65db8c780fea0125a072d5e9b642837eb365a540363e352aa"><div class="ttname"><a href="group__base.html#gga23609c083d2bf82a65db8c780fea0125a072d5e9b642837eb365a540363e352aa">RATBAG_LOG_PRIORITY_INFO</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:218</div></div>
<div class="ttc" id="group__led_html_gac1a6918e0c7d94e5e2166d73ba8dfa5b"><div class="ttname"><a href="group__led.html#gac1a6918e0c7d94e5e2166d73ba8dfa5b">ratbag_led_set_mode</a></div><div class="ttdeci">enum ratbag_error_code ratbag_led_set_mode(struct ratbag_led *led, enum ratbag_led_mode mode)</div><div class="ttdoc">this function sets the LED mode. </div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a822f6cc8b0ecbb3ae0c00ef83287a64a"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a822f6cc8b0ecbb3ae0c00ef83287a64a">RATBAG_BUTTON_TYPE_EXTRA</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1151</div></div>
<div class="ttc" id="group__button_html_ga8158a0f03a168268ec347f0a96699473"><div class="ttname"><a href="group__button.html#ga8158a0f03a168268ec347f0a96699473">ratbag_button_action_special</a></div><div class="ttdeci">ratbag_button_action_special</div><div class="ttdef"><b>Definition:</b> libratbag.h:1251</div></div>
<div class="ttc" id="group__button_html_ga259f5ad3d0566bec161c48a285a0206e"><div class="ttname"><a href="group__button.html#ga259f5ad3d0566bec161c48a285a0206e">ratbag_button_unref</a></div><div class="ttdeci">struct ratbag_button * ratbag_button_unref(struct ratbag_button *button)</div><div class="ttdoc">Dereference the ratbag button. </div></div>
<div class="ttc" id="group__profile_html_ga7678b274a5307f764fe829849c313088"><div class="ttname"><a href="group__profile.html#ga7678b274a5307f764fe829849c313088">ratbag_device_get_profile</a></div><div class="ttdeci">struct ratbag_profile * ratbag_device_get_profile(struct ratbag_device *device, unsigned int index)</div><div class="ttdoc">This function creates if necessary and returns a profile for the given index. </div></div>
<div class="ttc" id="group__led_html_gaba42b8fbbcabb3756a7c76bf3129b028"><div class="ttname"><a href="group__led.html#gaba42b8fbbcabb3756a7c76bf3129b028">ratbag_led_ref</a></div><div class="ttdeci">struct ratbag_led * ratbag_led_ref(struct ratbag_led *led)</div><div class="ttdoc">Add a reference to the led. </div></div>
<div class="ttc" id="group__resolution_html_ga0718f2922e37ed10704fad2d2aeefece"><div class="ttname"><a href="group__resolution.html#ga0718f2922e37ed10704fad2d2aeefece">ratbag_resolution_ref</a></div><div class="ttdeci">struct ratbag_resolution * ratbag_resolution_ref(struct ratbag_resolution *resolution)</div><div class="ttdoc">Add a reference to the resolution. </div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a41a171b1c2ccdf23f683dedd01eb9bab"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a41a171b1c2ccdf23f683dedd01eb9bab">RATBAG_BUTTON_TYPE_RESOLUTION_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1158</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a49c607b930139e78180fcb89e6910844"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a49c607b930139e78180fcb89e6910844">RATBAG_BUTTON_TYPE_PROFILE_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1163</div></div>
<div class="ttc" id="group__base_html_gga778f6aa9aeee462860007415895baec1aa497fc927ae7b6f4d34ea1097669257d"><div class="ttname"><a href="group__base.html#gga778f6aa9aeee462860007415895baec1aa497fc927ae7b6f4d34ea1097669257d">RATBAG_ERROR_SYSTEM</a></div><div class="ttdoc">A low-level system error has occured, e.g. </div><div class="ttdef"><b>Definition:</b> libratbag.h:195</div></div>
<div class="ttc" id="group__profile_html_ga27de2026ec173d33da48f8635ebd65cb"><div class="ttname"><a href="group__profile.html#ga27de2026ec173d33da48f8635ebd65cb">ratbag_profile_get_num_resolutions</a></div><div class="ttdeci">unsigned int ratbag_profile_get_num_resolutions(struct ratbag_profile *profile)</div><div class="ttdoc">Get the number of ratbag_resolution available in this profile. </div></div>
<div class="ttc" id="group__resolution_html_gac0d204063f6e14dbf1cac1348bea14e5"><div class="ttname"><a href="group__resolution.html#gac0d204063f6e14dbf1cac1348bea14e5">ratbag_resolution_set_user_data</a></div><div class="ttdeci">void ratbag_resolution_set_user_data(struct ratbag_resolution *resolution, void *userdata)</div><div class="ttdoc">Set caller-specific data associated with this resolution. </div></div>
<div class="ttc" id="group__base_html_gga23609c083d2bf82a65db8c780fea0125ae0116289263b8c2ed01d9b190bea8e2c"><div class="ttname"><a href="group__base.html#gga23609c083d2bf82a65db8c780fea0125ae0116289263b8c2ed01d9b190bea8e2c">RATBAG_LOG_PRIORITY_ERROR</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:219</div></div>
<div class="ttc" id="group__device_html_gaa41c2f2db4ee920548aa4e9a72f86a14"><div class="ttname"><a href="group__device.html#gaa41c2f2db4ee920548aa4e9a72f86a14">ratbag_device_set_user_data</a></div><div class="ttdeci">void ratbag_device_set_user_data(struct ratbag_device *device, void *userdata)</div><div class="ttdoc">Set caller-specific data associated with this device. </div></div>
<div class="ttc" id="group__button_html_gacd6cb74791510fff4b81cdc4ec05dccb"><div class="ttname"><a href="group__button.html#gacd6cb74791510fff4b81cdc4ec05dccb">ratbag_button_get_key</a></div><div class="ttdeci">unsigned int ratbag_button_get_key(struct ratbag_button *button, unsigned int *modifiers, size_t *sz)</div><div class="ttdoc">If a button&amp;#39;s action is RATBAG_BUTTON_ACTION_TYPE_KEY, this function returns the key or button config...</div></div>
<div class="ttc" id="group__device_html_ga72297497f8c82952604f25b30fc29e83"><div class="ttname"><a href="group__device.html#ga72297497f8c82952604f25b30fc29e83">ratbag_device_get_user_data</a></div><div class="ttdeci">void * ratbag_device_get_user_data(const struct ratbag_device *device)</div><div class="ttdoc">Get the caller-specific data associated with this device, if any. </div></div>
<div class="ttc" id="group__button_html_gaf0f65eefca1a380075718a96535cb6ef"><div class="ttname"><a href="group__button.html#gaf0f65eefca1a380075718a96535cb6ef">ratbag_button_get_special</a></div><div class="ttdeci">enum ratbag_button_action_special ratbag_button_get_special(struct ratbag_button *button)</div><div class="ttdoc">If a button&amp;#39;s action is RATBAG_BUTTON_ACTION_TYPE_SPECIAL, this function returns the special function...</div></div>
<div class="ttc" id="group__button_html_ga6937bdc91d208ac46b91966c34205879"><div class="ttname"><a href="group__button.html#ga6937bdc91d208ac46b91966c34205879">ratbag_button_macro_ref</a></div><div class="ttdeci">struct ratbag_button_macro * ratbag_button_macro_ref(struct ratbag_button_macro *macro)</div><div class="ttdoc">Add a reference to the macro. </div></div>
<div class="ttc" id="group__base_html_gacbfae84a89699399e5ab09633e00d44f"><div class="ttname"><a href="group__base.html#gacbfae84a89699399e5ab09633e00d44f">ratbag_log_set_handler</a></div><div class="ttdeci">void ratbag_log_set_handler(struct ratbag *ratbag, ratbag_log_handler log_handler)</div><div class="ttdoc">Set the context&amp;#39;s log handler. </div></div>
<div class="ttc" id="group__base_html_ga23609c083d2bf82a65db8c780fea0125"><div class="ttname"><a href="group__base.html#ga23609c083d2bf82a65db8c780fea0125">ratbag_log_priority</a></div><div class="ttdeci">ratbag_log_priority</div><div class="ttdoc">Log priority for internal logging messages. </div><div class="ttdef"><b>Definition:</b> libratbag.h:211</div></div>
<div class="ttc" id="group__button_html_gacbe158e5e95c8efb524406d2b9c6b4eb"><div class="ttname"><a href="group__button.html#gacbe158e5e95c8efb524406d2b9c6b4eb">ratbag_button_ref</a></div><div class="ttdeci">struct ratbag_button * ratbag_button_ref(struct ratbag_button *button)</div><div class="ttdoc">Add a reference to the button. </div></div>
<div class="ttc" id="libratbag_8h_html_a4d5d0b9251bde32091d278b4f2cde0f3a7ba0b0c4048bd5315f4eda12a4cd4342"><div class="ttname"><a href="libratbag_8h.html#a4d5d0b9251bde32091d278b4f2cde0f3a7ba0b0c4048bd5315f4eda12a4cd4342">RATBAG_RESOLUTION_CAP_INDIVIDUAL_REPORT_RATE</a></div><div class="ttdoc">The report rate can be set per resolution mode. </div><div class="ttdef"><b>Definition:</b> libratbag.h:856</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a4e7833dbcc430912bdbbbf04e6625662"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a4e7833dbcc430912bdbbbf04e6625662">RATBAG_BUTTON_TYPE_WHEEL_LEFT</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1142</div></div>
<div class="ttc" id="group__button_html_ga7c23b964b5d0a4296af343786c128033"><div class="ttname"><a href="group__button.html#ga7c23b964b5d0a4296af343786c128033">ratbag_button_set_key</a></div><div class="ttdeci">enum ratbag_error_code ratbag_button_set_key(struct ratbag_button *button, unsigned int key, unsigned int *modifiers, size_t sz)</div></div>
<div class="ttc" id="group__button_html_gga212d6f42b701a7795c73a5a1caba02fba20c83bbdb34b15f779df6fd2f2055744"><div class="ttname"><a href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fba20c83bbdb34b15f779df6fd2f2055744">RATBAG_MACRO_EVENT_NONE</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1589</div></div>
<div class="ttc" id="group__device_html_ga45a7982c317f4a7ece37b42d6dcbb4c1"><div class="ttname"><a href="group__device.html#ga45a7982c317f4a7ece37b42d6dcbb4c1">ratbag_device_get_num_profiles</a></div><div class="ttdeci">unsigned int ratbag_device_get_num_profiles(struct ratbag_device *device)</div><div class="ttdoc">Return the number of profiles supported by this device. </div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a0d0db353fdff8f2aaad5ca1e21c4b8c8"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a0d0db353fdff8f2aaad5ca1e21c4b8c8">RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_DOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1264</div></div>
<div class="ttc" id="group__led_html_ga38a9ce74dd1befaf1d89d8d367e7a4e3"><div class="ttname"><a href="group__led.html#ga38a9ce74dd1befaf1d89d8d367e7a4e3">ratbag_led_get_mode</a></div><div class="ttdeci">enum ratbag_led_mode ratbag_led_get_mode(struct ratbag_led *led)</div><div class="ttdoc">This function returns the mode for ratbag_led. </div></div>
<div class="ttc" id="group__base_html_ga3394131f8d3dda1d29bec9384a9ca903"><div class="ttname"><a href="group__base.html#ga3394131f8d3dda1d29bec9384a9ca903">ratbag_create_context</a></div><div class="ttdeci">struct ratbag * ratbag_create_context(const struct ratbag_interface *interface, void *userdata)</div><div class="ttdoc">Create a new ratbag context. </div></div>
<div class="ttc" id="group__button_html_gga9f5b77ec6305b4371baea749105bec13ae6a8937936a354d2536c55474591b90d"><div class="ttname"><a href="group__button.html#gga9f5b77ec6305b4371baea749105bec13ae6a8937936a354d2536c55474591b90d">RATBAG_BUTTON_ACTION_TYPE_KEY</a></div><div class="ttdoc">Button sends a key or key + modifier combination. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1212</div></div>
<div class="ttc" id="group__base_html_ga5d25e0b78d3dd35b051dc42d1bdfa459"><div class="ttname"><a href="group__base.html#ga5d25e0b78d3dd35b051dc42d1bdfa459">ratbag_set_user_data</a></div><div class="ttdeci">void ratbag_set_user_data(struct ratbag *ratbag, void *userdata)</div><div class="ttdoc">Set caller-specific data associated with this context. </div></div>
<div class="ttc" id="group__resolution_html_ga3b207a0de53cd01460af70494b7493b6"><div class="ttname"><a href="group__resolution.html#ga3b207a0de53cd01460af70494b7493b6">ratbag_resolution_unref</a></div><div class="ttdeci">struct ratbag_resolution * ratbag_resolution_unref(struct ratbag_resolution *resolution)</div><div class="ttdoc">Dereference the ratbag resolution. </div></div>
<div class="ttc" id="group__button_html_ga4b3efb01e2183e55e6589bc6d1486be9"><div class="ttname"><a href="group__button.html#ga4b3efb01e2183e55e6589bc6d1486be9">ratbag_button_macro_new</a></div><div class="ttdeci">struct ratbag_button_macro * ratbag_button_macro_new(const char *name)</div><div class="ttdoc">Initialize a new button macro. </div></div>
<div class="ttc" id="group__base_html_gga778f6aa9aeee462860007415895baec1a9d0f55d2981272643e23ac2880dbe3da"><div class="ttname"><a href="group__base.html#gga778f6aa9aeee462860007415895baec1a9d0f55d2981272643e23ac2880dbe3da">RATBAG_ERROR_IMPLEMENTATION</a></div><div class="ttdoc">Implementation bug, either in libratbag or in the caller. </div><div class="ttdef"><b>Definition:</b> libratbag.h:203</div></div>
<div class="ttc" id="group__button_html_gga9f5b77ec6305b4371baea749105bec13af50bfdfab7f8cf69e06349f40aec9586"><div class="ttname"><a href="group__button.html#gga9f5b77ec6305b4371baea749105bec13af50bfdfab7f8cf69e06349f40aec9586">RATBAG_BUTTON_ACTION_TYPE_NONE</a></div><div class="ttdoc">Button is disabled. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1199</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a8f35e47cdafb09262bab48e3eb6f0b5c"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a8f35e47cdafb09262bab48e3eb6f0b5c">RATBAG_BUTTON_ACTION_SPECIAL_DOUBLECLICK</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1258</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a8174ea6fac3d7276678f878871302833"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a8174ea6fac3d7276678f878871302833">RATBAG_BUTTON_TYPE_RESOLUTION_DOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1159</div></div>
<div class="ttc" id="group__device_html_ggadac0b3995c97da4276a6f21ecadecedfaf70724e79aec52503a32566d4f7bbb32"><div class="ttname"><a href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfaf70724e79aec52503a32566d4f7bbb32">RATBAG_DEVICE_CAP_DEFAULT_PROFILE</a></div><div class="ttdoc">The device can have one profile assigned as a default profile. </div><div class="ttdef"><b>Definition:</b> libratbag.h:533</div></div>
<div class="ttc" id="group__resolution_html_gac77329eb260520654e5a12b3bed9fe75"><div class="ttname"><a href="group__resolution.html#gac77329eb260520654e5a12b3bed9fe75">ratbag_resolution_set_dpi</a></div><div class="ttdeci">enum ratbag_error_code ratbag_resolution_set_dpi(struct ratbag_resolution *resolution, unsigned int dpi)</div><div class="ttdoc">Set the resolution in DPI for the resolution mode. </div></div>
<div class="ttc" id="group__base_html_gaf91249ec430e6f82df68f48b3796f7ae"><div class="ttname"><a href="group__base.html#gaf91249ec430e6f82df68f48b3796f7ae">ratbag_log_set_priority</a></div><div class="ttdeci">void(*) voi ratbag_log_set_priority)(struct ratbag *ratbag, enum ratbag_log_priority priority)</div><div class="ttdoc">Set the log priority for the ratbag context. </div><div class="ttdef"><b>Definition:</b> libratbag.h:257</div></div>
<div class="ttc" id="group__led_html_ggad1be32cfd9fa5b3a423211f11bed67d1a1118650e587ec5fac6ae4969b318e640"><div class="ttname"><a href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a1118650e587ec5fac6ae4969b318e640">RATBAG_LED_CYCLE</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1357</div></div>
<div class="ttc" id="structratbag__profile_html"><div class="ttname"><a href="structratbag__profile.html">ratbag_profile</a></div><div class="ttdoc">A handle to a profile context on devices with the RATBAG_DEVICE_CAP_SWITCHABLE_PROFILE capability...</div><div class="ttdef"><b>Definition:</b> libratbag.h:94</div></div>
<div class="ttc" id="group__resolution_html_ga45c509541bacca70c1cf1a5726a3d7d2"><div class="ttname"><a href="group__resolution.html#ga45c509541bacca70c1cf1a5726a3d7d2">ratbag_resolution_has_capability</a></div><div class="ttdeci">int ratbag_resolution_has_capability(struct ratbag_resolution *resolution, enum ratbag_resolution_capability cap)</div><div class="ttdoc">Check if a resolution has a specific capability. </div></div>
<div class="ttc" id="group__led_html_gaec2018afcd26bb31ca12ac9e8f995d47"><div class="ttname"><a href="group__led.html#gaec2018afcd26bb31ca12ac9e8f995d47">ratbag_led_get_color</a></div><div class="ttdeci">struct ratbag_color ratbag_led_get_color(struct ratbag_led *led)</div><div class="ttdoc">This function returns the led color. </div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a77288824bca980d8880e2317963176ab"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a77288824bca980d8880e2317963176ab">RATBAG_BUTTON_TYPE_THUMB</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1138</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a8de7a91e89376d03ac5f0851fab70600"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a8de7a91e89376d03ac5f0851fab70600">RATBAG_BUTTON_TYPE_RIGHT</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1137</div></div>
<div class="ttc" id="structratbag__interface_html"><div class="ttname"><a href="structratbag__interface.html">ratbag_interface</a></div><div class="ttdoc">libratbag does not open file descriptors to devices directly, instead open_restricted() and close_res...</div><div class="ttdef"><b>Definition:</b> libratbag.h:307</div></div>
<div class="ttc" id="group__button_html_ga332d7dde5121d3b34b1af6371c375c75"><div class="ttname"><a href="group__button.html#ga332d7dde5121d3b34b1af6371c375c75">ratbag_button_set_user_data</a></div><div class="ttdeci">void ratbag_button_set_user_data(struct ratbag_button *button, void *userdata)</div><div class="ttdoc">Set caller-specific data associated with this button. </div></div>
<div class="ttc" id="group__device_html_ggadac0b3995c97da4276a6f21ecadecedfacee7c64e3ea8797c2462c72001afe619"><div class="ttname"><a href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfacee7c64e3ea8797c2462c72001afe619">RATBAG_DEVICE_CAP_QUERY_CONFIGURATION</a></div><div class="ttdoc">The device has the capability to query the current hardware configuration. </div><div class="ttdef"><b>Definition:</b> libratbag.h:550</div></div>
<div class="ttc" id="group__resolution_html_gac0687e5dd24d1842cc9450db536f82c4"><div class="ttname"><a href="group__resolution.html#gac0687e5dd24d1842cc9450db536f82c4">ratbag_resolution_get_user_data</a></div><div class="ttdeci">void * ratbag_resolution_get_user_data(const struct ratbag_resolution *resolution)</div><div class="ttdoc">Get the caller-specific data associated with this resolution, if any. </div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2aa878e5948b2b12d13a91f08f309cf1cb"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aa878e5948b2b12d13a91f08f309cf1cb">RATBAG_BUTTON_TYPE_THUMB2</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1139</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a36b89d5d86f8952b22070f53bca4bf25"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a36b89d5d86f8952b22070f53bca4bf25">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_ALTERNATE</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1272</div></div>
<div class="ttc" id="group__button_html_gga9f5b77ec6305b4371baea749105bec13ab969f0ad28a4e285454c3dd95414e02c"><div class="ttname"><a href="group__button.html#gga9f5b77ec6305b4371baea749105bec13ab969f0ad28a4e285454c3dd95414e02c">RATBAG_BUTTON_ACTION_TYPE_SPECIAL</a></div><div class="ttdoc">Button triggers a mouse-specific special function. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1208</div></div>
<div class="ttc" id="group__led_html_ga1b4f360abe5a0617b26dd47d22a582f9"><div class="ttname"><a href="group__led.html#ga1b4f360abe5a0617b26dd47d22a582f9">ratbag_led_set_brightness</a></div><div class="ttdeci">enum ratbag_error_code ratbag_led_set_brightness(struct ratbag_led *led, unsigned int brightness)</div><div class="ttdoc">If the LED&amp;#39;s mode is RATBAG_LED_CYCLE or RATBAG_LED_BREATHING then this function sets the LED brightn...</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a5a59741e9f83d956b2ed3f4a2c572dd2"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a5a59741e9f83d956b2ed3f4a2c572dd2">RATBAG_BUTTON_TYPE_RESOLUTION_CYCLE_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1157</div></div>
<div class="ttc" id="group__device_html_gacb6674aea50753e1ce30fb0a2bcf4bc8"><div class="ttname"><a href="group__device.html#gacb6674aea50753e1ce30fb0a2bcf4bc8">ratbag_device_unref</a></div><div class="ttdeci">struct ratbag_device * ratbag_device_unref(struct ratbag_device *device)</div><div class="ttdoc">Dereference the ratbag device. </div></div>
<div class="ttc" id="group__device_html_ggadac0b3995c97da4276a6f21ecadecedfa950d081db409d31604b86d0a0087fb45"><div class="ttname"><a href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfa950d081db409d31604b86d0a0087fb45">RATBAG_DEVICE_CAP_BUTTON_KEY</a></div><div class="ttdoc">The device supports assigning button numbers, key events or key + modifier combinations. </div><div class="ttdef"><b>Definition:</b> libratbag.h:515</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a992cf85a6d69128e42b2038ffe006740"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a992cf85a6d69128e42b2038ffe006740">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_CYCLE_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1268</div></div>
<div class="ttc" id="group__resolution_html_gadf53fe8bfc5fd3272073d11e90a125c8"><div class="ttname"><a href="group__resolution.html#gadf53fe8bfc5fd3272073d11e90a125c8">ratbag_resolution_is_default</a></div><div class="ttdeci">int ratbag_resolution_is_default(const struct ratbag_resolution *resolution)</div><div class="ttdoc">Check if the resolution mode is the default one in this profile. </div></div>
<div class="ttc" id="group__device_html_ggadac0b3995c97da4276a6f21ecadecedfa5272595d43de2ecb86551be9d20bad6f"><div class="ttname"><a href="group__device.html#ggadac0b3995c97da4276a6f21ecadecedfa5272595d43de2ecb86551be9d20bad6f">RATBAG_DEVICE_CAP_NONE</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:492</div></div>
<div class="ttc" id="structratbag__color_html_a533a55f67764eef824454c2651168e4a"><div class="ttname"><a href="structratbag__color.html#a533a55f67764eef824454c2651168e4a">ratbag_color::green</a></div><div class="ttdeci">unsigned int green</div><div class="ttdef"><b>Definition:</b> libratbag.h:140</div></div>
<div class="ttc" id="group__led_html_ggade0742d37e151927d6bc08e37e83c930a87600e3a9f3349f9c27497ded26ca170"><div class="ttname"><a href="group__led.html#ggade0742d37e151927d6bc08e37e83c930a87600e3a9f3349f9c27497ded26ca170">RATBAG_LED_TYPE_SIDE</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1368</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473ab74802c2069025c7b76431538a9a51ea"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473ab74802c2069025c7b76431538a9a51ea">RATBAG_BUTTON_ACTION_SPECIAL_RATCHET_MODE_SWITCH</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1265</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a3da43a68518921c1617be68c953d0c9f"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a3da43a68518921c1617be68c953d0c9f">RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_LEFT</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1261</div></div>
<div class="ttc" id="group__resolution_html_ga398d09762ac2e7bd2b8f29770f1b3ae7"><div class="ttname"><a href="group__resolution.html#ga398d09762ac2e7bd2b8f29770f1b3ae7">ratbag_resolution_set_active</a></div><div class="ttdeci">enum ratbag_error_code ratbag_resolution_set_active(struct ratbag_resolution *resolution)</div><div class="ttdoc">Activate the given resolution mode. </div></div>
<div class="ttc" id="group__button_html_ga9f5b77ec6305b4371baea749105bec13"><div class="ttname"><a href="group__button.html#ga9f5b77ec6305b4371baea749105bec13">ratbag_button_action_type</a></div><div class="ttdeci">ratbag_button_action_type</div><div class="ttdoc">The type assigned to a button. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1191</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a3f34fbc88fcda99c49ab9b93bff1def0"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a3f34fbc88fcda99c49ab9b93bff1def0">RATBAG_BUTTON_TYPE_WHEEL_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1145</div></div>
<div class="ttc" id="group__led_html_ga539a6d3e5721132efe001f8b6f18b801"><div class="ttname"><a href="group__led.html#ga539a6d3e5721132efe001f8b6f18b801">ratbag_profile_get_led</a></div><div class="ttdeci">struct ratbag_led * ratbag_profile_get_led(struct ratbag_profile *profile, unsigned int index)</div><div class="ttdoc">Return a reference to the LED given by the index. </div></div>
<div class="ttc" id="group__button_html_gaa4f923df7f8228334ca202a404df7af3"><div class="ttname"><a href="group__button.html#gaa4f923df7f8228334ca202a404df7af3">ratbag_button_macro_get_event_key</a></div><div class="ttdeci">int ratbag_button_macro_get_event_key(struct ratbag_button_macro *macro, unsigned int index)</div><div class="ttdoc">If the event stored at the given index is RATBAG_MACRO_EVENT_KEY_PRESSED or RATBAG_MACRO_EVENT_KEY_RE...</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a6e403e17fb115525dba21cf59f2d1607"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a6e403e17fb115525dba21cf59f2d1607">RATBAG_BUTTON_TYPE_WHEEL_DOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1146</div></div>
<div class="ttc" id="group__button_html_ga57b7c5582b9a92c08cc70dffa7bbf3c9"><div class="ttname"><a href="group__button.html#ga57b7c5582b9a92c08cc70dffa7bbf3c9">ratbag_button_get_user_data</a></div><div class="ttdeci">void * ratbag_button_get_user_data(const struct ratbag_button *button)</div><div class="ttdoc">Get the caller-specific data associated with this button, if any. </div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2ad47127aaee5e28f4644556f72d60d6fa"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ad47127aaee5e28f4644556f72d60d6fa">RATBAG_BUTTON_TYPE_PINKIE2</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1154</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a1582729ba01270530482fb312fd26650"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a1582729ba01270530482fb312fd26650">RATBAG_BUTTON_ACTION_SPECIAL_PROFILE_DOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1279</div></div>
<div class="ttc" id="group__base_html_ga554a9d5ef77b8012f6f38e6d82de15bf"><div class="ttname"><a href="group__base.html#ga554a9d5ef77b8012f6f38e6d82de15bf">ratbag_unref</a></div><div class="ttdeci">struct ratbag * ratbag_unref(struct ratbag *ratbag)</div><div class="ttdoc">Dereference the ratbag context. </div></div>
<div class="ttc" id="group__button_html_gga212d6f42b701a7795c73a5a1caba02fbae037921092a1d9a7cb2e2cea7edd4195"><div class="ttname"><a href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fbae037921092a1d9a7cb2e2cea7edd4195">RATBAG_MACRO_EVENT_KEY_PRESSED</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1590</div></div>
<div class="ttc" id="group__led_html_gade0742d37e151927d6bc08e37e83c930"><div class="ttname"><a href="group__led.html#gade0742d37e151927d6bc08e37e83c930">ratbag_led_type</a></div><div class="ttdeci">ratbag_led_type</div><div class="ttdoc">LED types, usually based on their physical location. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1365</div></div>
<div class="ttc" id="group__button_html_ga30d5f9eb5b66d54686aa0f303cd45bc0"><div class="ttname"><a href="group__button.html#ga30d5f9eb5b66d54686aa0f303cd45bc0">ratbag_button_set_button</a></div><div class="ttdeci">enum ratbag_error_code ratbag_button_set_button(struct ratbag_button *button, unsigned int btn)</div><div class="ttdoc">See ratbag_button_get_button() for a description of the button number. </div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a7bca635d9025f6900dba449bccda3d3d"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a7bca635d9025f6900dba449bccda3d3d">RATBAG_BUTTON_TYPE_UNKNOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1132</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473af61126c18363c2aa63cc626f94ec10f1"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473af61126c18363c2aa63cc626f94ec10f1">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1270</div></div>
<div class="ttc" id="group__led_html_gab5cd5a96754b67cd3bc542cb5775d260"><div class="ttname"><a href="group__led.html#gab5cd5a96754b67cd3bc542cb5775d260">ratbag_led_unref</a></div><div class="ttdeci">struct ratbag_led * ratbag_led_unref(struct ratbag_led *led)</div><div class="ttdoc">Dereference the ratbag led. </div></div>
<div class="ttc" id="group__device_html_gab463581e68404f6362537b27744fdd04"><div class="ttname"><a href="group__device.html#gab463581e68404f6362537b27744fdd04">ratbag_device_get_name</a></div><div class="ttdeci">const char * ratbag_device_get_name(const struct ratbag_device *device)</div></div>
<div class="ttc" id="group__profile_html_ga64451f65602cdf5805792c1ab9e3182f"><div class="ttname"><a href="group__profile.html#ga64451f65602cdf5805792c1ab9e3182f">ratbag_profile_get_button</a></div><div class="ttdeci">struct ratbag_button * ratbag_profile_get_button(struct ratbag_profile *profile, unsigned int index)</div><div class="ttdoc">Return a reference to the button given by the index. </div></div>
<div class="ttc" id="libratbag_8h_html_ab2787026c82761eee155214ad8d5e54c"><div class="ttname"><a href="libratbag_8h.html#ab2787026c82761eee155214ad8d5e54c">LIBRATBAG_ATTRIBUTE_PRINTF</a></div><div class="ttdeci">#define LIBRATBAG_ATTRIBUTE_PRINTF(_format, _args)</div><div class="ttdef"><b>Definition:</b> libratbag.h:35</div></div>
<div class="ttc" id="structratbag__device_html"><div class="ttname"><a href="structratbag__device.html">ratbag_device</a></div><div class="ttdoc">A ratbag context represents one single device. </div><div class="ttdef"><b>Definition:</b> libratbag.h:85</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2aac44c2a2f7c31266a8ffbe566efcc8b4"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aac44c2a2f7c31266a8ffbe566efcc8b4">RATBAG_BUTTON_TYPE_PROFILE_DOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1164</div></div>
<div class="ttc" id="group__button_html_gab0171d0aa19b40efc480890440baed39"><div class="ttname"><a href="group__button.html#gab0171d0aa19b40efc480890440baed39">ratbag_button_set_macro</a></div><div class="ttdeci">enum ratbag_error_code ratbag_button_set_macro(struct ratbag_button *button, const struct ratbag_button_macro *macro)</div><div class="ttdoc">Sets the button&amp;#39;s action to RATBAG_BUTTON_ACTION_TYPE_MACRO and assigns the given macro to this butto...</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a41d19cc4ffbc0817965b67f44e120c16"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a41d19cc4ffbc0817965b67f44e120c16">RATBAG_BUTTON_ACTION_SPECIAL_PROFILE_CYCLE_DOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1277</div></div>
<div class="ttc" id="group__button_html_gga212d6f42b701a7795c73a5a1caba02fbaa48c811d550da53cf698132131fe1d51"><div class="ttname"><a href="group__button.html#gga212d6f42b701a7795c73a5a1caba02fbaa48c811d550da53cf698132131fe1d51">RATBAG_MACRO_EVENT_KEY_RELEASED</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1591</div></div>
<div class="ttc" id="group__device_html_ga3b04791bc03f4f5ea6691ca346cf8c18"><div class="ttname"><a href="group__device.html#ga3b04791bc03f4f5ea6691ca346cf8c18">ratbag_device_get_num_buttons</a></div><div class="ttdeci">unsigned int ratbag_device_get_num_buttons(struct ratbag_device *device)</div><div class="ttdoc">Return the number of buttons available on this device. </div></div>
<div class="ttc" id="group__led_html_ga5c0777440a1b33e864f6513ea8ddbb2e"><div class="ttname"><a href="group__led.html#ga5c0777440a1b33e864f6513ea8ddbb2e">ratbag_led_set_effect_rate</a></div><div class="ttdeci">enum ratbag_error_code ratbag_led_set_effect_rate(struct ratbag_led *led, unsigned int rate)</div><div class="ttdoc">If the LED&amp;#39;s mode is RATBAG_LED_CYCLE or RATBAG_LED_BREATHING then this function sets the LED rate in...</div></div>
<div class="ttc" id="group__resolution_html_ga8d3a916a9e79b92f271bb4a1758e74d7"><div class="ttname"><a href="group__resolution.html#ga8d3a916a9e79b92f271bb4a1758e74d7">ratbag_resolution_get_dpi_y</a></div><div class="ttdeci">int ratbag_resolution_get_dpi_y(struct ratbag_resolution *resolution)</div><div class="ttdoc">Get the y resolution in DPI for the resolution mode. </div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a9ac6b495a4398b5d762e8241742562c9"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a9ac6b495a4398b5d762e8241742562c9">RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_DOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1271</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2ac259042c3f1e3706c03f2313d7707922"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2ac259042c3f1e3706c03f2313d7707922">RATBAG_BUTTON_TYPE_PINKIE</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1153</div></div>
<div class="ttc" id="group__led_html_ggad1be32cfd9fa5b3a423211f11bed67d1a4ad514c9f66e6de6261b849f2c7bc47f"><div class="ttname"><a href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a4ad514c9f66e6de6261b849f2c7bc47f">RATBAG_LED_ON</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1356</div></div>
<div class="ttc" id="group__base_html_ga3986d618589de98ea54a60087c349824"><div class="ttname"><a href="group__base.html#ga3986d618589de98ea54a60087c349824">ratbag_ref</a></div><div class="ttdeci">struct ratbag * ratbag_ref(struct ratbag *ratbag)</div><div class="ttdoc">Add a reference to the context. </div></div>
<div class="ttc" id="group__button_html_gaf57897e6fc96fc6ff321c244b501f752"><div class="ttname"><a href="group__button.html#gaf57897e6fc96fc6ff321c244b501f752">ratbag_button_macro_unref</a></div><div class="ttdeci">struct ratbag_button_macro * ratbag_button_macro_unref(struct ratbag_button_macro *macro)</div><div class="ttdoc">Dereference the ratbag button macro. </div></div>
<div class="ttc" id="group__profile_html_gab5f9d8032769e9f84e78f8e02187eb91"><div class="ttname"><a href="group__profile.html#gab5f9d8032769e9f84e78f8e02187eb91">ratbag_profile_unref</a></div><div class="ttdeci">struct ratbag_profile * ratbag_profile_unref(struct ratbag_profile *profile)</div><div class="ttdoc">Dereference the ratbag profile. </div></div>
<div class="ttc" id="group__base_html_gga778f6aa9aeee462860007415895baec1a53c6de635fca4186074550e8f7bcc008"><div class="ttname"><a href="group__base.html#gga778f6aa9aeee462860007415895baec1a53c6de635fca4186074550e8f7bcc008">RATBAG_ERROR_CAPABILITY</a></div><div class="ttdoc">Insufficient capabilities. </div><div class="ttdef"><b>Definition:</b> libratbag.h:181</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2a8042afc70b84fdf7d7d21b7d949d4b9c"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2a8042afc70b84fdf7d7d21b7d949d4b9c">RATBAG_BUTTON_TYPE_LEFT</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1135</div></div>
<div class="ttc" id="group__led_html_gaf0ab94fd921904e83758dc6c0c60d94d"><div class="ttname"><a href="group__led.html#gaf0ab94fd921904e83758dc6c0c60d94d">ratbag_led_get_brightness</a></div><div class="ttdeci">unsigned int ratbag_led_get_brightness(struct ratbag_led *led)</div><div class="ttdoc">This function returns the LED brightness. </div></div>
<div class="ttc" id="structratbag_html"><div class="ttname"><a href="structratbag.html">ratbag</a></div><div class="ttdoc">A handle for accessing ratbag contexts. </div></div>
<div class="ttc" id="group__button_html_gafcdd5e2cf88f351085b341ffbb909fd2"><div class="ttname"><a href="group__button.html#gafcdd5e2cf88f351085b341ffbb909fd2">ratbag_button_type</a></div><div class="ttdeci">ratbag_button_type</div><div class="ttdoc">Button types describing the physical button. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1131</div></div>
<div class="ttc" id="group__button_html_ggafcdd5e2cf88f351085b341ffbb909fd2aa3a4a64a92a0ab82e6e38a782ce07dbb"><div class="ttname"><a href="group__button.html#ggafcdd5e2cf88f351085b341ffbb909fd2aa3a4a64a92a0ab82e6e38a782ce07dbb">RATBAG_BUTTON_TYPE_PROFILE_CYCLE_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1162</div></div>
<div class="ttc" id="group__base_html_gga778f6aa9aeee462860007415895baec1aa4181dfc60a9fd47d85fcf05cc62e9a2"><div class="ttname"><a href="group__base.html#gga778f6aa9aeee462860007415895baec1aa4181dfc60a9fd47d85fcf05cc62e9a2">RATBAG_ERROR_VALUE</a></div><div class="ttdoc">Invalid value or value range. </div><div class="ttdef"><b>Definition:</b> libratbag.h:187</div></div>
<div class="ttc" id="group__base_html_ga6e7b4b977b8698188646ff9ec9c0c1fc"><div class="ttname"><a href="group__base.html#ga6e7b4b977b8698188646ff9ec9c0c1fc">ratbag_get_user_data</a></div><div class="ttdeci">void * ratbag_get_user_data(const struct ratbag *ratbag)</div><div class="ttdoc">Get the caller-specific data associated with this context, if any. </div></div>
<div class="ttc" id="structratbag__color_html_ab83a445c8fcb5da4b3a6d30f22973732"><div class="ttname"><a href="structratbag__color.html#ab83a445c8fcb5da4b3a6d30f22973732">ratbag_color::blue</a></div><div class="ttdeci">unsigned int blue</div><div class="ttdef"><b>Definition:</b> libratbag.h:141</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473a6eb414e7c080a5aee427dee1b7b65689"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473a6eb414e7c080a5aee427dee1b7b65689">RATBAG_BUTTON_ACTION_SPECIAL_BATTERY_LEVEL</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1285</div></div>
<div class="ttc" id="group__button_html_gga9f5b77ec6305b4371baea749105bec13ab08c3d054f1d6e7ecc4fdb9b9b20484a"><div class="ttname"><a href="group__button.html#gga9f5b77ec6305b4371baea749105bec13ab08c3d054f1d6e7ecc4fdb9b9b20484a">RATBAG_BUTTON_ACTION_TYPE_BUTTON</a></div><div class="ttdoc">Button sends numeric button events. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1203</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473ae20a7f522c04f61aaa8c8f465d18aa01"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473ae20a7f522c04f61aaa8c8f465d18aa01">RATBAG_BUTTON_ACTION_SPECIAL_PROFILE_UP</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1278</div></div>
<div class="ttc" id="group__base_html_ga778f6aa9aeee462860007415895baec1"><div class="ttname"><a href="group__base.html#ga778f6aa9aeee462860007415895baec1">ratbag_error_code</a></div><div class="ttdeci">ratbag_error_code</div><div class="ttdoc">Error codes used by libratbag. </div><div class="ttdef"><b>Definition:</b> libratbag.h:168</div></div>
<div class="ttc" id="structratbag__button_html"><div class="ttname"><a href="structratbag__button.html">ratbag_button</a></div><div class="ttdoc">Represents a button on the device. </div><div class="ttdef"><b>Definition:</b> libratbag.h:105</div></div>
<div class="ttc" id="group__base_html_ga8ea38d087793faa644e44d36caf41a04"><div class="ttname"><a href="group__base.html#ga8ea38d087793faa644e44d36caf41a04">ratbag_log_handler</a></div><div class="ttdeci">void(* ratbag_log_handler)(struct ratbag *ratbag, enum ratbag_log_priority priority, const char *format, va_list args) LIBRATBAG_ATTRIBUTE_PRINTF(3</div><div class="ttdoc">Log handler type for custom logging. </div><div class="ttdef"><b>Definition:</b> libratbag.h:236</div></div>
<div class="ttc" id="group__button_html_gga9f5b77ec6305b4371baea749105bec13a89b777e45740ba18398c528d85351352"><div class="ttname"><a href="group__button.html#gga9f5b77ec6305b4371baea749105bec13a89b777e45740ba18398c528d85351352">RATBAG_BUTTON_ACTION_TYPE_MACRO</a></div><div class="ttdoc">Button sends a user-defined key or button sequence. </div><div class="ttdef"><b>Definition:</b> libratbag.h:1216</div></div>
<div class="ttc" id="group__button_html_ga7ac445a5532b67ab03f8447a41881faf"><div class="ttname"><a href="group__button.html#ga7ac445a5532b67ab03f8447a41881faf">ratbag_button_get_macro</a></div><div class="ttdeci">struct ratbag_button_macro * ratbag_button_get_macro(struct ratbag_button *button)</div><div class="ttdoc">If a button&amp;#39;s action is RATBAG_BUTTON_ACTION_TYPE_MACRO, this function returns the current button mac...</div></div>
<div class="ttc" id="group__led_html_ggade0742d37e151927d6bc08e37e83c930a8d0984c0f2f5e21fa7a85adca3cf6ace"><div class="ttname"><a href="group__led.html#ggade0742d37e151927d6bc08e37e83c930a8d0984c0f2f5e21fa7a85adca3cf6ace">RATBAG_LED_TYPE_LOGO</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1367</div></div>
<div class="ttc" id="group__led_html_ggad1be32cfd9fa5b3a423211f11bed67d1a3a0c208dc717aa497be7ce44f1d4140f"><div class="ttname"><a href="group__led.html#ggad1be32cfd9fa5b3a423211f11bed67d1a3a0c208dc717aa497be7ce44f1d4140f">RATBAG_LED_OFF</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1355</div></div>
<div class="ttc" id="structratbag__color_html"><div class="ttname"><a href="structratbag__color.html">ratbag_color</a></div><div class="ttdoc">Represents LED color in RGB format. </div><div class="ttdef"><b>Definition:</b> libratbag.h:138</div></div>
<div class="ttc" id="group__button_html_gga8158a0f03a168268ec347f0a96699473ab2d432e782ef10e3989acdbfc1eec1e1"><div class="ttname"><a href="group__button.html#gga8158a0f03a168268ec347f0a96699473ab2d432e782ef10e3989acdbfc1eec1e1">RATBAG_BUTTON_ACTION_SPECIAL_UNKNOWN</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:1256</div></div>
<div class="ttc" id="group__base_html_ga5ce9f80e3f90800d9260af0834046451"><div class="ttname"><a href="group__base.html#ga5ce9f80e3f90800d9260af0834046451">ratbag_device_new_from_udev_device</a></div><div class="ttdeci">enum ratbag_error_code ratbag_device_new_from_udev_device(struct ratbag *ratbag, struct udev_device *udev_device, struct ratbag_device **device)</div><div class="ttdoc">Create a new ratbag context from the given udev device. </div></div>
<div class="ttc" id="group__base_html_gga23609c083d2bf82a65db8c780fea0125a1ef357dad433d3d5326e6037fcfd3640"><div class="ttname"><a href="group__base.html#gga23609c083d2bf82a65db8c780fea0125a1ef357dad433d3d5326e6037fcfd3640">RATBAG_LOG_PRIORITY_DEBUG</a></div><div class="ttdef"><b>Definition:</b> libratbag.h:217</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- HTML footer for doxygen 1.8.8-->
<!-- start footer part -->
</div>
</div>
</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>
Generated on Wed Jan 10 2018 18:56:06 for libratbag by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>