Skip to content

Commit

Permalink
doc: add the documentation infrastructure for pipewire modules
Browse files Browse the repository at this point in the history
All empty pages for now but at least this makes them show up in the
documentation.
  • Loading branch information
whot authored and wtay committed Jun 25, 2021
1 parent 9956637 commit f181232
Show file tree
Hide file tree
Showing 22 changed files with 130 additions and 0 deletions.
9 changes: 9 additions & 0 deletions doc/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,16 @@ endforeach
foreach h : pipewire_sources
inputs += meson.source_root() / 'src' / 'pipewire' / h
endforeach
foreach h : module_sources
inputs += meson.source_root() / 'src' / 'modules' / h
endforeach
inputs += meson.source_root() / 'test' / 'pwtest.h'

find = find_program('find', required: false)
if find.found()

endif

# SPA headers use static inline functions. Doxygen doesn't extract those
# unless we have EXTRACT_STATIC set - but we don't want it to extract
# everything in the rest of the tree.
Expand Down Expand Up @@ -50,6 +58,7 @@ extra_docs = [
'pipewire-design.dox',
'pipewire-daemon.dox',
'pipewire-library.dox',
'pipewire-modules.dox',
'pipewire-tools.dox',
'pipewire-session-manager.dox',
'pipewire-objects-design.dox',
Expand Down
40 changes: 40 additions & 0 deletions doc/pipewire-modules.dox
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
/**

\page page_pipewire_modules PipeWire Modules

A PipeWire module is effectively a client provided in a `.so` file that
shares the \ref pw_context with the loading entity. Usually modules are
loaded when they are listed in the configuration files.

A module's entry point is the `pipewire__module_init` function, see \ref
PIPEWIRE_SYMBOL_MODULE_INIT.

\code
int pipewire__module_init(struct pw_impl_module *module, const char *args).`
\endcode


List of known modules:

- \subpage page_module_access
- \subpage page_module_adapter
- \subpage page_module_client_device
- \subpage page_module_client_node
- \subpage page_module_echo_cancel
- \subpage page_module_filter_chain
- \subpage page_module_link_factory
- \subpage page_module_loopback
- \subpage page_module_metadata
- \subpage page_module_portal
- \subpage page_module_profiler
- \subpage page_module_protocol_native
- \subpage page_module_protocol_pulse
- \subpage page_module_protocol_simple
- \subpage page_module_pulse_tunnel
- \subpage page_module_rt
- \subpage page_module_rtkit
- \subpage page_module_session_manager
- \subpage page_module_zeroconf_discover


*/
24 changes: 24 additions & 0 deletions src/modules/meson.build
Original file line number Diff line number Diff line change
@@ -1,5 +1,29 @@
subdir('spa')

# The list of "main" source files for modules, the ones that have the
# doxygen documentation
module_sources = [
'module-access.c',
'module-adapter.c',
'module-client-device.c',
'module-client-node.c',
'module-echo-cancel.c',
'module-filter-chain.c',
'module-link-factory.c',
'module-loopback.c',
'module-metadata.c',
'module-portal.c',
'module-profiler.c',
'module-protocol-native.c',
'module-protocol-pulse.c',
'module-protocol-simple.c',
'module-pulse-tunnel.c',
'module-rt.c',
'module-rtkit.c',
'module-session-manager.c',
'module-zeroconf-discover.c',
]

pipewire_module_access = shared_library('pipewire-module-access', [ 'module-access.c' ],
include_directories : [configinc, spa_inc],
install : true,
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-access.c
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@
#include <pipewire/impl.h>
#include <pipewire/private.h>

/** \page page_module_access PipeWire Module: Access
*/

#define NAME "access"

#define MODULE_USAGE "[ access.force=flatpak ] " \
Expand Down
2 changes: 2 additions & 0 deletions src/modules/module-adapter.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@
#include "modules/spa/spa-node.h"
#include "module-adapter/adapter.h"

/** \page page_module_adapter PipeWire Module: Adapter
*/
#define NAME "adapter"

#define FACTORY_USAGE SPA_KEY_FACTORY_NAME"=<factory-name> " \
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-client-device.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,9 @@

#define NAME "client-device"

/** \page page_module_client_device PipeWire Module: Client Device
*/

static const struct spa_dict_item module_props[] = {
{ PW_KEY_MODULE_AUTHOR, "Wim Taymans <wim.taymans@gmail.com>" },
{ PW_KEY_MODULE_DESCRIPTION, "Allow clients to create and control remote devices" },
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-client-node.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@
#include "module-client-node/v0/client-node.h"
#include "module-client-node/client-node.h"

/** \page page_module_client_node PipeWire Module: Client Node
*/

#define NAME "client-node"

static const struct spa_dict_item module_props[] = {
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-echo-cancel.c
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,9 @@

#include "module-echo-cancel/echo-cancel.h"

/** \page page_module_echo_cancel PipeWire Module: Echo Cancel
*/

#define NAME "echo-cancel"
/* Hopefully this is enough for any combination of AEC engine and resampler
* input requirement for rate matching */
Expand Down
4 changes: 4 additions & 0 deletions src/modules/module-filter-chain.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,10 @@

#define NAME "filter-chain"

/**
* \page page_module_filter_chain PipeWire Module: Filter-Chain
*
*/
static const struct spa_dict_item module_props[] = {
{ PW_KEY_MODULE_AUTHOR, "Wim Taymans <wim.taymans@gmail.com>" },
{ PW_KEY_MODULE_DESCRIPTION, "Create filter chain streams" },
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-link-factory.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@

#include <pipewire/impl.h>

/** \page page_module_link_factory PipeWire Module: Link Factory
*/

#define NAME "link-factory"

#define FACTORY_USAGE PW_KEY_LINK_OUTPUT_NODE"=<output-node> " \
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-loopback.c
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,9 @@
#include <pipewire/impl.h>
#include <pipewire/extensions/profiler.h>

/** \page page_module_loopback PipeWire Module: Loopback
*/

#define NAME "loopback"

static const struct spa_dict_item module_props[] = {
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-metadata.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@
#include <pipewire/impl.h>
#include <pipewire/extensions/metadata.h>

/** \page page_module_metadata PipeWire Module: Metadata
*/

#define NAME "metadata"

static const struct spa_dict_item module_props[] = {
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-portal.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,9 @@
#include "pipewire/utils.h"
#include "pipewire/private.h"

/** \page page_module_portal PipeWire Module: Portal
*/

#define NAME "portal"

struct impl {
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-profiler.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,9 @@
#include <pipewire/impl.h>
#include <pipewire/extensions/profiler.h>

/** \page page_module_profiler PipeWire Module: Profiler
*/

#define NAME "profiler"

#define TMP_BUFFER (16 * 1024)
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-protocol-native.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,9 @@
#include <spa/debug/pod.h>
#include <spa/debug/types.h>

/** \page page_module_protocol_native PipeWire Module: Protocol Native
*/

#define NAME "protocol-native"

#ifndef UNIX_PATH_MAX
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-protocol-pulse.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,9 @@

#include "module-protocol-pulse/pulse-server.h"

/** \page page_module_protocol_pulse PipeWire Module: Protocol Pulse
*/

#define NAME "protocol-pulse"

#define MODULE_USAGE PW_PROTOCOL_PULSE_USAGE
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-protocol-simple.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,9 @@

#include <pipewire/impl.h>

/** \page page_module_protocol_simple PipeWire Module: Protocol Simple
*/

#define NAME "protocol-simple"

#define DEFAULT_PORT 4711
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-pulse-tunnel.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@

#include <pulse/pulseaudio.h>

/** \page page_module_pulse_tunnel PipeWire Module: Pulse Tunnel
*/

#define NAME "pulse-tunnel"

#define MODULE_USAGE "[ remote.name=<remote> ] " \
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-rt.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,9 @@

#include "config.h"

/** \page page_module_rt PipeWire Module: RT
*/

#define DEFAULT_NICE_LEVEL -11
#define DEFAULT_RT_PRIO 88
#define DEFAULT_RT_TIME_SOFT 200000
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-rtkit.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,9 @@

#include <pipewire/impl.h>

/** \page page_module_rtkit PipeWire Module: RTKit
*/

#define DEFAULT_NICE_LEVEL -11
#define DEFAULT_RT_PRIO 88
#define DEFAULT_RT_TIME_SOFT 200000
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-session-manager.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@

#include <pipewire/impl.h>

/** \page page_module_session_manager PipeWire Module: Session Manager
*/

/* client-endpoint.c */
int client_endpoint_factory_init(struct pw_impl_module *module);
/* client-session.c */
Expand Down
3 changes: 3 additions & 0 deletions src/modules/module-zeroconf-discover.c
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@

#include "module-zeroconf-discover/avahi-poll.h"

/** \page page_module_zeroconf_discover PipeWire Module: Zeroconf Discover
*/

#define NAME "zeroconf-discover"

#define MODULE_USAGE " "
Expand Down

0 comments on commit f181232

Please sign in to comment.