Exemplo n.º 1
0
        // Load vsPages
        private void LoadPages(XmlTextReader reader)
        {
            try
            {
                // load all vsPages
                while (reader.Name == "Page")
                {
                    int depth = reader.Depth;

                    // create new camera
                    VsPage page = new VsPage(reader.GetAttribute("name"), SyncTimer);

                    page.PageID = int.Parse(reader.GetAttribute("id"));
                    page.Description = reader.GetAttribute("desc");

                    // read vsCameras
                    string[] strIDs = reader.GetAttribute("channels").Split(',');

                    for (int i = 0; i < VsPage.MaxChannel; i++)
                    {
                        int id = int.Parse(strIDs[i]);
                        page.SetChannel(id, GetChannelByID(id));
                    }

                    // add page
                    vsPages.Add(page);

                    if (page.PageID >= vsNextPageID)
                        vsNextPageID = page.PageID + 1;

                    // move to next node
                    reader.Read();

                    // move to next element node
                    while (reader.NodeType == XmlNodeType.EndElement)
                        reader.Read();
                    if (reader.Depth < depth)
                        return;
                }
            }
            catch (Exception err)
            {
                logger.Log(LogLevel.Error, err.Message + " " + err.Source + " " + err.StackTrace);;
            }
        }
Exemplo n.º 2
0
        // Add channel
        public bool AddPage(String pageName, String[] channelList)
        {
            try
            {
                // if this name is already exist
                if (GetPageByName(pageName) != null)
                    return false;

                VsPage vsPage = new VsPage(pageName, SyncTimer);

                foreach (String channelName in channelList)
                {
                    VsChannel vsChannel = GetChannelByName(channelName);
                    if (vsChannel != null)
                        vsPage.SetChannel(vsChannel.ChannelID, vsChannel);
                }

                // add to page collection
                AddPage(vsPage);
                return true;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            return false;
        }