-
Notifications
You must be signed in to change notification settings - Fork 307
Expand file tree
/
Copy pathindex.html
More file actions
124 lines (117 loc) · 5.75 KB
/
Copy pathindex.html
File metadata and controls
124 lines (117 loc) · 5.75 KB
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
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>libCEC — API documentation</title>
<style>
:root {
--bg: #f6f8fa; --card: #ffffff; --fg: #1f2328; --muted: #57606a;
--border: #d0d7de; --accent: #0969da; --accent-fg: #ffffff;
--shadow: 0 1px 3px rgba(27,31,36,.12), 0 8px 24px rgba(27,31,36,.06);
}
@media (prefers-color-scheme: dark) {
:root {
--bg: #0d1117; --card: #161b22; --fg: #e6edf3; --muted: #9198a1;
--border: #30363d; --accent: #4493f8; --accent-fg: #0d1117;
--shadow: 0 1px 3px rgba(1,4,9,.6), 0 8px 24px rgba(1,4,9,.4);
}
}
* { box-sizing: border-box; }
body {
margin: 0; background: var(--bg); color: var(--fg);
font: 16px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
}
.wrap { max-width: 960px; margin: 0 auto; padding: 4rem 1.25rem 5rem; }
header { margin-bottom: 3rem; }
.brand { display: block; height: auto; border-radius: 8px; margin-bottom: 1.5rem; }
.logo { font-size: 2.6rem; font-weight: 800; letter-spacing: -.02em; margin: 0; }
.logo span { color: var(--accent); }
.tagline { color: var(--muted); font-size: 1.15rem; margin: .6rem 0 0; max-width: 42rem; }
.grid {
display: grid; gap: 1.1rem;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
a.card {
display: flex; flex-direction: column; gap: .5rem;
background: var(--card); border: 1px solid var(--border); border-radius: 12px;
padding: 1.4rem 1.5rem; text-decoration: none; color: inherit;
box-shadow: var(--shadow); transition: transform .12s ease, border-color .12s ease;
}
a.card:hover { transform: translateY(-3px); border-color: var(--accent); }
.card .lang { font-size: 1.25rem; font-weight: 700; display: flex; align-items: center; gap: .55rem; }
.card .badge {
font: 600 .7rem/1 ui-monospace, SFMono-Regular, Menlo, monospace;
padding: .28rem .5rem; border-radius: 6px; background: var(--accent); color: var(--accent-fg);
}
.card .desc { color: var(--muted); font-size: .95rem; }
.card .pkg {
align-self: flex-start; color: var(--muted);
font: 600 .78rem/1 ui-monospace, SFMono-Regular, Menlo, monospace;
background: rgba(127,127,127,.14); padding: .32rem .5rem; border-radius: 6px;
}
.card .entry { color: var(--accent); font: 600 .82rem/1.4 ui-monospace, SFMono-Regular, Menlo, monospace; margin-top: auto; }
footer { margin-top: 3.5rem; color: var(--muted); font-size: .9rem; border-top: 1px solid var(--border); padding-top: 1.5rem; }
footer a { color: var(--accent); }
.note {
background: var(--card); border: 1px solid var(--border); border-left: 3px solid var(--accent);
border-radius: 8px; padding: 1rem 1.25rem; margin: 2.5rem 0 0; color: var(--muted); font-size: .95rem;
}
.note code { font-size: .85em; background: rgba(127,127,127,.15); padding: .1em .4em; border-radius: 4px; }
</style>
</head>
<body>
<div class="wrap">
<header>
<img class="brand" src="assets/pulse-eight-logo.png" alt="Pulse-Eight" width="200" height="93">
<h1 class="logo">lib<span>CEC</span> <small style="font-size:1rem;color:var(--muted);font-weight:600;vertical-align:middle">API docs</small></h1>
<p class="tagline">
Cross-platform library for controlling CEC-capable HDMI hardware (TVs, AV
receivers) over the same core engine. All six interfaces below wrap one
API surface — <code>ICECAdapter</code> and the protocol types in
<code>cectypes.h</code>.
</p>
</header>
<div class="grid">
<a class="card" href="cpp/">
<div class="lang">C / C++ <span class="badge">Doxygen</span></div>
<div class="desc">The native interface. <code>ICECAdapter</code> (C++) and the <code>libcec_*</code> C API, plus every protocol enum and struct.</div>
<div class="entry">include/cec.h · cecc.h</div>
</a>
<a class="card" href="dotnet/">
<div class="lang">.NET <span class="badge">DocFX</span></div>
<div class="desc">The managed <code>CecSharp</code> binding (pure C# P/Invoke, net8.0) — Windows, Linux, macOS, RPi.</div>
<div class="pkg">dotnet add package LibCecSharp</div>
<div class="entry">CecSharp.LibCecSharp</div>
</a>
<a class="card" href="nodejs/">
<div class="lang">Node.js <span class="badge">TypeDoc</span></div>
<div class="desc">The native N-API addon — an <code>EventEmitter</code>-based <code>CecAdapter</code> with full TypeScript typings.</div>
<div class="pkg">npm install libcec</div>
<div class="entry">require('libcec')</div>
</a>
<a class="card" href="python/">
<div class="lang">Python <span class="badge">Sphinx</span></div>
<div class="desc">The SWIG-generated <code>cec</code> module, carrying the C++ interface docs into Python docstrings.</div>
<div class="entry">import cec</div>
</a>
<a class="card" href="rust/">
<div class="lang">Rust <span class="badge">rustdoc</span></div>
<div class="desc">The <code>libcec</code> crate — a safe <code>Connection</code> over the C API, with the raw FFI still in reach.</div>
<div class="pkg">cargo add libcec</div>
<div class="entry">use libcec::Connection</div>
</a>
</div>
<div class="note">
Every binding is a thin wrapper over the same core engine, so the concepts —
logical/physical addresses, device types, opcodes, power states — are shared.
The C/C++ reference documents them in the most depth; the others mirror them.
</div>
<footer>
Generated from the <a href="https://github.com/Pulse-Eight/libcec">Pulse-Eight/libcec</a>
source tree. libCEC is Copyright © Pulse-Eight Limited, dual-licensed (GPL-2.0-or-later / commercial).
</footer>
</div>
</body>
</html>