#ifndef SERVICEWINDOWGENERATION_H #define SERVICEWINDOWGENERATION_H #include #include "extratorCC.h" #include "demux.h" #include "dprintf.h" #include "inmanagementdata.h" #include "ouvinteTradutor.h" #include "tradutorPortGlosa.h" #include "stringAux.h" #include #include //#include "httpstreamer.h" #include "synchronizer.h" #include "ouvinteSynchronizer.h" #include "Mixer.h" #include #include "listenerMonitorPCRBase.h" #include #include "monitor_pcr.h" #include "inputFile.h" #define SERVICE_TYPE_CC 1 /* Closed Caption */ #define SERVICE_TYPE_SRT 2 /* Subtitle SRT */ #define SERVICE_TYPE_REC 3 /* Reconhecimento de Voz */ #define SERVICE_TYPE_TEXT 4 /* Texto */ using namespace Tradutor; using namespace Util; using namespace std; class ServiceWindowGeneration : public OuvinteTradutor, public OuvinteSynchronizer{ private: protected: TradutorPortGlosa *tradutor; //HttpStreamer *sincronizador; Synchronizer *sincronizador; int serviceType; vector *vetor_pts; int numero_legendas; int legendas_enviadas; char* path_input; char* path_libras; Mixer *mixer; bool running; //uint64_t primeiro_pcr_base; MonitorPCR * monitor_pcr_base; InputFile * inputfile; bool finish; int size, position, transparency, sublanguage; void setSize(int); void setPosition(int); void setTransparency(int); void setSubLanguage(int sublang); void setServiceType(int type); public: ServiceWindowGeneration(); ~ServiceWindowGeneration(); //virtual void notificaGlosaTraduzida( vector * glosas); virtual void codifica(vector * glosas); virtual void finalizouSincronizacao(); //virtual void notifyPCRBase(uint64_t pcr_base); void initialize(); TradutorPortGlosa *getTradutor(); void adicionaPTS(int64_t pts); bool isRunning(); char getRunningOption(); bool mustFinish(); void setPathLibras(char* _path_libras); void stopServiceText(); }; #endif /* SERVICEWINDOWGENERATION_H */