예제 #1
0
        protected override int initialize()
        {
            int iRes = 0;

            Data = new SrcBiyskTMora.SrcBiyskTMora();

            Data.Initialize(new object[] {
                new ConnectionSettings(
                    @"OraSOTIASSO-ORD"
                    , @"10.220.2.5"
                    , 1521
                    , @"ORCL"
                    , @"arch_viewer"
                    , @"1")
            }
                            );
            Data.Initialize(0
                            , new object[]
            {
                new object [] { 20049, @"Sgnl0", @"TAG_000049" }
                , new object [] { 20051, @"Sgnl1", @"TAG_000051" }
                , new object [] { 20053, @"Sgnl2", @"TAG_000053" }
                , new object [] { 20056, @"Sgnl3", @"TAG_000056" }
                , new object [] { 20057, @"Sgnl4", @"TAG_000057" }
                , new object [] { 20061, @"Sgnl5", @"TAG_000061" }
                , new object [] { 20062, @"Sgnl6", @"TAG_000062" }
                , new object [] { 20063, @"Sgnl7", @"TAG_000063" }
                , new object [] { 20064, @"Sgnl8", @"TAG_000064" }
            }
                            );

            return(iRes);
        }
예제 #2
0
        public biysktmora_test()
        {
            string msgWelcome = "\t\nКонсольное приложение тестирования объекта получения значений БД RtSoft-Siberia"
                                + "\t\nСОТИАССО для Бийской ТЭЦ, ОАО СибЭКо (@ЗАО ИТС)"
                                + "\t\n использование: при запуске /t=MSEC (MSEC - интервал обновления"
                                + "\t\n в процессе выполнения 'Space' - пауза, 'Ctrl+C' - выход из программы"
            ;

            Console.WriteLine(msgWelcome);

            string [] args = Environment.GetCommandLineArgs();
            if (args.Length > 1)
            {
                if ((args[1].Equals(@"/?") == true) ||
                    (args[1].Equals(@"?") == true))
                {
                    return;
                }
                else
                {
                    ;
                }

                if ((args[1].Split('=').Length == 2) &&
                    (args[1].Split('=')[0].Equals(@"/t") == true))
                {
                    biysktmora_test.s_msecInterval = Int32.Parse(args[1].Split('=')[1]);
                }
                else
                {
                    ;
                }
            }
            else
            {
                ;
            }

            EvtKeyPress += new DelegateObjectFunc(biysktmora_test_EvtKeyPress);

            data = new SrcBiyskTMora.SrcBiyskTMora();
            data.Initialize(new object [] {
                new ConnectionSettings(
                    @"OraSOTIASSO-ORD"
                    , @"10.220.2.5"
                    , 1521
                    , @"ORCL"
                    , @"arch_viewer"
                    , @"1")
            }
                            );
            data.Initialize(0
                            , new object []
            {
                new object [] { 20049, @"TAG_000049" }
                , new object [] { 20051, @"TAG_000051" }
                , new object [] { 20053, @"TAG_000053" }
                , new object [] { 20056, @"TAG_000056" }
                , new object [] { 20057, @"TAG_000057" }
                , new object [] { 20061, @"TAG_000061" }
                , new object [] { 20062, @"TAG_000062" }
                , new object [] { 20063, @"TAG_000063" }
                , new object [] { 20064, @"TAG_000064" }
            }
                            );
            data.Start();
            data.Activate(true);

            semaUserCancel          = new Semaphore(0, 1);
            lockTimer               = new object();
            Console.CancelKeyPress += new ConsoleCancelEventHandler(Console_CancelKeyPress);
            //Выполнить 1-ю итерацию немедленно (без повторения)
            timer = new Timer(timerCallback, null, 0, System.Threading.Timeout.Infinite);

            //Ожидать действия пользователя (другие)
            timerKeyPress = new Timer(timerKeyPressCallback, null, 0, 66);

            //Ожидать действия пользователя (Ctrl+C)
            semaUserCancel.WaitOne();

            data.Activate(false);
            data.Stop();
        }