aboutsummaryrefslogtreecommitdiff
path: root/reqs.toml
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2024-09-18 14:54:48 +0200
committerLoek Le Blansch <loek@pipeframe.xyz>2024-09-18 14:54:48 +0200
commit0027f5df316892f121bb9f4b5b6b641646273ff0 (patch)
tree56edc328fd757ef1f22fa7aef99a7dd8bb3284bf /reqs.toml
parentf2e1083970107994a031a394198fde039bdf3b77 (diff)
add requirements + improve generated reqs.tex
Diffstat (limited to 'reqs.toml')
-rw-r--r--reqs.toml39
1 files changed, 30 insertions, 9 deletions
diff --git a/reqs.toml b/reqs.toml
index c05cf71..6645ea4 100644
--- a/reqs.toml
+++ b/reqs.toml
@@ -10,33 +10,46 @@
# (cross-)referenced from LaTeX by prefixing this ID with `req:` and
# substituting dots for colons (i.e. this requirement is referenced as
# \cref{req:audio:async-api}).
-[audio.async-api]
+[audio]
# Requirement type ('system' | 'user')
-type = 'system'
+type = 'user'
# MoSCoW priority ('must' | 'should' | 'could' | 'will not')
priority = 'must'
# Requirement body. Supports LaTeX formatting. (tip: use single quotes so
# backslash doesn't act as an escape character)
description = '''
-The public audio \gls{api} supports starting audio samples asynchronously
-(i.e.~fire and forget).
+The engine allows the game programmer to easily start, pause and stop
+background music, while simultaniously playing sound effects.
'''
-# Definition of done (user requirements only). If 'done' is a string, it is
-# treated as LaTeX code (like description), if it is a list of strings, each
-# item is treated as the ID of another requirement.
+# Definition of done. If 'done' is a string, it is treated as LaTeX code, if it
+# is a list of strings, each item is treated as the ID of another requirement,
+# and the references are checked before LaTeX runs.
+done = [
+ 'audio.async-api',
+ 'audio.handle',
+ 'audio.stream-mix',
+ 'audio.volume',
+]
#done = 'When I feel like it'
-#done = [ 'audio.handle', 'audio.stream-mix' ]
# Requirements that are no longer applicable should set `deleted` to `true`.
# This will make sure the requirements are numbered consistently across
# different document revisions.
#deleted = true
+[audio.async-api]
+type = 'system'
+priority = 'must'
+description = '''
+The public audio \gls{api} supports starting audio samples asynchronously
+(i.e.~fire and forget).
+'''
+
[audio.handle]
type = 'system'
priority = 'must'
description = '''
The public audio \gls{api} allows the game programmer to control (i.e.~play,
-pause and stop) audio samples after they are created/initialized.
+pause, resume and stop) audio samples after they are created/initialized.
'''
[audio.stream-mix]
@@ -46,6 +59,14 @@ description = '''
The audio system supports playing multiple audio streams simultaniously.
'''
+[audio.volume]
+type = 'system'
+priority = 'must'
+description = '''
+The public audio \gls{api} allows the game programmer to control the volume of
+audio samples.
+'''
+
[aux.license]
type = 'system'
priority = 'must'