vdr  2.2.0
Classes | Namespaces | Typedefs | Enumerations | Functions
si.h File Reference
#include <stdint.h>
#include "util.h"
#include "headers.h"

Go to the source code of this file.

Classes

class  SI::Object
 
class  SI::Section
 
class  SI::CRCSection
 
class  SI::NumberedSection
 
class  SI::VariableLengthPart
 
class  SI::LoopElement
 
class  SI::Descriptor
 
class  SI::Loop
 
class  SI::Loop::Iterator
 
class  SI::StructureLoop< T >
 
class  SI::DescriptorLoop
 
class  SI::TypeLoop< T >
 
class  SI::MHP_DescriptorLoop
 
class  SI::PCIT_DescriptorLoop
 
class  SI::GroupDescriptor
 
class  SI::DescriptorGroup
 
class  SI::String
 

Namespaces

 SI
 

Typedefs

typedef uint8_t SI::EightBit
 
typedef uint16_t SI::SixteenBit
 
typedef uint32_t SI::ThirtyTwoBit
 
typedef uint64_t SI::SixtyFourBit
 

Enumerations

enum  SI::TableId {
  SI::TableIdPAT = 0x00, SI::TableIdCAT = 0x01, SI::TableIdPMT = 0x02, SI::TableIdTSDT = 0x03,
  SI::TableIdNIT = 0x40, SI::TableIdNIT_other = 0x41, SI::TableIdSDT = 0x42, SI::TableIdSDT_other = 0x46,
  SI::TableIdBAT = 0x4A, SI::TableIdEIT_presentFollowing = 0x4E, SI::TableIdEIT_presentFollowing_other = 0x4F, SI::TableIdEIT_schedule_first = 0x50,
  SI::TableIdEIT_schedule_last = 0x5F, SI::TableIdEIT_schedule_Other_first = 0x60, SI::TableIdEIT_schedule_Other_last = 0x6F, SI::TableIdTDT = 0x70,
  SI::TableIdRST = 0x71, SI::TableIdST = 0x72, SI::TableIdTOT = 0x73, SI::TableIdDIT = 0x7E,
  SI::TableIdSIT = 0x7F, SI::TableIdAIT = 0x74, SI::TableIdPremiereCIT = 0xA0
}
 
