示例#1
0
        static void Main(string[] args)
        {
            Console.WriteLine(">> Program started!");

            Console.WriteLine("---");
            Console.WriteLine(">> Singleton");
            SingletonProgram.Run();
            Console.WriteLine("---");

            Console.WriteLine("---");
            Console.WriteLine(">> Abstract Factory");
            AbstractFactoryProgram.Run();
            Console.WriteLine("---");

            Console.WriteLine("---");
            Console.WriteLine(">> Factory Method");
            FactoryMethodProgram.Run();
            Console.WriteLine("---");

            Console.WriteLine("---");
            Console.WriteLine(">> Builder");
            Console.WriteLine("---");

            Console.WriteLine("---");
            Console.WriteLine(">> Adapter");
            Console.WriteLine("With out using Adapter:");
            WithOutAdapter.Run();
            Console.WriteLine("Using Adapter:");
            WithAdapter.Run();
            Console.WriteLine("---");

            Console.WriteLine("---");
            Console.WriteLine(">> Bridge");
            BridgeProgram.Run();
            Console.WriteLine("---");

            Console.WriteLine("---");
            Console.WriteLine(">> Observer");
            ObserverProgram.Run();
            Console.WriteLine("---");

            Console.WriteLine("---");
            Console.WriteLine(">> State");
            StateProgram.Run();
            Console.WriteLine("---");

            Console.WriteLine("---");
            Console.WriteLine(">> Strategy");
            StrategyProgram.Run();
            Console.WriteLine("---");

            Console.ReadKey();
        }
示例#2
0
        public void SetupProgram(int nProg, int nStep, StateProgram program, int param1, int param2, TransitionCondition condition)
        {
            //( [Номер редактируемой программы], [Номер редактируемого шага], [Тип шага: 0 – нагрев либо охлаждение, 1 – выдержка, 2 – переход на программу, 3 – стоп (регулирование выключено)]
            //  [Параметр 1 (время выдержки, либо скорость (0,1ºC/ч), либо номер программы, либо заданное значение выводимой мощности)], [Параметр 2 (целевая уставка в 0,1ºC)],
            //  [Условие перехода на следующий шаг (0 – T расчетная = SP, 1 – Ручное подтверждение, 2 – T измеренная = SP)] )

            this.Set(0x0160, (long)nProg - 1); //Номер редактируемой программы
            this.Set(0x0161, (long)nStep - 1); //Номер редактируемого шага
            this.Set(0x0162, (int)program);    //Тип шага
            this.Set(0x0163, param1);
            this.Set(0x0164, param2);
            this.Set(0x0165, (int)condition);
        }
示例#3
0
        static void SetStartProgram(Termodat termodat)
        {
            bool cicle = true;

            Console.WriteLine("Editable program number: ");
            int programNumber = int.Parse(Console.ReadLine());

            Console.WriteLine("Editable step number: ");
            int stepNumber = int.Parse(Console.ReadLine());

            Console.WriteLine("What doing in this step, \"HeatingOrCooling\", \"Exposure\", \"Goto\", \"Stop\"?: ");
            string       step  = Console.ReadLine();
            StateProgram state = StateProgram.HeatingOrCooling;

            while (cicle)
            {
                switch (step)
                {
                case "HeatingOrCooling":
                    state = StateProgram.HeatingOrCooling;
                    cicle = false;
                    break;

                case "Exposure":
                    state = StateProgram.Exposure;
                    cicle = false;
                    break;

                case "Goto":
                    state = StateProgram.Goto;
                    cicle = false;
                    break;

                case "Stop":
                    state = StateProgram.Stop;
                    cicle = false;
                    break;

                default:
                    Console.WriteLine("Incorrect input, try again");
                    break;
                }
            }
            cicle = true;

            Console.WriteLine("Параметр 1 (время выдержки, либо скорость (0,1ºC/ч), либо номер программы (если Goto)) Integer (100 = 10,0): ");
            int param1 = int.Parse(Console.ReadLine());

            Console.WriteLine("Параметр 2 (целевая уставка в 0,1ºC)] Integer: ");
            int param2 = int.Parse(Console.ReadLine());

            Console.WriteLine("Условие перехода на следующий шаг \"Tcalc\", \"ManualAccept\", \"Tmeasure\"");
            TransitionCondition condition = TransitionCondition.Tmeasure;
            string cond = Console.ReadLine();

            while (cicle)
            {
                switch (cond)
                {
                case "Tcalc":
                    condition = TransitionCondition.Tcalc;
                    cicle     = false;
                    break;

                case "ManualAccept":
                    condition = TransitionCondition.ManualAccept;
                    cicle     = false;
                    break;

                case "Tmeasure":
                    condition = TransitionCondition.Tmeasure;
                    cicle     = false;
                    break;

                default:
                    Console.WriteLine("Incorrect input, try again");
                    break;
                }
            }
            termodat.SetupProgram(programNumber, stepNumber, state, param1, param2, condition);
        }