summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-03-10 21:45:37 +0100
committerskal <pascal.massimino@gmail.com>2026-03-10 21:45:37 +0100
commitd5c6fa02d9c945576a09f36fc4cd440c55043749 (patch)
treeeda39e08fc85055fa93ea4883e0e98faa4ce27d4 /tools
parent3547424b8c5f3884f84d16fb3f08b47965d62428 (diff)
fix(seq_compiler): map NtscYiq to ntsc_effect.h
Add CLASS_TO_HEADER override map for classes that share a header file. NtscYiq lives in ntsc_effect.h alongside Ntsc. handoff(Gemini): seq_compiler.py fix for shared-header effect classes.
Diffstat (limited to 'tools')
-rwxr-xr-xtools/seq_compiler.py15
1 files changed, 11 insertions, 4 deletions
diff --git a/tools/seq_compiler.py b/tools/seq_compiler.py
index 2e51574..e3f93af 100755
--- a/tools/seq_compiler.py
+++ b/tools/seq_compiler.py
@@ -391,12 +391,19 @@ def generate_cpp(seq: SequenceDecl, sorted_effects: List[EffectDecl],
class_name += f'_{seq_index}_Sequence'
# Generate includes
+ # Map class names that share a header file
+ CLASS_TO_HEADER = {
+ 'NtscYiq': 'ntsc',
+ }
includes = set()
for effect in seq.effects:
- # Convert ClassName to snake_case header
- header = re.sub('([A-Z])', r'_\1', effect.class_name).lower().lstrip('_')
- if header.endswith('_effect'):
- header = header[:-7] # Remove _effect suffix
+ if effect.class_name in CLASS_TO_HEADER:
+ header = CLASS_TO_HEADER[effect.class_name]
+ else:
+ # Convert ClassName to snake_case header
+ header = re.sub('([A-Z])', r'_\1', effect.class_name).lower().lstrip('_')
+ if header.endswith('_effect'):
+ header = header[:-7] # Remove _effect suffix
includes.add(f'#include "effects/{header}_effect.h"')
cpp = f'''// Generated by seq_compiler.py