Exemple #1
0
        internal EngineCore(String name, IEngineBuilder builder, IEnginePipeline pipeline)
        {
            engineName = name;
            Builder = builder;
            engineGraph = builder.CreateGraph();
            enginePipeline = pipeline;
            engineNodeMap = new Dictionary<String, EngineNode>();
            countOfFirstLoadsOutstanding = 0;
            allFirstLoadsDone = false;

            EngineCounters.Create();
        }
Exemple #2
0
        public SmartEngine(String name, IEngineBuilder builder, IEnginePipeline pipeline)
        {
            Guard.AssertNotNullOrEmpty(name, "name");
            Guard.AssertNotNull(builder, "builder");
            Guard.AssertNotNull(pipeline, "pipeline");

            var modules = pipeline.Modules;
            if (modules == null || modules.Count == 0)
            {
                throw new ArgumentException("Engine pipeline is empty");
            }

            core = new EngineCore(name, builder, pipeline);
            state = State.Stopped;
        }