Standardized Component Template
Every IO, Program, and Protocol component page must use the section order below. Keep the content concise and wrap lines at 80 characters when possible.
Status Labels
Every component page must state its implementation status on line 2 or 3 (after the title), using exactly one of the labels below:
**Status:** Stable— mature, tested, no known issues**Status:** Implemented— functional; may have known limitations**Status:** In Progress— under active development, partial coverage**Status:** Planned— designed or discussed but not yet coded
Required Section Order
Overview
Provide a functional description of the component. Explain what it does, when to use it, and any relevant behavior visible to descriptor authors.
Implementation
Document implementation details that matter to maintainers. Describe the main runtime flow, constraints, and notable interactions with handlers, bindings, or external devices.
Configuration
Show descriptor examples in the same YAML shape accepted by dawnpy.
Default examples should omit instance unless a fixed instance is part of
the documented behavior.
Kconfig
List any relevant build-time options here. If the component has no dedicated Kconfig switches worth documenting, say so explicitly.
YAML
Show the runtime descriptor example here.
ios:
- id: my_io
type: dummy
dtype: uint32
rw: true
config:
init_value: 123
programs:
- id: my_prog
type: stats_min
config:
inputs:
- my_input
outputs:
- my_output
protocols:
- id: my_proto
type: shell
config:
bindings:
- my_io
prompt: "dawn> "
External Control
This section is optional. Use it to list supported object-to-object control or
trigger relationships such as ControlIO and TriggerIO. When this
section is present, list each relevant interface explicitly and mark whether it
is supported.
Example
ControlIO: supportedTriggerIO: not supported
Brainstorming & Future Ideas
This section is optional. Use it for design notes, follow-up ideas, or known limitations that should not be presented as current behavior. Keep it forward-looking and avoid repeating current implementation facts.
Doxygen
End every component page with links to the generated Doxygen pages.
- `API Reference Index <../../api/index.html>`_
- `dawn::MyComponent <../../doxygen/classdawn_1_1MyComponent.html>`_