Beispiel #1
0
        /* Метод тестирует просмотр всех категорий в списке. */
        static void TestCategorySelect(RecordingInfo rec)
        {
            MarkupProvider markup = new MarkupProviderADO();

            markup.Init(rec);
            CategoryPrintAll(markup);
        }
Beispiel #2
0
        /* Метод тестирует запрос к объединению двух таблиц */
        static void TestTraceBoxJoin(RecordingInfo rec)
        {
            MarkupProvider markup = new MarkupProviderADO();

            markup.Init(rec);
            Trace trace = new Trace();

            trace.TagID      = 0;
            trace.ViewID     = 0;
            trace.FrameStart = 0;
            trace.FrameEnd   = 0;
            trace.ID         = markup.TraceCreate(trace);

            Box box = new Box();

            box.TraceID = trace.ID;
            box.FrameID = trace.FrameStart;
            box.PosX    = 10;
            box.PosY    = 30;
            box.Width   = 15;
            box.Height  = 25;
            markup.BoxCreate(box);

            List <Box> boxes = markup.BoxGetByView(0, 0);

            foreach (Box item in boxes)
            {
                Console.WriteLine("TraceID = {0}, FrameID = {1}, PosX = {2}",
                                  item.TraceID, item.FrameID, item.PosX);
            }
        }
Beispiel #3
0
        /* Метод тестирует запрос к объединению двух таблиц */
        static void TestTraceMarkerJoin(RecordingInfo rec)
        {
            MarkupProvider markup = new MarkupProviderADO();

            markup.Init(rec);
            Trace trace = new Trace();

            trace.TagID      = 0;
            trace.ViewID     = 0;
            trace.FrameStart = 0;
            trace.FrameEnd   = 0;
            trace.ID         = markup.TraceCreate(trace);

            Marker marker = new Marker();

            marker.TraceID = trace.ID;
            marker.FrameID = trace.FrameStart;
            marker.PosX    = 10;
            marker.PosY    = 30;
            markup.MarkerCreate(marker);
            marker.PosX = 20;
            markup.MarkerUpdate(marker);

            List <Marker> markers = markup.MarkerGetByView(0, 0);

            foreach (Marker item in markers)
            {
                Console.WriteLine("TraceID = {0}, FrameID = {1}, PosX = {2}",
                                  item.TraceID, item.FrameID, item.PosX);
            }
        }
Beispiel #4
0
        /* Метод тестирует функцию добавления новой категории. */
        static void TestCategoryInsert(RecordingInfo rec)
        {
            MarkupProvider markup = new MarkupProviderADO();

            markup.Init(rec);
            int ID = CategoryInsertOne(markup, "New");

            Console.WriteLine("New ID = {0}", ID);
            CategoryPrintAll(markup);
        }
Beispiel #5
0
        /* Метод тестирует удаление строки из таблицы категорий. */
        static void TestCategoryDelete(RecordingInfo rec)
        {
            MarkupProvider markup = new MarkupProviderADO();

            markup.Init(rec);
            CategoryInsertOne(markup, "New1");
            CategoryInsertOne(markup, "New2");
            markup.CategoryDelete(1);

            CategoryPrintAll(markup);
        }
Beispiel #6
0
        /* Метод тестирует загрузку разметки из XML-файла. */
        static void TestXmlRead()
        {
            string MarkupFilePath = "markup.xml";

            MarkupProvider markup = new MarkupProviderADO();

            if (markup.Open(MarkupFilePath))
            {
                Console.WriteLine("Loaded markup from " + MarkupFilePath);
                CategoryPrintAll(markup);
            }
            else
            {
                Console.WriteLine("Propblem while loading markup!");
            }
        }
Beispiel #7
0
        // Обработчик события меню создания нового XML-файла описания
        // видеозаписи
        override public void FileOnRecordingCreate()
        {
            CreateRecordingInfoDialog CreateDialog =
                new CreateRecordingInfoDialog();

            RecordingInfo rec = new RecordingInfo();
            bool          isSuccess;

            do
            {
                isSuccess = true;
                DialogResult result = CreateDialog.ShowDialog();
                if (result == DialogResult.OK)
                {
                    // Извлекаем информацию из видеофайлов, сохраняем
                    // в структуру RecordingInfo
                    try
                    {
                        rec = CameraCreate(CreateDialog.FilePathArray,
                                           CreateDialog.Comment);

                        // Запрашиваем путь к файлу для сохранения XML
                        result = m_gui.dlgRecordingSave.ShowDialog();
                        string path = m_gui.dlgRecordingSave.FileName;
                        rec.FileNameXML = path;

                        if (result == DialogResult.OK)
                        {
                            // Готовим структуру данных для записи в XML
                            MarkupProvider xml = new MarkupProviderADO();
                            xml.InitHeader(rec);
                            xml.Save(path);
                        }
                    }
                    catch (Exception e)
                    {
                        MessageBox.Show(e.Message, "ERROR!",
                                        MessageBoxButtons.OK);
                        isSuccess = false;
                    }
                }
            }while (!isSuccess);

            CreateDialog.Dispose();
        }
Beispiel #8
0
        /* Метод тестирует обновление строки в таблице категорий. */
        static void TestCategoryUpdate(RecordingInfo rec)
        {
            MarkupProvider markup = new MarkupProviderADO();

            markup.Init(rec);
            CategoryInsertOne(markup, "New1");
            CategoryInsertOne(markup, "New2");

            List <Category> list;
            Category        c;

            list   = markup.CategoryGetAll();
            c      = list[1];
            c.Name = "New3";
            markup.CategoryUpdate(c);

            CategoryPrintAll(markup);
        }
Beispiel #9
0
        /* Метод тестирует сохранение разметки в XML-файл. */
        static void TestXmlWrite(RecordingInfo rec)
        {
            string MarkupFilePath = "markup.xml";

            MarkupProvider markup = new MarkupProviderADO();

            markup.Init(rec);
            CategoryInsertOne(markup, "New1");
            CategoryInsertOne(markup, "New2");
            CategoryPrintAll(markup);
            if (markup.Save(MarkupFilePath))
            {
                Console.WriteLine("Saved markup to " + MarkupFilePath);
            }
            else
            {
                Console.WriteLine("Problem while saving markup!");
            }
        }
Beispiel #10
0
        override public void FileOnRecordingOpen()
        {
            // Запрашиваем путь к XML-файлу видеозаписи
            DialogResult result = m_gui.dlgRecordingOpen.ShowDialog();

            if (result != DialogResult.OK)
            {
                return;
            }

            // Если видеозапись открыта, её сначала нужно закрыть
            if (CameraIsOpened)
            {
                FileOnRecordingClose();
            }

            // Затем открываем новую видеозапись
            try
            {
                MarkupProvider xml = new MarkupProviderADO();
                if (!xml.Open(m_gui.dlgRecordingOpen.FileName))
                {
                    MessageBox.Show("Unable to open video recording XML!",
                                    "ERROR!", MessageBoxButtons.OK);
                    return;
                }
                RecordingInfo rec = xml.GetHeader();

                if (!FileCameraOpen(rec))
                {
                    MessageBox.Show("Unable to open video recording!",
                                    "ERROR!", MessageBoxButtons.OK);
                    return;
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "ERROR!", MessageBoxButtons.OK);
            }

            // Обновляем пути к файлам разметки и видеозаписи на форме
            m_gui.RecordingFile = m_gui.dlgRecordingOpen.FileName;
        }