enum  SI::DescriptorTag {
  SI::VideoStreamDescriptorTag = 0x02, SI::AudioStreamDescriptorTag = 0x03, SI::HierarchyDescriptorTag = 0x04, SI::RegistrationDescriptorTag = 0x05,
  SI::DataStreamAlignmentDescriptorTag = 0x06, SI::TargetBackgroundGridDescriptorTag = 0x07, SI::VideoWindowDescriptorTag = 0x08, SI::CaDescriptorTag = 0x09,
  SI::ISO639LanguageDescriptorTag = 0x0A, SI::SystemClockDescriptorTag = 0x0B, SI::MultiplexBufferUtilizationDescriptorTag = 0x0C, SI::CopyrightDescriptorTag = 0x0D,
  SI::MaximumBitrateDescriptorTag = 0x0E, SI::PrivateDataIndicatorDescriptorTag = 0x0F, SI::SmoothingBufferDescriptorTag = 0x10, SI::STDDescriptorTag = 0x11,
  SI::IBPDescriptorTag = 0x12, SI::CarouselIdentifierDescriptorTag = 0x13, SI::AVCDescriptorTag = 0x28, SI::SVCExtensionDescriptorTag = 0x30,
  SI::MVCExtensionDescriptorTag = 0x31, SI::NetworkNameDescriptorTag = 0x40, SI::ServiceListDescriptorTag = 0x41, SI::StuffingDescriptorTag = 0x42,
  SI::SatelliteDeliverySystemDescriptorTag = 0x43, SI::CableDeliverySystemDescriptorTag = 0x44, SI::VBIDataDescriptorTag = 0x45, SI::VBITeletextDescriptorTag = 0x46,
  SI::BouquetNameDescriptorTag = 0x47, SI::ServiceDescriptorTag = 0x48, SI::CountryAvailabilityDescriptorTag = 0x49, SI::LinkageDescriptorTag = 0x4A,
  SI::NVODReferenceDescriptorTag = 0x4B, SI::TimeShiftedServiceDescriptorTag = 0x4C, SI::ShortEventDescriptorTag = 0x4D, SI::ExtendedEventDescriptorTag = 0x4E,
  SI::TimeShiftedEventDescriptorTag = 0x4F, SI::ComponentDescriptorTag = 0x50, SI::MocaicDescriptorTag = 0x51, SI::StreamIdentifierDescriptorTag = 0x52,
  SI::CaIdentifierDescriptorTag = 0x53, SI::ContentDescriptorTag = 0x54, SI::ParentalRatingDescriptorTag = 0x55, SI::TeletextDescriptorTag = 0x56,
  SI::TelephoneDescriptorTag = 0x57, SI::LocalTimeOffsetDescriptorTag = 0x58, SI::SubtitlingDescriptorTag = 0x59, SI::TerrestrialDeliverySystemDescriptorTag = 0x5A,
  SI::MultilingualNetworkNameDescriptorTag = 0x5B, SI::MultilingualBouquetNameDescriptorTag = 0x5C, SI::MultilingualServiceNameDescriptorTag = 0x5D, SI::MultilingualComponentDescriptorTag = 0x5E,
  SI::PrivateDataSpecifierDescriptorTag = 0x5F, SI::ServiceMoveDescriptorTag = 0x60, SI::ShortSmoothingBufferDescriptorTag = 0x61, SI::FrequencyListDescriptorTag = 0x62,
  SI::PartialTransportStreamDescriptorTag = 0x63, SI::DataBroadcastDescriptorTag = 0x64, SI::ScramblingDescriptorTag = 0x65, SI::DataBroadcastIdDescriptorTag = 0x66,
  SI::TransportStreamDescriptorTag = 0x67, SI::DSNGDescriptorTag = 0x68, SI::PDCDescriptorTag = 0x69, SI::AC3DescriptorTag = 0x6A,
  SI::AncillaryDataDescriptorTag = 0x6B, SI::CellListDescriptorTag = 0x6C, SI::CellFrequencyLinkDescriptorTag = 0x6D, SI::AnnouncementSupportDescriptorTag = 0x6E,
  SI::ApplicationSignallingDescriptorTag = 0x6F, SI::AdaptationFieldDataDescriptorTag = 0x70, SI::ServiceIdentifierDescriptorTag = 0x71, SI::ServiceAvailabilityDescriptorTag = 0x72,
  SI::DefaultAuthorityDescriptorTag = 0x73, SI::RelatedContentDescriptorTag = 0x74, SI::TVAIdDescriptorTag = 0x75, SI::ContentIdentifierDescriptorTag = 0x76,
  SI::TimeSliceFecIdentifierDescriptorTag = 0x77, SI::ECMRepetitionRateDescriptorTag = 0x78, SI::S2SatelliteDeliverySystemDescriptorTag = 0x79, SI::EnhancedAC3DescriptorTag = 0x7A,
  SI::DTSDescriptorTag = 0x7B, SI::AACDescriptorTag = 0x7C, SI::ExtensionDescriptorTag = 0x7F, SI::LogicalChannelDescriptorTag = 0x83,
  SI::PreferredNameListDescriptorTag = 0x84, SI::PreferredNameIdentifierDescriptorTag = 0x85, SI::EacemStreamIdentifierDescriptorTag = 0x86, SI::HdSimulcastLogicalChannelDescriptorTag = 0x88,
  SI::ImageIconDescriptorTag = 0x00, SI::CpcmDeliverySignallingDescriptor = 0x01, SI::CPDescriptorTag = 0x02, SI::CPIdentifierDescriptorTag = 0x03,
  SI::T2DeliverySystemDescriptorTag = 0x04, SI::SHDeliverySystemDescriptorTag = 0x05, SI::SupplementaryAudioDescriptorTag = 0x06, SI::NetworkChangeNotifyDescriptorTag = 0x07,
  SI::MessageDescriptorTag = 0x08, SI::TargetRegionDescriptorTag = 0x09, SI::TargetRegionNameDescriptorTag = 0x0A, SI::ServiceRelocatedDescriptorTag = 0x0B,
  SI::XAITPidDescriptorTag = 0x0C, SI::C2DeliverySystemDescriptorTag = 0x0D, SI::VideoDepthRangeDescriptorTag = 0x10, SI::T2MIDescriptorTag = 0x11,
  SI::MHP_ApplicationDescriptorTag = 0x00, SI::MHP_ApplicationNameDescriptorTag = 0x01, SI::MHP_TransportProtocolDescriptorTag = 0x02, SI::MHP_DVBJApplicationDescriptorTag = 0x03,
  SI::MHP_DVBJApplicationLocationDescriptorTag = 0x04, SI::MHP_ExternalApplicationAuthorisationDescriptorTag = 0x05, SI::MHP_IPv4RoutingDescriptorTag = 0x06, SI::MHP_IPv6RoutingDescriptorTag = 0x07,
  SI::MHP_DVBHTMLApplicationDescriptorTag = 0x08, SI::MHP_DVBHTMLApplicationLocationDescriptorTag = 0x09, SI::MHP_DVBHTMLApplicationBoundaryDescriptorTag = 0x0A, SI::MHP_ApplicationIconsDescriptorTag = 0x0B,
  SI::MHP_PrefetchDescriptorTag = 0x0C, SI::MHP_DelegatedApplicationDescriptorTag = 0x0E, SI::MHP_ApplicationStorageDescriptorTag = 0x10, SI::MHP_SimpleApplicationLocationDescriptorTag = 0x15,
  SI::MHP_SimpleApplicationBoundaryDescriptorTag = 0x17, SI::PremiereContentTransmissionDescriptorTag = 0xF2, SI::UnimplementedDescriptorTag = 0xFF
}
 
