Browse Source

OPEN - issue YAKHMI-895: Create new SCT C++ Code generator
https://intern.itemis.de/jira/browse/YAKHMI-895

markus.muehlbrandt@gmail.com 12 years ago
parent
commit
6c07d6519e

BIN
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/.CppGenerator.java._trace


BIN
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/.Naming.java._trace


BIN
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/.StatemachineHeader.java._trace


+ 0 - 58
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/CppGenerator.java

@@ -1,58 +0,0 @@
-package org.yakindu.sct.generator.cpp;
-
-import com.google.inject.Inject;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.yakindu.sct.generator.c.StatemachineC;
-import org.yakindu.sct.generator.core.impl.IExecutionFlowGenerator;
-import org.yakindu.sct.generator.cpp.IStatemachine;
-import org.yakindu.sct.generator.cpp.ITimedStatemachine;
-import org.yakindu.sct.generator.cpp.ITimerService;
-import org.yakindu.sct.generator.cpp.Navigation;
-import org.yakindu.sct.generator.cpp.StatemachineHeader;
-import org.yakindu.sct.generator.cpp.Types;
-import org.yakindu.sct.model.sexec.ExecutionFlow;
-import org.yakindu.sct.model.sgen.GeneratorEntry;
-import org.yakindu.sct.model.sgraph.Statechart;
-
-/**
- * This is the CPP code generators main class.
- * 
- * @author Markus Mühlbrandt
- */
-@SuppressWarnings("all")
-public class CppGenerator implements IExecutionFlowGenerator {
-  @Inject
-  private Types _types;
-  
-  @Inject
-  private ITimedStatemachine _iTimedStatemachine;
-  
-  @Inject
-  private ITimerService _iTimerService;
-  
-  @Inject
-  private IStatemachine _iStatemachine;
-  
-  @Inject
-  private StatemachineHeader _statemachineHeader;
-  
-  @Inject
-  private StatemachineC _statemachineC;
-  
-  @Inject
-  private Navigation _navigation;
-  
-  public void generate(final ExecutionFlow flow, final GeneratorEntry entry, final IFileSystemAccess fsa) {
-    EObject _sourceElement = flow.getSourceElement();
-    this._types.generateTypesHpp(flow, ((Statechart) _sourceElement), fsa, entry);
-    this._iStatemachine.generateIStatemachine(flow, entry, fsa);
-    boolean _isTimed = this._navigation.isTimed(flow);
-    if (_isTimed) {
-      this._iTimedStatemachine.generateITimedStatemachine(flow, entry, fsa);
-      this._iTimerService.generateITimerService(flow, entry, fsa);
-    }
-    EObject _sourceElement_1 = flow.getSourceElement();
-    this._statemachineHeader.generateStatemachineHeader(flow, ((Statechart) _sourceElement_1), fsa, entry);
-  }
-}

+ 0 - 123
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/IStatemachine.java

@@ -1,123 +0,0 @@
-package org.yakindu.sct.generator.cpp;
-
-import com.google.inject.Inject;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.yakindu.sct.generator.c.GenmodelEntries;
-import org.yakindu.sct.generator.cpp.Naming;
-import org.yakindu.sct.model.sexec.ExecutionFlow;
-import org.yakindu.sct.model.sgen.GeneratorEntry;
-
-@SuppressWarnings("all")
-public class IStatemachine {
-  @Inject
-  private Naming _naming;
-  
-  @Inject
-  private GenmodelEntries _genmodelEntries;
-  
-  public void generateIStatemachine(final ExecutionFlow flow, final GeneratorEntry entry, final IFileSystemAccess fsa) {
-    String _iStatemachine = this._naming.iStatemachine();
-    String _hpp = this._naming.hpp(_iStatemachine);
-    CharSequence _content = this.content(flow, entry);
-    fsa.generateFile(_hpp, _content);
-  }
-  
-  private CharSequence content(final ExecutionFlow it, final GeneratorEntry entry) {
-    StringConcatenation _builder = new StringConcatenation();
-    String _licenseText = this._genmodelEntries.getLicenseText(entry);
-    _builder.append(_licenseText, "");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("#ifndef ");
-    String _iStatemachine = this._naming.iStatemachine();
-    String _define = this._naming.define(_iStatemachine);
-    _builder.append(_define, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.append("#define ");
-    String _iStatemachine_1 = this._naming.iStatemachine();
-    String _define_1 = this._naming.define(_iStatemachine_1);
-    _builder.append(_define_1, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append(" ");
-    _builder.append("* Basic interface for statemachines.");
-    _builder.newLine();
-    _builder.append(" ");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("class IStatemachine {");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.append("public:");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("* Initializes the statemachine. Use to init internal variables etc.");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual void init() = 0;");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("* Enters the statemachine. Sets the statemachine in a defined state.");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual void enter() = 0;");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("* Exits the statemachine. Leaves the statemachine with a defined state.");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual void exit() = 0;");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("* Start a run-to-completion cycle.");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual void runCycle() = 0;");
-    _builder.newLine();
-    _builder.append("};");
-    _builder.newLine();
-    _builder.newLine();
-    _builder.append("#endif /* ");
-    String _iStatemachine_2 = this._naming.iStatemachine();
-    String _define_2 = this._naming.define(_iStatemachine_2);
-    _builder.append(_define_2, "");
-    _builder.append("_H_ */");
-    _builder.newLineIfNotEmpty();
-    return _builder;
-  }
-}

+ 0 - 126
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/ITimedStatemachine.java

@@ -1,126 +0,0 @@
-package org.yakindu.sct.generator.cpp;
-
-import com.google.inject.Inject;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.yakindu.sct.generator.c.GenmodelEntries;
-import org.yakindu.sct.generator.cpp.Naming;
-import org.yakindu.sct.model.sexec.ExecutionFlow;
-import org.yakindu.sct.model.sgen.GeneratorEntry;
-
-@SuppressWarnings("all")
-public class ITimedStatemachine {
-  @Inject
-  private Naming _naming;
-  
-  @Inject
-  private GenmodelEntries _genmodelEntries;
-  
-  public void generateITimedStatemachine(final ExecutionFlow flow, final GeneratorEntry entry, final IFileSystemAccess fsa) {
-    String _iTimedStatemachine = this._naming.iTimedStatemachine();
-    String _hpp = this._naming.hpp(_iTimedStatemachine);
-    CharSequence _content = this.content(flow, entry);
-    fsa.generateFile(_hpp, _content);
-  }
-  
-  private CharSequence content(final ExecutionFlow it, final GeneratorEntry entry) {
-    StringConcatenation _builder = new StringConcatenation();
-    String _licenseText = this._genmodelEntries.getLicenseText(entry);
-    _builder.append(_licenseText, "");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("#ifndef ");
-    String _iTimedStatemachine = this._naming.iTimedStatemachine();
-    String _define = this._naming.define(_iTimedStatemachine);
-    _builder.append(_define, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.append("#define ");
-    String _iTimedStatemachine_1 = this._naming.iTimedStatemachine();
-    String _define_1 = this._naming.define(_iTimedStatemachine_1);
-    _builder.append(_define_1, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("#include \"");
-    String _typesModule = this._naming.typesModule(it);
-    String _hpp = this._naming.hpp(_typesModule);
-    _builder.append(_hpp, "");
-    _builder.append("\"");
-    _builder.newLineIfNotEmpty();
-    _builder.append("#include \"");
-    String _iTimerService = this._naming.iTimerService();
-    String _hpp_1 = this._naming.hpp(_iTimerService);
-    _builder.append(_hpp_1, "");
-    _builder.append("\"");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("* Interface for state machines which use timed event triggers.");
-    _builder.newLine();
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("class ITimedStatemachine {");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.append("public:");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("* Set the ITimerService for the state machine. It must be set");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("* externally on a timed state machine before a run cycle can be correct");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("* executed.");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual void setTimerService(ITimerService* timerService) = 0;");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("* Returns the currently used timer service.");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual ITimerService* getTimerService() = 0;");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("* Callback method if a time event occurred.");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual void raiseTimeEvent(sc_eventid event) = 0;");
-    _builder.newLine();
-    _builder.append("};");
-    _builder.newLine();
-    _builder.newLine();
-    _builder.append("#endif /* ");
-    String _iTimedStatemachine_2 = this._naming.iTimedStatemachine();
-    String _define_2 = this._naming.define(_iTimedStatemachine_2);
-    _builder.append(_define_2, "");
-    _builder.append("_H_ */");
-    _builder.newLineIfNotEmpty();
-    return _builder;
-  }
-}

+ 0 - 119
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/ITimerService.java

@@ -1,119 +0,0 @@
-package org.yakindu.sct.generator.cpp;
-
-import com.google.inject.Inject;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.yakindu.sct.generator.c.GenmodelEntries;
-import org.yakindu.sct.generator.cpp.Naming;
-import org.yakindu.sct.model.sexec.ExecutionFlow;
-import org.yakindu.sct.model.sgen.GeneratorEntry;
-
-@SuppressWarnings("all")
-public class ITimerService {
-  @Inject
-  private Naming _naming;
-  
-  @Inject
-  private GenmodelEntries _genmodelEntries;
-  
-  public void generateITimerService(final ExecutionFlow flow, final GeneratorEntry entry, final IFileSystemAccess fsa) {
-    String _iTimerService = this._naming.iTimerService();
-    String _hpp = this._naming.hpp(_iTimerService);
-    CharSequence _content = this.content(flow, entry);
-    fsa.generateFile(_hpp, _content);
-  }
-  
-  private CharSequence content(final ExecutionFlow it, final GeneratorEntry entry) {
-    StringConcatenation _builder = new StringConcatenation();
-    String _licenseText = this._genmodelEntries.getLicenseText(entry);
-    _builder.append(_licenseText, "");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("#ifndef ");
-    String _iTimerService = this._naming.iTimerService();
-    String _define = this._naming.define(_iTimerService);
-    _builder.append(_define, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.append("#define ");
-    String _iTimerService_1 = this._naming.iTimerService();
-    String _define_1 = this._naming.define(_iTimerService_1);
-    _builder.append(_define_1, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("#include \"");
-    String _iTimedStatemachine = this._naming.iTimedStatemachine();
-    String _hpp = this._naming.hpp(_iTimedStatemachine);
-    _builder.append(_hpp, "");
-    _builder.append("\"");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append(" ");
-    _builder.append("* Basic interface for statemachines.");
-    _builder.newLine();
-    _builder.append(" ");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("class ITimerService {");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.append("public:");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t ");
-    _builder.append("* Starts the timing for a time event.");
-    _builder.newLine();
-    _builder.append("\t\t ");
-    _builder.append("*/ ");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual void setTimer(ITimedStatemachine* statemachine, sc_eventid event, sc_integer time, sc_boolean isPeriodic) = 0;");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t ");
-    _builder.append("* Unsets the given time event.");
-    _builder.newLine();
-    _builder.append("\t\t ");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual void resetTimer(ITimedStatemachine* statemachine, sc_eventid event) = 0;");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*");
-    _builder.newLine();
-    _builder.append("\t\t ");
-    _builder.append("* Cancel timer service. Use this to end possible timing threads and free");
-    _builder.newLine();
-    _builder.append("\t\t ");
-    _builder.append("* memory resources.");
-    _builder.newLine();
-    _builder.append("\t\t ");
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("virtual void cancel() = 0;");
-    _builder.newLine();
-    _builder.append("};");
-    _builder.newLine();
-    _builder.newLine();
-    _builder.append("#endif /* ");
-    String _iTimerService_2 = this._naming.iTimerService();
-    String _define_2 = this._naming.define(_iTimerService_2);
-    _builder.append(_define_2, "");
-    _builder.append("_H_ */");
-    _builder.newLineIfNotEmpty();
-    return _builder;
-  }
-}

+ 0 - 114
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/Naming.java

@@ -1,114 +0,0 @@
-package org.yakindu.sct.generator.cpp;
-
-import com.google.common.base.Objects;
-import org.eclipse.xtext.xbase.lib.StringExtensions;
-import org.yakindu.sct.model.sexec.ExecutionFlow;
-import org.yakindu.sct.model.stext.stext.EventDefinition;
-import org.yakindu.sct.model.stext.stext.InterfaceScope;
-import org.yakindu.sct.model.stext.stext.OperationDefinition;
-import org.yakindu.sct.model.stext.stext.VariableDefinition;
-
-@SuppressWarnings("all")
-public class Naming extends org.yakindu.sct.generator.c.Naming {
-  public String hpp(final String it) {
-    String _plus = (it + ".hpp");
-    return _plus;
-  }
-  
-  public String cpp(final String it) {
-    String _plus = (it + ".cpp");
-    return _plus;
-  }
-  
-  public String abstractModule(final ExecutionFlow it) {
-    String _module = this.module(it);
-    String _plus = ("I" + _module);
-    return _plus;
-  }
-  
-  public String iStatemachine() {
-    return "IStatemachine";
-  }
-  
-  public String iTimedStatemachine() {
-    return "ITimedStatemachine";
-  }
-  
-  public String iTimerService() {
-    return "ITimerService";
-  }
-  
-  public String timeEvent() {
-    return "TimeEvent";
-  }
-  
-  public String getInterfaceName(final InterfaceScope it) {
-    String _name = it.getName();
-    boolean _notEquals = (!Objects.equal(_name, null));
-    if (_notEquals) {
-      String _name_1 = it.getName();
-      String _firstUpper = StringExtensions.toFirstUpper(_name_1);
-      return ("SCI" + _firstUpper);
-    } else {
-      return "SCInterface";
-    }
-  }
-  
-  public String getInterfaceOperationCallbackName(final InterfaceScope it) {
-    String _interfaceName = this.getInterfaceName(it);
-    String _plus = (_interfaceName + "OperationCallback");
-    return _plus;
-  }
-  
-  public String getInternalOperationCallbackName() {
-    return "InternalOperationCallback";
-  }
-  
-  public String asFunction(final OperationDefinition it) {
-    String _name = it.getName();
-    String _asIdentifier = this.asIdentifier(_name);
-    String _firstLower = StringExtensions.toFirstLower(_asIdentifier);
-    return _firstLower;
-  }
-  
-  public String asRaiser(final EventDefinition it) {
-    String _name = it.getName();
-    String _asIdentifier = this.asIdentifier(_name);
-    String _firstLower = StringExtensions.toFirstLower(_asIdentifier);
-    String _plus = ("raise_" + _firstLower);
-    return _plus;
-  }
-  
-  public String asRaised(final EventDefinition it) {
-    String _name = it.getName();
-    String _asIdentifier = this.asIdentifier(_name);
-    String _firstLower = StringExtensions.toFirstLower(_asIdentifier);
-    String _plus = ("isRaised_" + _firstLower);
-    return _plus;
-  }
-  
-  public String asGetter(final EventDefinition it) {
-    String _name = it.getName();
-    String _asIdentifier = this.asIdentifier(_name);
-    String _firstLower = StringExtensions.toFirstLower(_asIdentifier);
-    String _plus = ("get_" + _firstLower);
-    String _plus_1 = (_plus + "_value");
-    return _plus_1;
-  }
-  
-  public String asGetter(final VariableDefinition it) {
-    String _name = it.getName();
-    String _asIdentifier = this.asIdentifier(_name);
-    String _firstLower = StringExtensions.toFirstLower(_asIdentifier);
-    String _plus = ("get_" + _firstLower);
-    return _plus;
-  }
-  
-  public String asSetter(final VariableDefinition it) {
-    String _name = it.getName();
-    String _asIdentifier = this.asIdentifier(_name);
-    String _firstLower = StringExtensions.toFirstLower(_asIdentifier);
-    String _plus = ("set_" + _firstLower);
-    return _plus;
-  }
-}

+ 0 - 24
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/Navigation.java

@@ -1,24 +0,0 @@
-package org.yakindu.sct.generator.cpp;
-
-import com.google.common.collect.Iterables;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.xtext.xbase.lib.IterableExtensions;
-import org.yakindu.sct.model.sgraph.Declaration;
-import org.yakindu.sct.model.sgraph.Scope;
-import org.yakindu.sct.model.stext.stext.OperationDefinition;
-
-@SuppressWarnings("all")
-public class Navigation extends org.yakindu.sct.generator.c.Navigation {
-  public Iterable<OperationDefinition> operations(final Scope it) {
-    EList<Declaration> _declarations = it.getDeclarations();
-    Iterable<OperationDefinition> _filter = Iterables.<OperationDefinition>filter(_declarations, OperationDefinition.class);
-    return _filter;
-  }
-  
-  public boolean hasOperations(final Scope it) {
-    Iterable<OperationDefinition> _operations = this.operations(it);
-    boolean _isEmpty = IterableExtensions.isEmpty(_operations);
-    boolean _not = (!_isEmpty);
-    return _not;
-  }
-}

+ 0 - 591
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/StatemachineHeader.java

@@ -1,591 +0,0 @@
-package org.yakindu.sct.generator.cpp;
-
-import com.google.common.base.Objects;
-import com.google.common.collect.Iterables;
-import com.google.inject.Inject;
-import java.util.Arrays;
-import java.util.LinkedList;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.yakindu.base.types.Parameter;
-import org.yakindu.base.types.Type;
-import org.yakindu.sct.generator.c.GenmodelEntries;
-import org.yakindu.sct.generator.c.Statemachine;
-import org.yakindu.sct.generator.core.types.ICodegenTypeSystemAccess;
-import org.yakindu.sct.generator.cpp.Naming;
-import org.yakindu.sct.generator.cpp.Navigation;
-import org.yakindu.sct.model.sexec.ExecutionFlow;
-import org.yakindu.sct.model.sexec.StateVector;
-import org.yakindu.sct.model.sexec.TimeEvent;
-import org.yakindu.sct.model.sgen.GeneratorEntry;
-import org.yakindu.sct.model.sgraph.Declaration;
-import org.yakindu.sct.model.sgraph.Scope;
-import org.yakindu.sct.model.sgraph.Statechart;
-import org.yakindu.sct.model.stext.stext.Direction;
-import org.yakindu.sct.model.stext.stext.EventDefinition;
-import org.yakindu.sct.model.stext.stext.InterfaceScope;
-import org.yakindu.sct.model.stext.stext.InternalScope;
-import org.yakindu.sct.model.stext.stext.OperationDefinition;
-import org.yakindu.sct.model.stext.stext.VariableDefinition;
-
-@SuppressWarnings("all")
-public class StatemachineHeader extends Statemachine {
-  @Inject
-  private Naming cNaming;
-  
-  @Inject
-  private Navigation _navigation;
-  
-  @Inject
-  private ICodegenTypeSystemAccess _iCodegenTypeSystemAccess;
-  
-  @Inject
-  private GenmodelEntries _genmodelEntries;
-  
-  public void generateStatemachineHeader(final ExecutionFlow flow, final Statechart sc, final IFileSystemAccess fsa, final GeneratorEntry entry) {
-    String _module = this.cNaming.module(flow);
-    String _hpp = this.cNaming.hpp(_module);
-    CharSequence _statemachineHContent = this.statemachineHContent(flow, entry);
-    fsa.generateFile(_hpp, _statemachineHContent);
-  }
-  
-  public CharSequence statemachineHContent(final ExecutionFlow it, final GeneratorEntry entry) {
-    StringConcatenation _builder = new StringConcatenation();
-    String _licenseText = this._genmodelEntries.getLicenseText(entry);
-    _builder.append(_licenseText, "");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("#ifndef ");
-    String _module = this.cNaming.module(it);
-    String _define = this.cNaming.define(_module);
-    _builder.append(_define, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.append("#define ");
-    String _module_1 = this.cNaming.module(it);
-    String _define_1 = this.cNaming.define(_module_1);
-    _builder.append(_define_1, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("#include \"");
-    String _typesModule = this.cNaming.typesModule(it);
-    String _hpp = this.cNaming.hpp(_typesModule);
-    _builder.append(_hpp, "");
-    _builder.append("\"");
-    _builder.newLineIfNotEmpty();
-    _builder.append("#include \"");
-    String _iStatemachine = this.cNaming.iStatemachine();
-    String _hpp_1 = this.cNaming.hpp(_iStatemachine);
-    _builder.append(_hpp_1, "");
-    _builder.append("\"");
-    _builder.newLineIfNotEmpty();
-    {
-      boolean _isTimed = this._navigation.isTimed(it);
-      if (_isTimed) {
-        _builder.append("#include \"");
-        String _iTimedStatemachine = this.cNaming.iTimedStatemachine();
-        String _hpp_2 = this.cNaming.hpp(_iTimedStatemachine);
-        _builder.append(_hpp_2, "");
-        _builder.append("\"");
-        _builder.newLineIfNotEmpty();
-      }
-    }
-    _builder.newLine();
-    _builder.append("/*! \\file Header of the state machine \'");
-    String _name = it.getName();
-    _builder.append(_name, "");
-    _builder.append("\'.");
-    _builder.newLineIfNotEmpty();
-    _builder.append("*/");
-    _builder.newLine();
-    _builder.newLine();
-    _builder.append("class ");
-    String _module_2 = this.cNaming.module(it);
-    _builder.append(_module_2, "");
-    _builder.append(" : ");
-    String _interfaceExtensions = this.getInterfaceExtensions(it);
-    _builder.append(_interfaceExtensions, "");
-    _builder.append(" {");
-    _builder.newLineIfNotEmpty();
-    _builder.append("\t");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.append("public:");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    CharSequence _statesEnumDecl = this.statesEnumDecl(it);
-    _builder.append(_statesEnumDecl, "		");
-    _builder.newLineIfNotEmpty();
-    _builder.append("\t\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    {
-      EList<Scope> _scopes = it.getScopes();
-      for(final Scope s : _scopes) {
-        CharSequence _createScope = this.createScope(s, entry);
-        _builder.append(_createScope, "		");
-      }
-    }
-    _builder.newLineIfNotEmpty();
-    _builder.append("\t\t");
-    _builder.newLine();
-    {
-      EList<Scope> _scopes_1 = it.getScopes();
-      Iterable<InternalScope> _filter = Iterables.<InternalScope>filter(_scopes_1, InternalScope.class);
-      for(final InternalScope s_1 : _filter) {
-        _builder.append("\t\t");
-        CharSequence _scopeFunctionPrototypes = this.scopeFunctionPrototypes(s_1);
-        _builder.append(_scopeFunctionPrototypes, "		");
-        _builder.newLineIfNotEmpty();
-      }
-    }
-    _builder.append("\t\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("/*! Checks if the specified state is active. */");
-    _builder.newLine();
-    _builder.append("\t\t");
-    _builder.append("sc_boolean ");
-    String _nameOfIsActiveFunction = this.cNaming.nameOfIsActiveFunction(it);
-    _builder.append(_nameOfIsActiveFunction, "		");
-    _builder.append("(");
-    String _statesEnumType = this.cNaming.statesEnumType(it);
-    _builder.append(_statesEnumType, "		");
-    _builder.append(" state);");
-    _builder.newLineIfNotEmpty();
-    _builder.append("\t");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.append("private:");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.newLine();
-    _builder.append("\t\t");
-    CharSequence _statemachineTypeDecl = this.statemachineTypeDecl(it);
-    _builder.append(_statemachineTypeDecl, "		");
-    _builder.newLineIfNotEmpty();
-    _builder.append("};");
-    _builder.newLine();
-    _builder.newLine();
-    _builder.append("#endif /* ");
-    String _module_3 = this.cNaming.module(it);
-    String _define_2 = this.cNaming.define(_module_3);
-    _builder.append(_define_2, "");
-    _builder.append("_H_ */");
-    _builder.newLineIfNotEmpty();
-    return _builder;
-  }
-  
-  public String getInterfaceExtensions(final ExecutionFlow flow) {
-    String interfaces = "";
-    boolean _isTimed = this._navigation.isTimed(flow);
-    if (_isTimed) {
-      String _plus = (interfaces + "public ");
-      String _iTimedStatemachine = this.cNaming.iTimedStatemachine();
-      String _plus_1 = (_plus + _iTimedStatemachine);
-      String _plus_2 = (_plus_1 + ", ");
-      interfaces = _plus_2;
-    }
-    String _plus_3 = (interfaces + "public ");
-    String _iStatemachine = this.cNaming.iStatemachine();
-    String _plus_4 = (_plus_3 + _iStatemachine);
-    interfaces = _plus_4;
-    return interfaces;
-  }
-  
-  private CharSequence createScope(final Scope scope, final GeneratorEntry entry) {
-    CharSequence _switchResult = null;
-    boolean _matched = false;
-    if (!_matched) {
-      if (scope instanceof InterfaceScope) {
-        final InterfaceScope _interfaceScope = (InterfaceScope)scope;
-        _matched=true;
-        CharSequence _createScope = this.createScope(_interfaceScope, entry);
-        _switchResult = _createScope;
-      }
-    }
-    if (!_matched) {
-      if (scope instanceof InternalScope) {
-        final InternalScope _internalScope = (InternalScope)scope;
-        _matched=true;
-        CharSequence _createScope = this.createScope(_internalScope);
-        _switchResult = _createScope;
-      }
-    }
-    return _switchResult;
-  }
-  
-  private CharSequence createScope(final InterfaceScope scope, final GeneratorEntry entry) {
-    StringConcatenation _builder = new StringConcatenation();
-    CharSequence _createInterface = this.createInterface(scope, entry);
-    _builder.append(_createInterface, "");
-    _builder.newLineIfNotEmpty();
-    CharSequence _createOperationCallbackInterface = this.createOperationCallbackInterface(scope);
-    _builder.append(_createOperationCallbackInterface, "");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    String _interfaceName = this.cNaming.getInterfaceName(scope);
-    _builder.append(_interfaceName, "");
-    _builder.append("* get");
-    String _interfaceName_1 = this.cNaming.getInterfaceName(scope);
-    _builder.append(_interfaceName_1, "");
-    _builder.append("();");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    return _builder;
-  }
-  
-  private CharSequence createInterface(final InterfaceScope scope, final GeneratorEntry entry) {
-    StringConcatenation _builder = new StringConcatenation();
-    _builder.append("//! Inner class for statechart ");
-    String _interfaceName = this.cNaming.getInterfaceName(scope);
-    _builder.append(_interfaceName, "");
-    _builder.append(" interface scope.");
-    _builder.newLineIfNotEmpty();
-    _builder.append("class ");
-    String _interfaceName_1 = this.cNaming.getInterfaceName(scope);
-    _builder.append(_interfaceName_1, "");
-    _builder.append(" {");
-    _builder.newLineIfNotEmpty();
-    _builder.append("\t");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.append("public:");
-    _builder.newLine();
-    {
-      EList<Declaration> _declarations = scope.getDeclarations();
-      for(final Declaration d : _declarations) {
-        _builder.append("\t\t");
-        CharSequence _functionPrototypes = this.functionPrototypes(d);
-        _builder.append(_functionPrototypes, "		");
-        _builder.newLineIfNotEmpty();
-      }
-    }
-    _builder.append("\t\t");
-    _builder.newLine();
-    _builder.append("\t");
-    _builder.append("private:");
-    _builder.newLine();
-    {
-      EList<Declaration> _declarations_1 = scope.getDeclarations();
-      for(final Declaration d_1 : _declarations_1) {
-        _builder.append("\t\t");
-        CharSequence _structDeclaration = this.structDeclaration(d_1);
-        _builder.append(_structDeclaration, "		");
-        _builder.newLineIfNotEmpty();
-      }
-    }
-    _builder.append("};");
-    _builder.newLine();
-    return _builder;
-  }
-  
-  private CharSequence createScope(final InternalScope scope) {
-    StringConcatenation _builder = new StringConcatenation();
-    {
-      boolean _hasOperations = this._navigation.hasOperations(scope);
-      if (_hasOperations) {
-        _builder.append("class ");
-        String _internalOperationCallbackName = this.cNaming.getInternalOperationCallbackName();
-        _builder.append(_internalOperationCallbackName, "");
-        _builder.append(" {");
-        _builder.newLineIfNotEmpty();
-        {
-          Iterable<OperationDefinition> _operations = this._navigation.operations(scope);
-          for(final OperationDefinition operation : _operations) {
-            _builder.append("\t");
-            _builder.append("virtual ");
-            String _asFunction = this.cNaming.asFunction(operation);
-            _builder.append(_asFunction, "	");
-            _builder.append("() = 0;");
-            _builder.newLineIfNotEmpty();
-          }
-        }
-        _builder.append("}");
-        _builder.newLine();
-        _builder.newLine();
-        _builder.append("virtual void set");
-        String _internalOperationCallbackName_1 = this.cNaming.getInternalOperationCallbackName();
-        _builder.append(_internalOperationCallbackName_1, "");
-        _builder.append("(");
-        String _internalOperationCallbackName_2 = this.cNaming.getInternalOperationCallbackName();
-        _builder.append(_internalOperationCallbackName_2, "");
-        _builder.append("* operationCallback) = 0;");
-        _builder.newLineIfNotEmpty();
-      }
-    }
-    return _builder;
-  }
-  
-  public CharSequence createOperationCallbackInterface(final InterfaceScope scope) {
-    StringConcatenation _builder = new StringConcatenation();
-    {
-      boolean _hasOperations = this._navigation.hasOperations(scope);
-      if (_hasOperations) {
-        _builder.newLine();
-        _builder.append("public interface ");
-        String _interfaceOperationCallbackName = this.cNaming.getInterfaceOperationCallbackName(scope);
-        _builder.append(_interfaceOperationCallbackName, "");
-        _builder.append(" {");
-        _builder.newLineIfNotEmpty();
-        {
-          Iterable<OperationDefinition> _operations = this._navigation.operations(scope);
-          for(final OperationDefinition operation : _operations) {
-            _builder.append("virtual ");
-            CharSequence _signature = this.signature(operation);
-            _builder.append(_signature, "");
-            _builder.append(" = 0;");
-            _builder.newLineIfNotEmpty();
-          }
-        }
-        _builder.append("}");
-        _builder.newLine();
-      }
-    }
-    return _builder;
-  }
-  
-  private CharSequence signature(final OperationDefinition it) {
-    StringConcatenation _builder = new StringConcatenation();
-    Type _type = it.getType();
-    String _targetLanguageName = this._iCodegenTypeSystemAccess.getTargetLanguageName(_type);
-    _builder.append(_targetLanguageName, "");
-    _builder.append(" ");
-    String _name = it.getName();
-    String _asEscapedIdentifier = this.cNaming.asEscapedIdentifier(_name);
-    _builder.append(_asEscapedIdentifier, "");
-    _builder.append("(");
-    {
-      EList<Parameter> _parameters = it.getParameters();
-      boolean _hasElements = false;
-      for(final Parameter parameter : _parameters) {
-        if (!_hasElements) {
-          _hasElements = true;
-        } else {
-          _builder.appendImmediate(", ", "");
-        }
-        Type _type_1 = parameter.getType();
-        String _targetLanguageName_1 = this._iCodegenTypeSystemAccess.getTargetLanguageName(_type_1);
-        _builder.append(_targetLanguageName_1, "");
-        _builder.append(" ");
-        String _identifier = this.identifier(parameter);
-        _builder.append(_identifier, "");
-      }
-    }
-    _builder.append(")");
-    _builder.newLineIfNotEmpty();
-    return _builder;
-  }
-  
-  private String identifier(final Parameter parameter) {
-    String _xifexpression = null;
-    String _name = parameter.getName();
-    boolean _isCKeyword = this.cNaming.isCKeyword(_name);
-    if (_isCKeyword) {
-      String _name_1 = parameter.getName();
-      return (_name_1 + "Arg");
-    } else {
-      String _name_2 = parameter.getName();
-      _xifexpression = _name_2;
-    }
-    return _xifexpression;
-  }
-  
-  public CharSequence statemachineTypeDecl(final ExecutionFlow it) {
-    StringConcatenation _builder = new StringConcatenation();
-    _builder.append("//! the maximum number of orthogonal states defines the dimension of the state configuration vector.");
-    _builder.newLine();
-    _builder.append("#define ");
-    String _type = this.cNaming.type(it);
-    String _upperCase = _type.toUpperCase();
-    _builder.append(_upperCase, "");
-    _builder.append("_MAX_ORTHOGONAL_STATES ");
-    StateVector _stateVector = it.getStateVector();
-    int _size = _stateVector.getSize();
-    _builder.append(_size, "");
-    _builder.newLineIfNotEmpty();
-    {
-      boolean _hasHistory = this._navigation.hasHistory(it);
-      if (_hasHistory) {
-        _builder.append("//! dimension of the state configuration vector for history states");
-        _builder.newLine();
-        _builder.append("#define ");
-        String _type_1 = this.cNaming.type(it);
-        String _upperCase_1 = _type_1.toUpperCase();
-        _builder.append(_upperCase_1, "");
-        _builder.append("_MAX_HISTORY_STATES ");
-        StateVector _historyVector = it.getHistoryVector();
-        int _size_1 = _historyVector.getSize();
-        _builder.append(_size_1, "");
-      }
-    }
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    {
-      boolean _isTimed = this._navigation.isTimed(it);
-      if (_isTimed) {
-        _builder.append("sc_boolean timeEvents[");
-        LinkedList<TimeEvent> _timeEvents = this._navigation.getTimeEvents(it);
-        int _size_2 = _timeEvents.size();
-        _builder.append(_size_2, "");
-        _builder.append("];");
-      }
-    }
-    _builder.newLineIfNotEmpty();
-    String _statesEnumType = this.cNaming.statesEnumType(it);
-    _builder.append(_statesEnumType, "");
-    _builder.append(" stateConfVector[");
-    String _type_2 = this.cNaming.type(it);
-    String _upperCase_2 = _type_2.toUpperCase();
-    _builder.append(_upperCase_2, "");
-    _builder.append("_MAX_ORTHOGONAL_STATES];");
-    _builder.newLineIfNotEmpty();
-    {
-      boolean _hasHistory_1 = this._navigation.hasHistory(it);
-      if (_hasHistory_1) {
-        String _statesEnumType_1 = this.cNaming.statesEnumType(it);
-        _builder.append(_statesEnumType_1, "");
-        _builder.append(" historyVector[");
-        String _type_3 = this.cNaming.type(it);
-        String _upperCase_3 = _type_3.toUpperCase();
-        _builder.append(_upperCase_3, "");
-        _builder.append("_MAX_HISTORY_STATES];");
-      }
-    }
-    _builder.newLineIfNotEmpty();
-    _builder.append("sc_ushort stateConfVectorPosition;");
-    _builder.newLine();
-    return _builder;
-  }
-  
-  protected CharSequence _functionPrototypes(final EventDefinition it) {
-    StringConcatenation _builder = new StringConcatenation();
-    {
-      Direction _direction = it.getDirection();
-      boolean _equals = Objects.equal(_direction, Direction.IN);
-      if (_equals) {
-        _builder.append("/*! Raises the in event \'");
-        String _name = it.getName();
-        _builder.append(_name, "");
-        _builder.append("\' that is defined in the ");
-        Scope _scope = this._navigation.scope(it);
-        CharSequence _scopeDescription = this.cNaming.scopeDescription(_scope);
-        _builder.append(_scopeDescription, "");
-        _builder.append(". */ ");
-        _builder.newLineIfNotEmpty();
-        _builder.append("void ");
-        String _asRaiser = this.cNaming.asRaiser(it);
-        _builder.append(_asRaiser, "");
-        _builder.append("(");
-        String _valueParams = this.cNaming.valueParams(it);
-        _builder.append(_valueParams, "");
-        _builder.append(");");
-        _builder.newLineIfNotEmpty();
-        _builder.newLine();
-      } else {
-        _builder.append("/*! Checks if the out event \'");
-        String _name_1 = it.getName();
-        _builder.append(_name_1, "");
-        _builder.append("\' that is defined in the ");
-        Scope _scope_1 = this._navigation.scope(it);
-        CharSequence _scopeDescription_1 = this.cNaming.scopeDescription(_scope_1);
-        _builder.append(_scopeDescription_1, "");
-        _builder.append(" has been raised. */ ");
-        _builder.newLineIfNotEmpty();
-        _builder.append("sc_boolean ");
-        String _asRaised = this.cNaming.asRaised(it);
-        _builder.append(_asRaised, "");
-        _builder.append("();");
-        _builder.newLineIfNotEmpty();
-        _builder.newLine();
-        {
-          boolean _hasValue = this._navigation.hasValue(it);
-          if (_hasValue) {
-            _builder.append("/*! Gets the value of the out event \'");
-            String _name_2 = it.getName();
-            _builder.append(_name_2, "");
-            _builder.append("\' that is defined in the ");
-            Scope _scope_2 = this._navigation.scope(it);
-            CharSequence _scopeDescription_2 = this.cNaming.scopeDescription(_scope_2);
-            _builder.append(_scopeDescription_2, "");
-            _builder.append(". */ ");
-            _builder.newLineIfNotEmpty();
-            Type _type = it.getType();
-            String _targetLanguageName = this._iCodegenTypeSystemAccess.getTargetLanguageName(_type);
-            _builder.append(_targetLanguageName, "");
-            _builder.append(" ");
-            String _asGetter = this.cNaming.asGetter(it);
-            _builder.append(_asGetter, "");
-            _builder.append("();");
-            _builder.newLineIfNotEmpty();
-            _builder.newLine();
-          }
-        }
-      }
-    }
-    return _builder;
-  }
-  
-  protected CharSequence _functionPrototypes(final VariableDefinition it) {
-    StringConcatenation _builder = new StringConcatenation();
-    _builder.append("/*! Gets the value of the variable \'");
-    String _name = it.getName();
-    _builder.append(_name, "");
-    _builder.append("\' that is defined in the ");
-    Scope _scope = this._navigation.scope(it);
-    CharSequence _scopeDescription = this.cNaming.scopeDescription(_scope);
-    _builder.append(_scopeDescription, "");
-    _builder.append(". */ ");
-    _builder.newLineIfNotEmpty();
-    Type _type = it.getType();
-    String _targetLanguageName = this._iCodegenTypeSystemAccess.getTargetLanguageName(_type);
-    _builder.append(_targetLanguageName, "");
-    _builder.append(" ");
-    String _asGetter = this.cNaming.asGetter(it);
-    _builder.append(_asGetter, "");
-    _builder.append("();");
-    _builder.newLineIfNotEmpty();
-    {
-      boolean _isReadonly = it.isReadonly();
-      boolean _not = (!_isReadonly);
-      if (_not) {
-        _builder.append("/*! Sets the value of the variable \'");
-        String _name_1 = it.getName();
-        _builder.append(_name_1, "");
-        _builder.append("\' that is defined in the ");
-        Scope _scope_1 = this._navigation.scope(it);
-        CharSequence _scopeDescription_1 = this.cNaming.scopeDescription(_scope_1);
-        _builder.append(_scopeDescription_1, "");
-        _builder.append(". */ ");
-        _builder.newLineIfNotEmpty();
-        _builder.append("void ");
-        String _asSetter = this.cNaming.asSetter(it);
-        _builder.append(_asSetter, "");
-        _builder.append("(");
-        Type _type_1 = it.getType();
-        String _targetLanguageName_1 = this._iCodegenTypeSystemAccess.getTargetLanguageName(_type_1);
-        _builder.append(_targetLanguageName_1, "");
-        _builder.append(" value);");
-        _builder.newLineIfNotEmpty();
-      }
-    }
-    return _builder;
-  }
-  
-  public CharSequence functionPrototypes(final Declaration it) {
-    if (it instanceof EventDefinition) {
-      return _functionPrototypes((EventDefinition)it);
-    } else if (it instanceof VariableDefinition) {
-      return _functionPrototypes((VariableDefinition)it);
-    } else if (it != null) {
-      return _functionPrototypes(it);
-    } else {
-      throw new IllegalArgumentException("Unhandled parameter types: " +
-        Arrays.<Object>asList(it).toString());
-    }
-  }
-}

+ 0 - 71
plugins/org.yakindu.sct.generator.cpp/xtend-gen/org/yakindu/sct/generator/cpp/Types.java

@@ -1,71 +0,0 @@
-package org.yakindu.sct.generator.cpp;
-
-import com.google.inject.Inject;
-import org.eclipse.xtend2.lib.StringConcatenation;
-import org.eclipse.xtext.generator.IFileSystemAccess;
-import org.yakindu.sct.generator.c.GenmodelEntries;
-import org.yakindu.sct.generator.cpp.Naming;
-import org.yakindu.sct.model.sexec.ExecutionFlow;
-import org.yakindu.sct.model.sgen.GeneratorEntry;
-import org.yakindu.sct.model.sgraph.Statechart;
-
-@SuppressWarnings("all")
-public class Types {
-  @Inject
-  private Naming _naming;
-  
-  @Inject
-  private GenmodelEntries _genmodelEntries;
-  
-  public void generateTypesHpp(final ExecutionFlow flow, final Statechart sc, final IFileSystemAccess fsa, final GeneratorEntry entry) {
-    String _typesModule = this._naming.typesModule(flow);
-    String _hpp = this._naming.hpp(_typesModule);
-    CharSequence _typesHContent = this.typesHContent(flow, entry);
-    fsa.generateFile(_hpp, _typesHContent);
-  }
-  
-  public CharSequence typesHContent(final ExecutionFlow it, final GeneratorEntry entry) {
-    StringConcatenation _builder = new StringConcatenation();
-    String _licenseText = this._genmodelEntries.getLicenseText(entry);
-    _builder.append(_licenseText, "");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("#ifndef ");
-    String _typesModule = this._naming.typesModule(it);
-    String _define = this._naming.define(_typesModule);
-    _builder.append(_define, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.append("#define ");
-    String _typesModule_1 = this._naming.typesModule(it);
-    String _define_1 = this._naming.define(_typesModule_1);
-    _builder.append(_define_1, "");
-    _builder.append("_H_");
-    _builder.newLineIfNotEmpty();
-    _builder.newLine();
-    _builder.append("#include <string>");
-    _builder.newLine();
-    _builder.newLine();
-    _builder.append("typedef unsigned char\tsc_ushort;");
-    _builder.newLine();
-    _builder.append("typedef int\t\t\t\tsc_integer;  ");
-    _builder.newLine();
-    _builder.append("typedef double\t\t\tsc_real;");
-    _builder.newLine();
-    _builder.append("typedef string\t\t\tsc_string;");
-    _builder.newLine();
-    _builder.append("typedef bool\t\t\tsc_boolean;");
-    _builder.newLine();
-    _builder.newLine();
-    _builder.append("typedef void*\t\t\tsc_eventid;");
-    _builder.newLine();
-    _builder.newLine();
-    _builder.append("#endif /* ");
-    String _typesModule_2 = this._naming.typesModule(it);
-    String _define_2 = this._naming.define(_typesModule_2);
-    _builder.append(_define_2, "");
-    _builder.append("_H_ */");
-    _builder.newLineIfNotEmpty();
-    return _builder;
-  }
-}