Commit 8c030ad358bfc817b5527727e61412120f8f5fd4
1 parent
c7cb6b74
Exists in
master
and in
1 other branch
Documentação do componente renderer
Showing
2 changed files
with
75 additions
and
0 deletions
Show diff stats
renderer/src/include/listenerRenderer.h
renderer/src/include/renderer.h
| 1 | +/** | ||
| 2 | + * \file renderer.h | ||
| 3 | + * | ||
| 4 | + * \author Wesnydy Lima Ribeiro <wesnydy@lavid.ufpb.br> | ||
| 5 | + * \date 2015 | ||
| 6 | + */ | ||
| 7 | + | ||
| 1 | #ifndef RENDERER_H | 8 | #ifndef RENDERER_H |
| 2 | #define RENDERER_H | 9 | #define RENDERER_H |
| 3 | 10 | ||
| @@ -28,15 +35,51 @@ using namespace jthread; | @@ -28,15 +35,51 @@ using namespace jthread; | ||
| 28 | using namespace std; | 35 | using namespace std; |
| 29 | using namespace util; | 36 | using namespace util; |
| 30 | 37 | ||
| 38 | +/** \brief Classe que implementa o Renderizador. | ||
| 39 | + * | ||
| 40 | + * \headerfile renderer/src/include/renderer.h | ||
| 41 | + */ | ||
| 31 | class Renderer : public Thread { | 42 | class Renderer : public Thread { |
| 43 | + | ||
| 32 | public: | 44 | public: |
| 45 | + /** Construtor. | ||
| 46 | + * | ||
| 47 | + * \param videoPath Abstração do path do vídeo de saída. | ||
| 48 | + * \param user_id Identificação do usuário. | ||
| 49 | + */ | ||
| 33 | Renderer(char* videoPath, char* user_id); | 50 | Renderer(char* videoPath, char* user_id); |
| 51 | + | ||
| 52 | + /** Destrutor. */ | ||
| 34 | ~Renderer(); | 53 | ~Renderer(); |
| 35 | 54 | ||
| 55 | + /** Indica o status do envio da glosa para o player. | ||
| 56 | + * | ||
| 57 | + * \return O status do envio. | ||
| 58 | + */ | ||
| 36 | bool isSending(); | 59 | bool isSending(); |
| 60 | + | ||
| 61 | + /** Recebe a glosa q será enviada para o player. | ||
| 62 | + * | ||
| 63 | + * \param glosa A glosa que será enviada. | ||
| 64 | + * \param pts A etiqueta de tempo da glosa. | ||
| 65 | + */ | ||
| 37 | void receiveGlosa(std::string glosa, int64_t pts); | 66 | void receiveGlosa(std::string glosa, int64_t pts); |
| 67 | + | ||
| 68 | + /** Adiciona ouvintes do renderer. | ||
| 69 | + * | ||
| 70 | + * \param listener O ouvinte a ser registrado. | ||
| 71 | + */ | ||
| 38 | void addListener(ListenerRenderer* listener); | 72 | void addListener(ListenerRenderer* listener); |
| 73 | + | ||
| 74 | + /** Finaliza o envio das glosas. | ||
| 75 | + * | ||
| 76 | + * Uma flag de FINALIZE é enviada para o player | ||
| 77 | + * sinalizando que não há mais glosas para serem | ||
| 78 | + * enviadas. | ||
| 79 | + */ | ||
| 39 | void finalize(); | 80 | void finalize(); |
| 81 | + | ||
| 82 | + /** Este método é chamado quando a Thread for iniciada. */ | ||
| 40 | void Run(); | 83 | void Run(); |
| 41 | 84 | ||
| 42 | private: | 85 | private: |
| @@ -51,12 +94,40 @@ private: | @@ -51,12 +94,40 @@ private: | ||
| 51 | char* path_video; | 94 | char* path_video; |
| 52 | string glosa_copy; | 95 | string glosa_copy; |
| 53 | 96 | ||
| 97 | + /** | ||
| 98 | + * Renderiza o vídeo de libras a partir | ||
| 99 | + * das screenshots geradas pelo player. | ||
| 100 | + */ | ||
| 54 | void render(); | 101 | void render(); |
| 102 | + | ||
| 103 | + /** Envia a glosa para o player | ||
| 104 | + * | ||
| 105 | + * \exception RuntimeException Se houver falha no envio da glosa. | ||
| 106 | + */ | ||
| 55 | void sendGlosa(); | 107 | void sendGlosa(); |
| 108 | + | ||
| 109 | + /** Notifica os ouvintes sobre o fim da renderização. */ | ||
| 56 | void notifyListeners(); | 110 | void notifyListeners(); |
| 111 | + | ||
| 112 | + /** Faz a conexão com o player do Unity | ||
| 113 | + * | ||
| 114 | + * \exception RuntimeException Se a conexão for mal sucedida. | ||
| 115 | + */ | ||
| 57 | void connectToUnity(); | 116 | void connectToUnity(); |
| 117 | + | ||
| 118 | + /** Inicializa o servidor do player do Unity. | ||
| 119 | + * | ||
| 120 | + * A inicialização é feita a partir de um script externo. | ||
| 121 | + */ | ||
| 58 | void serverInitialize(); | 122 | void serverInitialize(); |
| 123 | + | ||
| 124 | + /** Aguarda o player gerar as screenshots do vídeo de LIBRAS. | ||
| 125 | + * | ||
| 126 | + * \exception RuntimeException Se falhar a comunicação com o player. | ||
| 127 | + */ | ||
| 59 | void waitScreenShots(); | 128 | void waitScreenShots(); |
| 129 | + | ||
| 130 | + /** Remove os arquivos temporários, gerados pelos processos.*/ | ||
| 60 | void cleanFiles(); | 131 | void cleanFiles(); |
| 61 | }; | 132 | }; |
| 62 | 133 |