예제 #1
0
파일: Engine.cs 프로젝트: Zicore/BlueSwitch
 protected Engine()
 {
     ProcessorCompiler       = new ProcessorCompiler(this);
     EventManager            = new EventManager(this);
     SearchService           = new SearchService(this);
     HelpService             = new HelpService(this);
     NamespaceResolver       = new NamespaceResolverService(this);
     StaticNamespaceResolver = NamespaceResolver; // We need one static instance for resolving at Deserialization Time
 }
예제 #2
0
파일: Engine.cs 프로젝트: Zicore/BlueSwitch
 public void AddAvailableSwitch(SwitchBase sw)
 {
     if (!AvailableSwitchesDict.ContainsKey(sw.UniqueName))
     {
         AvailableSwitchesDict.Add(sw.UniqueName, sw);
     }
     else
     {
         var collidingSwitch = AvailableSwitchesDict[sw.UniqueName];
         ProcessorCompiler.AddError(
             new ExceptionEntry
         {
             Exception = new ArgumentException(
                 $"Switch Name {sw.UniqueName} is not unique ({sw.FullTypeName}) it collides with {collidingSwitch.DisplayName} ({collidingSwitch.FullTypeName}).\r\n" +
                 $"Make sure the UniqueName is unique or search, help and other features wont work correctly!"),
             Name = $"Switch {sw.UniqueName} is not unique."
         });
     }
 }
예제 #3
0
파일: Engine.cs 프로젝트: Zicore/BlueSwitch
 public void Compile()
 {
     ProcessorCompiler.Compile(CurrentProject);
 }
예제 #4
0
파일: Engine.cs 프로젝트: Zicore/BlueSwitch
 public void Stop()
 {
     ProcessorCompiler.Stop(CurrentProject);
 }
예제 #5
0
 public void Run(Engine renderingEngine, ProcessorCompiler compiler)
 {
     compiler.Run(renderingEngine, Tree);
 }