diff options
| author | Vito Caputo <vcaputo@pengaru.com> | 2023-01-11 16:03:12 -0800 | 
|---|---|---|
| committer | Vito Caputo <vcaputo@pengaru.com> | 2023-01-11 22:31:31 -0800 | 
| commit | 6153122a24e847ade9c9d2b84ef8dd125e2a772b (patch) | |
| tree | 04f457c9e94acbcd05fa77508853540835858a24 /src | |
| parent | b08baac7e388bf32fefd4f1ab129b28d5fc57aa9 (diff) | |
til: intrdouce a couple new module flags
TIL_MODULE_HERMETIC:
	There's likely to be some new modules that are more
	orchestration style components having external
	runtime dependencies.  Think stuff like a sequencer
	talking to GNU Rocket, or something that plays back
	pattern data from external files.
	Those would need a GNU Rocket process to talk to
	somewhere, or input pattern file paths.  So they
	shouldn't participate in stuff like random rtv shows
	unless they have some fallbacks for when the dependencies
	are unavailable.  For pattern data it's realistic to
	include some builtin patterns to fallback on, but we're
	not there yet.  So this flag when specified should opt
	out of things like rtv or checkers fill_module random
	selections.
TIL_MODULE_EXPERIMENTAL:
	Theres no current way to have knowingly
	unstable/unfinished modules available in-tree for
	development/collaboration purposes without having them
	also make stuff like rtv unstable.  Modules having this
	flag set should be excluded from random inclusion without
	a --experimental or some such runtime flag specified.
This commit only assigns values and names for the flags, it
doesn't implement anything.
Diffstat (limited to 'src')
| -rw-r--r-- | src/til.h | 4 | 
1 files changed, 3 insertions, 1 deletions
@@ -20,7 +20,9 @@ typedef struct til_setting_desc_t til_setting_desc_t;  typedef struct til_knob_t til_knob_t;  typedef struct til_stream_t til_stream_t; -#define TIL_MODULE_OVERLAYABLE	1u +#define TIL_MODULE_OVERLAYABLE	1u	/* module is appropriate for overlay use */ +#define TIL_MODULE_HERMETIC	2u	/* module doesn't work readily with other modules / requires manual settings */ +#define TIL_MODULE_EXPERIMENTAL	4u	/* module is buggy / unfinished */  typedef struct til_module_t {  	til_module_context_t *	(*create_context)(til_stream_t *stream, unsigned seed, unsigned ticks, unsigned n_cpus, char *path, til_setup_t *setup);  | 