enum  SI::DescriptorTagDomain { SI::SI, SI::MHP, SI::PCIT }
 
enum  SI::RunningStatus {
  SI::RunningStatusUndefined = 0, SI::RunningStatusNotRunning = 1, SI::RunningStatusStartsInAFewSeconds = 2, SI::RunningStatusPausing = 3,
  SI::RunningStatusRunning = 4
}
 
enum  SI::LinkageType {
  SI::LinkageTypeInformationService = 0x01, SI::LinkageTypeEPGService = 0x02, SI::LinkageTypeCaReplacementService = 0x03, SI::LinkageTypeTSContainingCompleteNetworkBouquetSi = 0x04,
  SI::LinkageTypeServiceReplacementService = 0x05, SI::LinkageTypeDataBroadcastService = 0x06, SI::LinkageTypeRCSMap = 0x07, SI::LinkageTypeMobileHandover = 0x08,
  SI::LinkageTypeSystemSoftwareUpdateService = 0x09, SI::LinkageTypeTSContainingSsuBatOrNit = 0x0A, SI::LinkageTypePremiere = 0xB0
}
 
enum  SI::AudioType { SI::AudioTypeUndefined = 0x00, SI::AudioTypeCleanEffects = 0x01, SI::AudioTypeHearingImpaired = 0x02, SI::AudioTypeVisualImpairedCommentary = 0x03 }
 

Functions

void SI::SetOverrideCharacterTable (const char *CharacterTable)
 
bool SI::SetSystemCharacterTable (const char *CharacterTable)
 
const char * SI::getCharacterTable (const unsigned char *&buffer, int &length, bool *isSingleByte)
 
bool SI::convertCharacterTable (const char *from, size_t fromLength, char *to, size_t toLength, const char *fromCode)
 
bool SI::systemCharacterTableIsSingleByte (void)