// use the scene generator factory, because a specific SceneGenerator might be shared if given as argument public ControllerBase(IUniverse universe, ISceneTranslator sceneTranslator, ISceneGeneratorFactory sceneGeneratorFactory, ISink channelSink) { _channelSink = channelSink; Universe = universe; SceneTranslator = sceneTranslator; SceneGenerator = sceneGeneratorFactory.CreateGenerator(Universe); SceneGenerator.SceneChanged += SceneChanged; SceneGenerator.Signal(StartupSignal.Value); }
public Controller(IUniverse universe, ISceneTranslator sceneTranslator, ISceneGeneratorFactory sceneGeneratorFactory, ISignalGenerator signalGenerator, ISink channelSink) : base(universe, sceneTranslator, sceneGeneratorFactory, channelSink) { _signalGenerator = signalGenerator; _signalGenerator.Signal += SignalGenerator_Signal; }