RDK Documentation (Open Sourced RDK Components)

Description

The following macros represents the default values for SI fields (OCAP specified) sourceId and tsId are set by default to -1

Data Structures

struct  ProgramDetails_s
 
struct  _SourceNameEntry
 
struct  siTableEntry
 
class  SiManager
 

Macros

#define SOURCEID_UNKNOWN   (0xFFFFFFFF)
 
#define TSID_UNKNOWN   (0xFFFFFFFF)
 
#define SI_DEFAULT_PROGRAM_NUMBER   (0xFFFFFFFF)
 
#define PROGRAM_NUMBER_UNKNOWN   (0xFFFF)
 
#define VIRTUAL_CHANNEL_UNKNOWN   (0xFFFF)
 
#define SI_DEFAULT_CHANNEL_NUMBER   0xFFFFFFFF
 

Typedefs

typedef enum _SIFileType_t_ SIFileType_t
 
typedef enum _siEntryState_ siEntryState
 
typedef enum _siChannelType siChannelType
 
typedef enum _siVideoStandard siVideoStandard
 
typedef enum _siServiceType siServiceType
 
typedef struct ProgramDetails_s ProgramDetails
 
typedef struct _SourceNameEntry SourceNameEntry
 

Enumerations

enum  _SIFileType_t_
 
enum  _siEntryState_
 
enum  _siChannelType
 
enum  _siVideoStandard
 
enum  _siServiceType
 

Data Structure Documentation

◆ ProgramDetails_s

struct ProgramDetails_s

Definition at line 143 of file simgr.h.

Collaboration diagram for ProgramDetails_s:
Collaboration graph
Data Fields
uint32_t virtual_channel_number
uint32_t source_id
uint32_t modulation_mode
uint32_t carrier_frequency
uint32_t program_number

◆ _SourceNameEntry

struct _SourceNameEntry

Definition at line 161 of file simgr.h.

Collaboration diagram for _SourceNameEntry:
Collaboration graph
Data Fields
bool appType
uint32_t id if appType=FALSE, sourceID otherwise appID
bool mapped
void * source_names
void * source_long_names NTT_SNS.
struct _SourceNameEntry * next Next source name entry.

◆ siTableEntry

struct siTableEntry

Definition at line 171 of file simgr.h.

Collaboration diagram for siTableEntry:
Collaboration graph
Data Fields
uint32_t ref_count
uint32_t activation_time SVCT.
long long ptime_service
uint32_t ts_handle
uint32_t program
uint32_t tuner_id
int32_t valid
uint16_t virtual_channel_number
int32_t isAppType For DSG app.
uint32_t source_id SVCT.
uint32_t app_id
uint32_t dsgAttached
uint32_t dsg_attach_count DSG attach count.
uint32_t state
uint32_t channel_type SVCT.
uint32_t video_standard SVCT (NTSC, PAL etc.)
uint32_t service_type SVCT (desc)
void * source_name_entry Reference to the corresponding NTT_SNS entry.
void * descriptions LVCT/CVCT (desc)
uint8_t freq_index SVCT.
uint8_t mode_index SVCT.
uint32_t major_channel_number
uint32_t minor_channel_number SVCT (desc)
uint16_t program_number SVCT.
uint8_t transport_type SVCT (0==MPEG2, 1==non-MPEG2)
int32_t scrambled SVCT.
void * hn_stream_session HN stream session handle.
uint32_t hn_attach_count HN stream session PSI attach / registration count.
siTableEntry * next next service entry

◆ SiManager

class SiManager

Definition at line 206 of file simgr.h.

Collaboration diagram for SiManager:
Collaboration graph

Public Member Functions

bool Load (string file_name, int mode)
 This API is to load program data from XML file, if the operation mode selected is XML to Binary. Otherwise it will load program data from cache file. More...
 
bool GenerateSICache (string sidbFileName)
 Generates binary SI cache from the XML file. More...
 
bool GenerateSICache (string sidbFileName, string snsdbFileName)
 Generate both binary SI cache and binary SNS cache from the XML file. More...
 
bool GenerateXML (string sixmlFileName)
 Function to generate XML file(sidb.xml). More...
 
void DumpChannelMap ()
 Dump channel map information from binary SI cache to console.
 

Protected Attributes

list< ProgramDetailsm_program_list
 
int numOfServices
 

Private Member Functions

bool load_xml_file (string xml_file)
 This function loads an input xml file into memory, it does the formatting related validations and parses the attributes. More...
 
int xml_parse_attributes (xmlNodePtr parent)
 This API parses the program id, source id, modulation, frequency information from the XML. More...
 
void init_mpeg2_crc (void)
 Initializes the CRC check.
 
uint32_t calc_mpeg2_crc (uint8_t *data, uint32_t len)
 Function to calculate Cyclic Redundancy Check(CRC) value. CRC is used to find the accidental changes happened to raw data. Here is the CRC flow works here. More...
 
void init_si_entry (siTableEntry *si_entry)
 Internal Method to initialize service entries to default values init_si_entry() More...
 
bool parse_program_details (siTableEntry **si_entry_head, uint32_t frequency[], uint32_t modulation[], int &f_index, int &m_index)
 This API loads the program data from binary cache file. More...
 
bool cache_si_data (string sidbFileName)
 This API write the program details like modulation, frequency, program number, VCN information to SI cache file. More...
 
bool cache_sns_data (string snsdbFileName)
 This API write the program details like modulation, frequency, program number, VCN information to SI cache file. SNS cache is used to store the data available in NTT(Network Text Tables) by legacy boxes.It contains source id and corresponding source name(channel name) mappings. More...
 
bool write_crc_for_si_cache (string sidbFileName)
 This API finds the CRC value and writes at the end of SI cache file. More...
 
bool write_crc_for_si_and_sns_cache (string sidbFileName, string snsdbFileName)
 This finds the CRC and write it at the end of SI and SNS cache files. More...
 
unsigned int get_file_size (const char *location)
 The si_get_file_size() function will get the size of the specified file. More...
 
bool load_si_data (string sidbFileName)
 This API function loads the program data from binary cache file. More...
 

Enumeration Type Documentation

◆ _siEntryState_

Enumerator
SIENTRY_PRESENT_IN_DCM 

Present in DCM.

SIENTRY_DEFINED 

Defined in DCM.

SIENTRY_MAPPED 

Mapped in VCM.

SIENTRY_DEFINED_MAPPED 

Marked defined in SVCT-DCM, mapped in SVCT-VCM.

SIENTRY_DEFINED_UNMAPPED 

Marked defined in SVCT-DCM, not mapped in SVCT-VCM.

SIENTRY_UNDEFINED_MAPPED 

Marked undefined in SVCT-DCM, mapped in SVCT-VCM.

Definition at line 71 of file simgr.h.