示例#1
0
        public static ComputingCore InitComputingCore()
        {
            var data_cell_repository      = new DataCellRepository();
            var function_repository       = new FunctionRepository(data_cell_repository);
            var command_repository        = new CommandRepository();
            var control_execution_service = new ControlExecutionService();

            var execution_manager = new ExecutionManager(
                new List <IExecutionService>()
            {
                new BasicExecutionService(),
                control_execution_service,
                new CSharpExecutionService(function_repository)
            }
                );

            var job_manager = new JobManager(execution_manager);
            var preparation_command_service = new PreparationCommandService(data_cell_repository, function_repository);
            var data_flow_logics_service    = new DataFlowLogicsService(job_manager, preparation_command_service, data_cell_repository);

            control_execution_service.SetDataFlowLogicsService(data_flow_logics_service);

            var computing_core = new ComputingCore(
                function_repository,
                data_cell_repository,
                command_repository,
                data_flow_logics_service
                );

            function_repository.Add(BasicFunctionModel.AllMethods.Select(x => (Function)x.Value.BasicFunction).ToList());

            return(computing_core);
        }