diff --git a/extrator/src/include/extrator.h b/extrator/src/include/extrator.h index 710058e..3f44f44 100644 --- a/extrator/src/include/extrator.h +++ b/extrator/src/include/extrator.h @@ -1,3 +1,10 @@ +/** + * \file extrator.h + * + * \author Wesnydy Lima Ribeiro + * \date 2015 + */ + #ifndef EXTRATOR_H #define EXTRATOR_H @@ -11,6 +18,10 @@ using namespace util; using namespace lavidlib; +/** \brief A classe base para todos os extratores. + * + * \headerfile extrator/src/include/extrator.h + */ class Extrator { protected: @@ -26,9 +37,26 @@ public: SRT, TXT }; + + /** Notifica o fim da extração do conteúdo do arquivo. + * + * \param size Quantidade de conteúdo extraído. + */ virtual void notifyEndExtraction(int size) = 0; + + /** Define o path do arquivo de entrada. + * + * \param path O path do arquivo. + */ virtual void setFilePath(char* path) = 0; + + /** Inicializa a extração do conteúdo. */ virtual void initialize() = 0; + + /** Indica o fim do processo de extração. + * + * \return O status do do processo. + */ virtual bool isFinished() = 0; }; diff --git a/extrator/src/include/extratorException.h b/extrator/src/include/extratorException.h index a1463ab..19e852e 100644 --- a/extrator/src/include/extratorException.h +++ b/extrator/src/include/extratorException.h @@ -1,3 +1,7 @@ +/** + * \file extratorException.h + */ + #ifndef EXTRATOREXCEPTION_H #define EXTRATOREXCEPTION_H @@ -8,18 +12,7 @@ using namespace std; class ExtratorException : public RuntimeException { public: - /** - * Construtor da classe. - * Cria uma nova exceção com uma mensagem detalhada. - * @param message A mensagem em forma de um objeto string. - */ ExtratorException(const string message); - - /** - * Construtor da classe. - * Cria uma nova exceção com uma mensagem detalhada. - * @param message A mensagem em forma de um array de caracteres. - */ ExtratorException(const char* message); }; diff --git a/extrator/src/include/extratorFactory.h b/extrator/src/include/extratorFactory.h index 5cfc715..9bc2691 100644 --- a/extrator/src/include/extratorFactory.h +++ b/extrator/src/include/extratorFactory.h @@ -1,3 +1,9 @@ +/** + * \file extratorFactory.h + * + * \author Wesnydy Lima Ribeiro + * \date 2015 + */ #ifndef EXTRATORFACTORY_H #define EXTRATORFACTORY_H diff --git a/extrator/src/include/extratorSRT.h b/extrator/src/include/extratorSRT.h index d16388a..895dfa1 100644 --- a/extrator/src/include/extratorSRT.h +++ b/extrator/src/include/extratorSRT.h @@ -1,9 +1,10 @@ -/* - * File: extratorSRT.h - * Author: leonardo +/** + * \file extratorSRT.h * - * Created on 17 de Fevereiro de 2012, 17:51 + * \author Leonardo de Araújo Domingues + * \date 17/02/2012 */ + #ifndef EXTRATORSRT_H #define EXTRATORSRT_H @@ -27,28 +28,73 @@ using namespace jthread; using namespace std; using namespace sndesc; -/** Classe que modela ExtratorSRT. -* Instâncias do tipo ExtratorSRT são modelados -* a partir desta classe, esses objetos são -* responsáveis por extrair o conteudo de arquivos -* com a extensão SubRipText(SRT). +/** \brief Classe que implementa o extrator de legenda. +* +* Instâncias desta classe extraem o conteúdo de +* arquivos SubRipText(SRT). +* +* \headerfile extrator/src/include/extratorSRT.h */ class ExtratorSRT: public Extrator, public Thread { public: + /** Construtor */ ExtratorSRT(); + + /** Destrutor */ ~ExtratorSRT(); + /** Adiciona ouvintes do extratorSRT. + * + * \param listener O ouvinte a ser registrado. + */ void addListener(ListenerSRT* listener); + + /** Notifica os ouvintes sobre novas extrações realizadas. + * + * \param subtitle A legenda extraída. + * \param pts Etiqueta de tempo (Presentation timestamp) da legenda. + */ void notifyListeners(unsigned char* subtitle, int64_t pts); + + /** Notifica o fim da extração das legendas. + * + * \param size Quantidade de legendas extraídas. + */ void notifyEndExtraction(int size); + /** Define o path do arquivo de entrada. + * + * \param path O path do arquivo. + */ void setFilePath(char* path); + + /** Inicializa o processo de extração da legendas. + * + * \exception ExtratorException caso o arquivo de legenda não seja encontrado. + */ void initialize(); + + /** Indica o fim do processo de extração das legendas. + * + * \return O status do do processo. + */ bool isFinished(); + /** Retorna o conteúdo da legenda extraída. + * + * \return Referência para um objeto Subtitle. + * \exception ExtratorException se ocorrer algum erro no processo de extração. + */ Subtitle* next(); + + /** Indica se há legendas para serem extraídas do arquivo. + * + * \return True se houver legendas, caso contrário, retorna False. + */ bool hasNextSubtitle(); + + /** Este método é chamado quando a Thread for iniciada. */ void Run(); private: diff --git a/extrator/src/include/extratorTXT.h b/extrator/src/include/extratorTXT.h index fd8a4b1..f588e1d 100644 --- a/extrator/src/include/extratorTXT.h +++ b/extrator/src/include/extratorTXT.h @@ -1,13 +1,9 @@ -/*************************************************************************** - * Universidade Federal da Paraíba * - * Copyright (C) 2014 by Laboratório de Aplicações de Vídeo Digital * - * * - * Centro de Informática - UFPB - Campus I * - * João Pessoa - PB - Brasil * - * * - * Author: Erickson Silva (erickson.silva@lavid.ufpb.br) * - * * - **************************************************************************/ +/** + * \file extratorTXT.h + * + * \author Erickson Silva + * \date 2014 + */ #ifndef EXTRATORTXT_H #define EXTRATORTXT_H @@ -23,25 +19,59 @@ using namespace jthread; using namespace std; -/** -* Classe que modela o ExtratorTXT. -* O ExtratorTXT extrai o conteúdo -* de um arquivo txt. +/** \brief Classe que implementa o extrator de texto. +* +* Instâncias desta classe extraem o conteúdo de +* arquivos txt. +* +* \headerfile extrator/src/include/extratorTXT.h */ class ExtratorTXT: public Extrator, public Thread { public: + /** Construtor */ ExtratorTXT(); + + /** Destrutor */ ~ExtratorTXT(); + /** Adiciona ouvintes do extratorTXT. + * + * \param listener O ouvinte a ser registrado. + */ void addListener(ListenerTXT* listener); + + /** Notifica os ouvintes sobre novas extrações realizadas. + * + * \param line A linha extraída. + */ void notifyListeners(unsigned char* line); + + /** Notifica o fim da extração do texto. + * + * \param size Quantidade de linhas extraídas. + */ void notifyEndExtraction(int size); + /** Define o path do arquivo de entrada. + * + * \param path O path do arquivo. + */ void setFilePath(char* path); + + /** Inicializa o processo de extração do texto. + * + * \exception ExtratorException caso o arquivo de texto não seja encontrado. + */ void initialize(); + + /** Indica o fim do processo de extração do texto. + * + * \return O status do do processo. + */ bool isFinished(); + /** Este método é chamado quando a Thread for iniciada. */ void Run(); private: diff --git a/extrator/src/include/listenerSRT.h b/extrator/src/include/listenerSRT.h index a2e9856..0a67142 100644 --- a/extrator/src/include/listenerSRT.h +++ b/extrator/src/include/listenerSRT.h @@ -1,3 +1,7 @@ +/** + * \file listenerSRT.h + */ + #ifndef LISTENERSRT_H #define LISTENERSRT_H diff --git a/extrator/src/include/listenerTXT.h b/extrator/src/include/listenerTXT.h index 887790e..8cfad7d 100644 --- a/extrator/src/include/listenerTXT.h +++ b/extrator/src/include/listenerTXT.h @@ -1,3 +1,7 @@ +/** + * \file listenerTXT.h + */ + #ifndef LISTENERTXT_H #define LISTENERTXT_H diff --git a/extrator/src/include/subtitle.h b/extrator/src/include/subtitle.h index 0618ecf..1c1ef47 100644 --- a/extrator/src/include/subtitle.h +++ b/extrator/src/include/subtitle.h @@ -1,14 +1,9 @@ -/*************************************************************************** - * Universidade Federal da Paraíba * - * Copyright (C) 2013 by Laboratório de Aplicações de Vídeo Digital * - * * - * Centro de Informática - UFPB - Campus I * - * João Pessoa - PB - Brasil * - * * - * Author: Leonardo de Araújo Domingues (leonardo.araujo@lavid.ufpb.br) * - * Date: Qui Out 24 22:26:35 BRT 2013 * - * * - **************************************************************************/ +/** + * \file subtitle.h + * + * \author Leonardo de Araújo Domingues + * \date 24/10/2015 + */ #ifndef SUBTITLE_H #define SUBTITLE_H @@ -23,115 +18,90 @@ namespace sndesc { - /** - * Classe que modela legendas. - * Objetos com informações de legendas - * são implementados através desta classe. - */ + /** \brief Classe que modela legendas. + * + * Objetos com informações de legendas + * são implementados através desta classe. + * \headerfile extrator/src/include/subtitle.h + */ class Subtitle { public: - /** - * Construtor da classe. - * Cria uma nova instância da classe para - * representar uma legenda, as variáveis - * iniciam com valores default. - */ + /** Construtor */ Subtitle(); - /** - * Construtor da clasee. - * Cria uma nova instância da classe para a representar uma legenda, - * as variáveis iniciam com valores passados por parametros. - * @param _id O numero da legenda. - * @param _sub_text O texto da legenda. - * @param _timein O tempo de inicio da legenda. - * @param _timeout O tempo de termino da legenda. + /** Construtor. + * + * \param _id Número da legenda. + * \param _sub_text Texto da legenda. + * \param _timein Tempo de inicio da legenda. + * \param _timeout Tempo de termino da legenda. */ Subtitle(int _id, string _sub_text, int64_t _timein, int64_t _timeout); - /** - * Destrutor da classe. - * Desaloca todo espaço de armazenamento atribuído - * para a instância do Subtitle. - */ + /** Destrutor */ ~Subtitle(); - /** - * Seta o id da legenda. - * @param _id O numero da legenda. + /** Seta o id da legenda. + * + * \param _id O numero da legenda. */ void setID(int _id); - /** - * Seta o texto da legenda. - * @param _subtext O texto da legenda. + /** Seta o texto da legenda. + * + * \param _subtext O texto da legenda. */ void setSubtitleText(std::string _subtext); - /** - * Seta o tempo de inicio da legenda. - * @param _timein O tempo de entrada da legenda. + /** Seta o tempo de inicio da legenda. + * + * \param _timein O tempo de entrada da legenda. */ void setTimeIn(int64_t _timein); - /** - * Seta o tempo de termino da legenda. - * @param _timeout O tempo de saida da legenda. + /** Seta o tempo de termino da legenda. + * + * \param _timeout O tempo de saida da legenda. */ void setTimeOut(int64_t _timeout); - /** - * Obtém o texto da legenda. - * @return O texto da legenda. + /** Obtém o texto da legenda. + * + * \return O texto da legenda. */ std::string getSubtitleText(); - /** - * Obtém o tempo de inicio da legenda. - * @return O tempo de inicio. + /** Obtém o tempo de inicio da legenda. + * + * \return O tempo de inicio. */ int64_t getTimeIn(); - /** - * Obtém o tempo de termino da legenda. - * @return O tempo de saida. + /** Obtém o tempo de termino da legenda. + * + * \return O tempo de termino. */ int64_t getTimeOut(); - /** - * Obtém o id da legenda. - * @return O numero da legenda. + /** Obtém o id da legenda. + * + * \return O numero da legenda. */ int getID(); - /** - * Converte os dados de uma legenda em uma string. - * @return Uma string com a representação da legenda. + /** Converte os dados de uma legenda em uma string. + * + * \return Uma string com a representação da legenda. */ string toString(); private: - /** - * O numero da legenda. - */ - int id; - - /** - * O texto da legenda. - */ - string subtitle_text; - /** - * O tempo de entrada da legenda. - */ + int id; int64_t time_in; - - /** - * O tempo de saida da legenda. - */ int64_t time_out; - + string subtitle_text; }; } -- libgit2 0.21.2