librassection.h 1.87 KB
#ifndef _SYNCRO_PES_DATA_H_
#define _SYNCRO_PES_DATA_H_

#include "librascontrolsection.h"

 namespace Codificador {
	
	class LibrasSection{
	
		private:
			unsigned char tableid;
			unsigned char section_syntax_indicator;
			unsigned short libras_section_length;
                        unsigned short table_id_extension;
                        unsigned char version_number;
                        unsigned char current_next_indicator;
                        unsigned char section_number;
                        unsigned char last_section_number;
                        unsigned int crc32;
			 
			LibrasControlSection *libras;
			
		public:				
	
			LibrasSection(LibrasControlSection *libr, unsigned int type, unsigned char version);
			virtual ~LibrasSection();
			
			unsigned char getSectionSyntaxIndicator();
			unsigned short getLibrasSectionLength();
			unsigned char getTableIdExtension();
                        unsigned char getVersionNumber();
                        unsigned char getCurrentNextIndicator();
                        unsigned char getSectionNumber();
                        unsigned char getLastSectionNumber();
                        unsigned int getCrc32();
			LibrasControlSection *getLibras();
	
			void setSectionSyntaxIndicator(unsigned char section_syntax_indicator);
			void setLibrasSectionLength(unsigned short libras_section_length);
			void setTableIdExtension(unsigned short table_id_extension);
                        void setVersionNumber(unsigned char version_number);
                        void setCurrentNextIndicator(unsigned char current_next_indicator);
                        void setSectionNumber(unsigned char section_number);
                        void setLastSectionNumber(unsigned char last_section_number);

			void setLibras(LibrasControlSection *libras);
	
			unsigned char *generateBytes(unsigned short *syncPesLen);
	};	
		
 }
 
#endif