예제 #1
0
        internal DefaultEngineTask(EngineCore engine, EngineNode adaptor)
        {
            Guard.AssertNotNull(engine, "engine");
            Guard.AssertNotNull(adaptor, "adaptor");

            this.engine = engine;
            DirtyNode = adaptor;
        }
예제 #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;
        }
예제 #3
0
        public EngineNode(EngineCore engine, INode node, IVertex vertex)
            : base()
        {
            Guard.AssertNotNull(engine, "engine");
            Guard.AssertNotNull(node, "node");

            this.engine = engine;

            Vertex = vertex;
            Node = node;

            inputMap = engine.Builder.GetInputs(vertex);

            InputValues = new Dictionary<String, IEngineNode>();

            Bind();
        }