private void genCTask(ProcessSubcomponent ps, ThreadSubcomponent thread) { String threadName = thread.getComponentImplementation().getQualifiedName(); threadName = GenerationUtilsC.getGenerationCIdentifier(threadName); _mainCCode.addOutputNewline("/*** Task " + threadName + " ***/"); _mainCCode.addOutputNewline("extern void *" + threadName + "_Job(void);"); _mainCCode.addOutputNewline(""); _mainHCode.addOutputNewline("DeclareTask(" + thread.getName() + ");"); _mainCCode.addOutputNewline(""); _mainCCode.addOutputNewline("TASK(" + thread.getName() + ")"); _mainCCode.addOutputNewline("{"); _mainCCode.incrementIndent(); _mainCCode.addOutputNewline(threadName + "_Job();"); _mainCCode.decrementIndent(); _mainCCode.addOutputNewline("}"); _mainCCode.addOutputNewline(""); }
@Override protected String getGenerationIdentifier(String prefix) { return GenerationUtilsC.getGenerationCIdentifier(prefix); }
@Override protected String getFeatureLocalIdentifier(FeatureInstance fi) { return GenerationUtilsC.getGenerationCIdentifier( fi.getComponentInstance().getName() + "_" + fi.getName()); }
private void genMainHeader() { String guard = GenerationUtilsC.generateHeaderInclusionGuard("main.h"); _mainHCode.addOutputNewline(guard); }