SASC-NG
DVBSoftCAM

cOverrideEmmTable Class Reference

Inheritance diagram for cOverrideEmmTable:

List of all members.

Public Member Functions

 cOverrideEmmTable (void)
virtual bool Parse (char *str)
void AddPids (cPids *pids, int pid, int caid)

Public Attributes

int num
int table [OV_MAXTABLES]
int mask [OV_MAXTABLES]

Detailed Description

Definition at line 283 of file override.c.


Constructor & Destructor Documentation

cOverrideEmmTable::cOverrideEmmTable ( void  ) [inline]

Definition at line 287 of file override.c.

References OV_EMMTABLE, and cOverride::type.


Member Function Documentation

void cOverrideEmmTable::AddPids ( cPids *  pids,
int  pid,
int  caid 
)

Definition at line 315 of file override.c.

References cPids::AddPid(), i, L_CORE_OVER, LBEND, LBPUT, LBSTARTF, mask, num, and table.

Referenced by cOverrides::AddEmmPids().

{
  LBSTARTF(L_CORE_OVER);
  LBPUT("emmtable: %04x:",caid);
  for(int i=0; i<num; i++) {
    LBPUT(" %02x/%02x",table[i],mask[i]);
    pids->AddPid(pid,table[i],mask[i]);
    }
  LBEND();
}
bool cOverrideEmmTable::Parse ( char *  str) [virtual]

Implements cOverride.

Definition at line 292 of file override.c.

References i, L_CORE_LOAD, L_CORE_OVER, LBEND, LBPUT, LBSTART, mask, num, OV_MAXTABLES, cValidityRange::Parse3(), cValidityRange::Print(), PRINTF, and table.

{
  if((str=Parse3(str))) {
    num=0;
    int n=-1;
    do {
      mask[num]=0xFF;
      int l=n+1;
      if(sscanf(&str[l],"%x%n/%x%n",&table[num],&n,&mask[num],&n)<1) {
        PRINTF(L_CORE_LOAD,"override: EMMTABLE format error");
        return false;
        }
      n+=l; num++;
      } while(num<OV_MAXTABLES && str[n]==':');
    LBSTART(L_CORE_OVER);
    LBPUT("emmtable: %s - tables",*Print());
    for(int i=0; i<num; i++) LBPUT(" %02x/%02x",table[i],mask[i]);
    LBEND();
    return true;
    }
  return false;
}

Member Data Documentation

int cOverrideEmmTable::mask[OV_MAXTABLES]

Definition at line 285 of file override.c.

Referenced by AddPids(), and Parse().

Definition at line 285 of file override.c.

Referenced by AddPids(), and Parse().

int cOverrideEmmTable::table[OV_MAXTABLES]

Definition at line 285 of file override.c.

Referenced by AddPids(), and Parse().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines