org.eclipse.etrice.generator.builder
Class GeneratorModelBuilder

java.lang.Object
  extended by org.eclipse.etrice.generator.builder.GeneratorModelBuilder

public class GeneratorModelBuilder
extends java.lang.Object

A class for the creation of an intermediate model combining all information needed by the code generator.

Author:
Henrik Rentz-Reichert

Constructor Summary
GeneratorModelBuilder(ILogger logger, IDiagnostician diagnostician)
          the only constructor takes a logger and a diagnostician as arguments
 
Method Summary
 Root createGeneratorModel(java.util.List<RoomModel> models, boolean asLibrary)
          Creates a model of all instances for all sub systems.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GeneratorModelBuilder

public GeneratorModelBuilder(ILogger logger,
                             IDiagnostician diagnostician)
the only constructor takes a logger and a diagnostician as arguments

Parameters:
logger -
diagnostician -
Method Detail

createGeneratorModel

public Root createGeneratorModel(java.util.List<RoomModel> models,
                                 boolean asLibrary)
Creates a model of all instances for all sub systems. Actor instances are created in a hierarchical structure. There is only one list of port per actor instances. Ports have a type attribute (relay, intern, external). Bindings connect port instances. And since ports are instances it is possible to have pointers back to the bindings. After creating the instance tree ports are connected to their peers. Similar SAPs, Services and layer connections are treated. Finally expanded (xp) actor classes are created which contain also inherited state graph items and where RefinedStates are removed and their contents is relocated.

Parameters:
models -
Returns:
the root of the newly created instance model