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
|
.\" vi: tw=80 ft=nroff
.\"
.\" BSD Zero Clause License
.\"
.\" Copyright (c) 2022 Thomas Voss
.\"
.\" Permission to use, copy, modify, and/or distribute this software for any
.\" purpose with or without fee is hereby granted.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
.\" REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
.\" AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
.\" INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
.\" LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
.\" OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\" PERFORMANCE OF THIS SOFTWARE.
.\"
.Dd $Mdocdate: November 14 2022 $
.Dt lux.h 0
.Os Linux
.Sh NAME
.Nm lux.h
.Nd query and manipulate screen brightness
.Sh SYNOPSIS
.In lux.h
.Sh DESCRIPTION
The
.Nm liblux
library is a C library
.Pq C++ compatible
that allows you to query information about and modify the state of the systems
display brightness.
The library defines a
.Vt lux_t
type which is used as an argument to all the library functions.
This struct contains relevant file descriptors and other cacheable information;
it’s fields are not intended to be accessed directly by the library user but
only by library functions.
.Pp
The
.Nm liblux
library offers three sets of functions, each with their own manual.
These sets of functions are used to allocate and free the
.Vt lux_t
structure, to query brightness information, and to modify brightness
information.
.Pp
The following functions deal with the allocation of library structures:
.Bl -bullet
.It
.Ft int
.Fn luxinit "lux_t *"
.It
.Ft void
.Fn luxfree "lux_t *"
.El
.Pp
The following functions deal with querying information regarding display
brightness:
.Bl -bullet
.It
.Ft int
.Fn luxget "lux_t *"
.It
.Ft int
.Fn luxmax "lux_t *"
.It
.Ft double
.Fn luxgetp "lux_t *"
.El
.Pp
The following functions deal with modifying display brightness:
.Bl -bullet
.It
.Ft int
.Fn luxset "lux_t *" int
.It
.Ft int
.Fn luxinc "lux_t *" int
.It
.Ft int
.Fn luxdec "lux_t *" int
.It
.Ft double
.Fn luxsetp "lux_t *" double
.It
.Ft double
.Fn luxincp "lux_t *" double
.It
.Ft double
.Fn luxdecp "lux_t *" double
.El
.Sh SEE ALSO
.Xr luxdec 3 ,
.Xr luxdecp 3 ,
.Xr luxfree 3 ,
.Xr luxget 3 ,
.Xr luxgetp 3 ,
.Xr luxinc 3 ,
.Xr luxincp 3 ,
.Xr luxinit 3 ,
.Xr luxmax 3 ,
.Xr luxset 3 ,
.Xr luxsetp 3
.Sh AUTHORS
.An Thomas Voss Aq Mt mail@thomasvoss.com
|