/// <summary>
        /// Cria o arquivo RPT para todos os painéis.
        /// </summary>
        /// <param name="id_roteiro">id do roteiro.</param>
        private void CriaRPT(string id_roteiro, int indicePainel)
        {
            Arquivo_RPT arptTemp = new Arquivo_RPT();

            arptTemp.CriarRoteirosPathPadrao();
            arptTemp.idRoteiro = System.Convert.ToUInt16(id_roteiro);

            arptTemp.pathExibicaoIda = Util.Util.DIRETORIO_VIDEOS_FIRMWARE + sequencial_arquivo_V01.ToString("X8") + @".pls";

            arptTemp.pathExibicaoVolta = Util.Util.DIRETORIO_VIDEOS_FIRMWARE + sequencial_arquivo_V01.ToString("X8") + @".pls";

            arptTemp.pathNumeroRoteiro = Util.Util.DIRETORIO_VIDEOS_FIRMWARE + sequencial_arquivo_V01.ToString("X8") + @".pls";

            arptTemp.pathExibicaoIda   = Util.Util.TrataDiretorio(arptTemp.pathExibicaoIda);
            arptTemp.pathExibicaoVolta = Util.Util.TrataDiretorio(arptTemp.pathExibicaoVolta);
            arptTemp.pathNumeroRoteiro = Util.Util.TrataDiretorio(arptTemp.pathNumeroRoteiro);

            arptTemp.Salvar(DiretorioPrincipal + DIRETORIO_PAINEIS + @"\" + indicePainel.ToString("d2") + DIRETORIO_PAINEL_ROTEIROS + @"\" + sequencial_arquivo_roteiros.ToString("X8") + ".rpt");

            arptTemp.GerarFormatoNovo(DiretorioPrincipal + DIRETORIO_PAINEIS + @"\" + indicePainel.ToString("d2") + DIRETORIO_PAINEL_ROTEIROS + @"\" + sequencial_arquivo_roteiros.ToString("X8") + ".rpt", DiretorioPrincipal);

            sequencial_arquivo_V01      = sequencial_arquivo_V01 + 1;
            sequencial_arquivo_roteiros = sequencial_arquivo_roteiros + 1;
        }
示例#2
0
        public void GerarArquivosRPT(String arquivoNome, int indicePainel, uint altura, uint largura)
        {
            Arquivo_RPT arpt                = new Arquivo_RPT();
            String      conteudo_rpt_ida    = string.Empty;
            String      conteudo_rpt_volta  = string.Empty;
            String      conteudo_rpt_numero = string.Empty;

            List <String> RPTContentIda    = new List <string>();
            List <String> RPTContentVolta  = new List <string>();
            List <String> RPTContentNumero = new List <string>();

            GerarPlayList(arquivoNome + Util.Util.DIRETORIO_VIDEOS, RPTContentIda, RPTContentVolta, RPTContentNumero, altura, largura);


            if (RPTContentIda.Count > 1)
            {
                conteudo_rpt_ida = CriarPlaylist(arquivoNome + Util.Util.DIRETORIO_VIDEOS, RPTContentIda);
            }
            else
            {
                conteudo_rpt_ida = RPTContentIda[0];
            }
            if (IdaIgualVolta)
            {
                conteudo_rpt_volta = conteudo_rpt_ida;
            }
            else
            {
                if (RPTContentVolta.Count > 1)
                {
                    conteudo_rpt_volta = CriarPlaylist(arquivoNome + Util.Util.DIRETORIO_VIDEOS, RPTContentVolta);
                }
                else
                {
                    conteudo_rpt_volta = RPTContentVolta[0];
                }
            }
            conteudo_rpt_numero = RPTContentNumero[0];


            arpt.pathExibicaoIda   = Util.Util.TrataDiretorio(conteudo_rpt_ida);
            arpt.pathExibicaoVolta = Util.Util.TrataDiretorio(conteudo_rpt_volta);
            arpt.pathNumeroRoteiro = Util.Util.TrataDiretorio(conteudo_rpt_numero);
            string raiz = arquivoNome;

            arquivoNome = arquivoNome +
                          Util.Util.ARQUIVO_SEPARADOR_DIRETORIO_WINDOWS +
                          Util.Util.DIRETORIO_PAINEL +
                          Util.Util.ARQUIVO_SEPARADOR_DIRETORIO_WINDOWS +
                          indicePainel.ToString(Util.Util.ARQUIVO_PAINEL_NUMEROALGS) +
                          Util.Util.ARQUIVO_SEPARADOR_DIRETORIO_WINDOWS +
                          Util.Util.DIRETORIO_ROTEIROS;

            arpt.Salvar(arquivoNome);

            arpt.GerarFormatoNovo(arquivoNome, raiz);//+
            //Util.Util.DIRETORIO_PAI +
            //Util.Util.DIRETORIO_PAI +
            //Util.Util.DIRETORIO_PAI +
            //Util.Util.DIRETORIO_PAI);
        }
        private void SalvaRoteiros(int indicePainel)
        {
            int           numRoteiros     = parser.control.QtdRoteiros;
            int           count           = 0 + indicePainel;
            List <String> lArquivosNumero = new List <string>();
            List <String> lArquivosIda    = new List <string>();
            List <String> lArquivosVolta  = new List <string>();

            // Reinicia o sequencial do arquivo de roteiros devido a mudança de Painéis.
            sequencial_arquivo_roteiros = 0;

            for (int j = 0; j < numRoteiros; j++)
            {
                lArquivosNumero.Clear();
                lArquivosIda.Clear();
                lArquivosVolta.Clear();
                Controlador.Roteiro r = new Controlador.Roteiro();
                r.ID = count;
                //RandomizaId(id);
                r.ID = r.ID + 1;
                //Verifica o count de texto. caso tenha mais de um texto, deve-se
                //proceder de uma forma diferente: continua-se criando os .v01 .v02 etc..
                //mas tem de se construir um arquivo .pls(que conterá os nomes desses vídeos)
                //que será apontado por um arquivo path(.mpt ou .rpt) e que será gravado no mesmo diretório de videos(O arquivo .pls).
                //O arquivo .pls é considerado um arquivo de vídeo.
                #region Numero do Roteiro

                String nome_arquivo = DiretorioPrincipal + DIRETORIO_VIDEOS + @"\" + sequencial_arquivo_V02.ToString("X8");

                Persistencia.Videos.VideoV02 videoNumero = new Persistencia.Videos.VideoV02();

                videoNumero.Altura  = parser.control.Painel[indicePainel].Altura;
                videoNumero.Largura = parser.control.Painel[indicePainel].Largura;

                videoNumero.animacao = (byte)parser.RetornaRolagemNumeroRoteiro(indicePainel, j);

                videoNumero.tempoRolagem      = parser.control.TempoRolagem;
                videoNumero.tempoApresentacao = parser.control.TempoRoteiro[0];

                videoNumero.pixelBytes = parser.RetornarPixelBytesNumeroRoteiro(indicePainel, j);
                videoNumero.Largura    = (uint)parser.RetornarLarguraPixelBytesNumeroRoteiro(indicePainel, j);
                videoNumero.Salvar(nome_arquivo, true);
                sequencial_arquivo_V02 = sequencial_arquivo_V02 + 1;
                lArquivosNumero.Add(nome_arquivo + Util.Util.ARQUIVO_EXT_V02);

                #endregion

                #region Ida
                int QuantidadeFrases = parser.RetornarQuantidadeFrases(indicePainel, j, true);

                for (int ntexto = 0; ntexto < QuantidadeFrases; ntexto++)
                {
                    count = count + 1;

                    nome_arquivo = DiretorioPrincipal + DIRETORIO_VIDEOS + @"\" + sequencial_arquivo_V02.ToString("X8");

                    Persistencia.Videos.VideoV02 v02 = new Persistencia.Videos.VideoV02();

                    v02.Altura  = parser.control.Painel[indicePainel].Altura;
                    v02.Largura = parser.control.Painel[indicePainel].Largura;

                    v02.animacao = (byte)parser.RetornaRolagemRoteiro(indicePainel, j, ntexto, true);

                    v02.tempoRolagem = parser.control.TempoRolagem;

                    v02.tempoApresentacao = parser.control.TempoRoteiro[0];

                    v02.pixelBytes = parser.RetornarPixelBytesRoteiros(indicePainel, j, ntexto, true);
                    v02.Largura    = (uint)parser.RetornarLarguraPixelBytesRoteiros(indicePainel, j, ntexto, true);

                    v02.Salvar(nome_arquivo, true);
                    sequencial_arquivo_V02 = sequencial_arquivo_V02 + 1;
                    lArquivosIda.Add(nome_arquivo + Util.Util.ARQUIVO_EXT_V02);

                    Persistencia.Videos.VideoV04 v04 = new VideoV04();

                    v04.listaVideos = new List <IVideo>();
                    v04.listaVideos.Add(v02);
                    v04.listaVideos.Add(v02);
                }

                #endregion

                #region Volta
                QuantidadeFrases = parser.RetornarQuantidadeFrases(indicePainel, j, false);

                for (int ntexto = 0; ntexto < QuantidadeFrases; ntexto++)
                {
                    count = count + 1;

                    nome_arquivo = DiretorioPrincipal + DIRETORIO_VIDEOS + @"\" + sequencial_arquivo_V02.ToString("X8");

                    Persistencia.Videos.VideoV02 v02 = new Persistencia.Videos.VideoV02();

                    v02.Altura  = parser.control.Painel[indicePainel].Altura;
                    v02.Largura = parser.control.Painel[indicePainel].Largura;

                    v02.animacao = (byte)parser.RetornaRolagemRoteiro(indicePainel, j, ntexto, false);

                    v02.tempoRolagem = parser.control.TempoRolagem;

                    v02.tempoApresentacao = parser.control.TempoRoteiro[0];

                    v02.pixelBytes = parser.RetornarPixelBytesRoteiros(indicePainel, j, ntexto, false);
                    v02.Largura    = (uint)parser.RetornarLarguraPixelBytesRoteiros(indicePainel, j, ntexto, false);

                    v02.Salvar(nome_arquivo, true);
                    sequencial_arquivo_V02 = sequencial_arquivo_V02 + 1;
                    lArquivosVolta.Add(nome_arquivo + Util.Util.ARQUIVO_EXT_V02);
                }

                #endregion

                SalvaROT(r.ID.ToString("00"), indicePainel, j, 0, 0, true);

                Arquivo_RPT arptTemp = new Arquivo_RPT();

                arptTemp.CriarRoteirosPathPadrao();
                arptTemp.idRoteiro = System.Convert.ToUInt16(r.ID.ToString("00"));

                CriaPlaylist(lArquivosIda);
                arptTemp.pathExibicaoIda = Util.Util.DIRETORIO_VIDEOS_FIRMWARE + sequencial_arquivo_PLS.ToString("X8") + @".pls";
                sequencial_arquivo_PLS++;

                CriaPlaylist(lArquivosVolta);
                arptTemp.pathExibicaoVolta = Util.Util.DIRETORIO_VIDEOS_FIRMWARE + sequencial_arquivo_PLS.ToString("X8") + @".pls";
                sequencial_arquivo_PLS++;

                CriaPlaylist(lArquivosNumero);
                arptTemp.pathNumeroRoteiro = Util.Util.DIRETORIO_VIDEOS_FIRMWARE + sequencial_arquivo_PLS.ToString("X8") + @".pls";
                sequencial_arquivo_PLS++;

                arptTemp.pathExibicaoIda   = Util.Util.TrataDiretorio(arptTemp.pathExibicaoIda);
                arptTemp.pathExibicaoVolta = Util.Util.TrataDiretorio(arptTemp.pathExibicaoVolta);
                arptTemp.pathNumeroRoteiro = Util.Util.TrataDiretorio(arptTemp.pathNumeroRoteiro);

                arptTemp.Salvar(DiretorioPrincipal + DIRETORIO_PAINEIS + @"\" + indicePainel.ToString("d2") +
                                DIRETORIO_PAINEL_ROTEIROS + @"\" + sequencial_arquivo_roteiros.ToString("X8"));

                arptTemp.GerarFormatoNovo(DiretorioPrincipal + DIRETORIO_PAINEIS + @"\" + indicePainel.ToString("d2") + DIRETORIO_PAINEL_ROTEIROS + @"\" + sequencial_arquivo_roteiros.ToString("X8") + ".rpt", DiretorioPrincipal);

                sequencial_arquivo_roteiros = sequencial_arquivo_roteiros + 1;
            }
        }