vdr  2.4.0
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
cChannel Class Reference

#include <channels.h>

Collaboration diagram for cChannel:
[legend]

Public Member Functions

 cChannel (void)
 
 cChannel (const cChannel &Channel)
 
 ~cChannel ()
 
cChanneloperator= (const cChannel &Channel)
 
cString ToText (void) const
 
bool Parse (const char *s)
 
bool Save (FILE *f)
 
const char * Name (void) const
 
const char * ShortName (bool OrName=false) const
 
const char * Provider (void) const
 
const char * PortalName (void) const
 
int Frequency (void) const
 
int Transponder (void) const
 
int Source (void) const
 
int Srate (void) const
 
int Vpid (void) const
 
int Ppid (void) const
 
int Vtype (void) const
 
const int * Apids (void) const
 
const int * Dpids (void) const
 
const int * Spids (void) const
 
int Apid (int i) const
 
int Dpid (int i) const
 
int Spid (int i) const
 
const char * Alang (int i) const
 
const char * Dlang (int i) const
 
const char * Slang (int i) const
 
int Atype (int i) const
 
int Dtype (int i) const
 
uchar SubtitlingType (int i) const
 
uint16_t CompositionPageId (int i) const
 
uint16_t AncillaryPageId (int i) const
 
int Tpid (void) const
 
const int * Caids (void) const
 
int Ca (int Index=0) const
 
int Nid (void) const
 
int Tid (void) const
 
int Sid (void) const
 
int Rid (void) const
 
int Lcn (void) const
 
int Number (void) const
 
void SetNumber (int Number)
 
bool GroupSep (void) const
 
const char * Parameters (void) const
 
const cLinkChannelsLinkChannels (void) const
 
const cChannelRefChannel (void) const
 
bool IsAtsc (void) const
 
bool IsCable (void) const
 
bool IsSat (void) const
 
bool IsTerr (void) const
 
bool IsSourceType (char Source) const
 
tChannelID GetChannelID (void) const
 
int Modification (int Mask=CHANNELMOD_ALL) const
 
time_t Seen (void) const
 
void CopyTransponderData (const cChannel *Channel)
 
bool SetTransponderData (int Source, int Frequency, int Srate, const char *Parameters, bool Quiet=false)
 
bool SetSource (int Source)
 
bool SetId (cChannels *Channels, int Nid, int Tid, int Sid, int Rid=0)
 
bool SetLcn (int Lcn)
 
bool SetName (const char *Name, const char *ShortName, const char *Provider)
 
bool SetPortalName (const char *PortalName)
 
bool SetPids (int Vpid, int Ppid, int Vtype, int *Apids, int *Atypes, char ALangs[][MAXLANGCODE2], int *Dpids, int *Dtypes, char DLangs[][MAXLANGCODE2], int *Spids, char SLangs[][MAXLANGCODE2], int Tpid)
 
bool SetCaIds (const int *CaIds)
 
bool SetCaDescriptors (int Level)
 
bool SetLinkChannels (cLinkChannels *LinkChannels)
 
void SetRefChannel (cChannel *RefChannel)
 
bool SetSubtitlingDescriptors (uchar *SubtitlingTypes, uint16_t *CompositionPageIds, uint16_t *AncillaryPageIds)
 
void SetSeen (void)
 
void DelLinkChannel (cChannel *LinkChannel)
 
- Public Member Functions inherited from cListObject
 cListObject (void)
 
virtual ~cListObject ()
 
virtual int Compare (const cListObject &ListObject) const
 
void Append (cListObject *Object)
 
void Insert (cListObject *Object)
 
void Unlink (void)
 
int Index (void) const
 
cListObjectPrev (void) const
 
cListObjectNext (void) const
 

Static Public Member Functions

static int Transponder (int Frequency, char Polarization)
 

Private Member Functions

cString TransponderDataToString (void) const
 

Static Private Member Functions

static cString ToText (const cChannel *Channel)
 

Private Attributes

char * name
 
char * shortName
 
char * provider
 
char * portalName
 
int __BeginData__
 
int frequency
 
int source
 
int srate
 
int vpid
 
int ppid
 
int vtype
 
int apids [MAXAPIDS+1]
 
int atypes [MAXAPIDS+1]
 
char alangs [MAXAPIDS][MAXLANGCODE2]
 
int dpids [MAXDPIDS+1]
 
int dtypes [MAXAPIDS+1]
 
char dlangs [MAXDPIDS][MAXLANGCODE2]
 
int spids [MAXSPIDS+1]
 
char slangs [MAXSPIDS][MAXLANGCODE2]
 
uchar subtitlingTypes [MAXSPIDS]
 
uint16_t compositionPageIds [MAXSPIDS]
 
uint16_t ancillaryPageIds [MAXSPIDS]
 
int tpid
 
int caids [MAXCAIDS+1]
 
int nid
 
int tid
 
int sid
 
int rid
 
int lcn
 
int number
 
bool groupSep
 
int __EndData__
 
cString nameSource
 
int nameSourceMode
 
cString shortNameSource
 
cString parameters
 
int modification
 
time_t seen
 
const cScheduleschedule
 
cLinkChannelslinkChannels
 
cChannelrefChannel
 

Friends

class cSchedules
 
class cMenuEditChannel
 
class cDvbSourceParam
 

Detailed Description

Definition at line 87 of file channels.h.

Constructor & Destructor Documentation

◆ cChannel() [1/2]

cChannel::cChannel ( void  )

◆ cChannel() [2/2]

cChannel::cChannel ( const cChannel Channel)

Definition at line 71 of file channels.c.

References linkChannels, name, portalName, provider, refChannel, schedule, seen, and shortName.

◆ ~cChannel()

cChannel::~cChannel ( )

Definition at line 84 of file channels.c.

References linkChannels, name, portalName, provider, and shortName.

Member Function Documentation

◆ Alang()

const char* cChannel::Alang ( int  i) const
inline

Definition at line 161 of file channels.h.

References alangs, and MAXAPIDS.

Referenced by cRecordingInfo::cRecordingInfo(), cPatPmtGenerator::GeneratePmt(), and cDevice::SetChannel().

◆ AncillaryPageId()

uint16_t cChannel::AncillaryPageId ( int  i) const
inline

Definition at line 168 of file channels.h.

References ancillaryPageIds, and MAXSPIDS.

Referenced by cPatPmtGenerator::GeneratePmt().

◆ Apid()

int cChannel::Apid ( int  i) const
inline

◆ Apids()

const int* cChannel::Apids ( void  ) const
inline

◆ Atype()

int cChannel::Atype ( int  i) const
inline

Definition at line 164 of file channels.h.

References atypes, and MAXAPIDS.

Referenced by cPatPmtGenerator::GeneratePmt().

◆ Ca()

int cChannel::Ca ( int  Index = 0) const
inline

◆ Caids()

const int* cChannel::Caids ( void  ) const
inline

Definition at line 170 of file channels.h.

References caids.

Referenced by cDevice::GetDevice(), and cMenuChannelItem::Set().

◆ CompositionPageId()

uint16_t cChannel::CompositionPageId ( int  i) const
inline

Definition at line 167 of file channels.h.

References compositionPageIds, and MAXSPIDS.

Referenced by cPatPmtGenerator::GeneratePmt().

◆ CopyTransponderData()

void cChannel::CopyTransponderData ( const cChannel Channel)

Definition at line 166 of file channels.c.

References frequency, parameters, source, and srate.

Referenced by cChannels::NewChannel().

◆ DelLinkChannel()

void cChannel::DelLinkChannel ( cChannel LinkChannel)

◆ Dlang()

const char* cChannel::Dlang ( int  i) const
inline

Definition at line 162 of file channels.h.

References dlangs, and MAXDPIDS.

Referenced by cRecordingInfo::cRecordingInfo(), cPatPmtGenerator::GeneratePmt(), and cDevice::SetChannel().

◆ Dpid()

int cChannel::Dpid ( int  i) const
inline

◆ Dpids()

const int* cChannel::Dpids ( void  ) const
inline

◆ Dtype()

int cChannel::Dtype ( int  i) const
inline

Definition at line 165 of file channels.h.

References dtypes, and MAXDPIDS.

Referenced by cPatPmtGenerator::GeneratePmt().

◆ Frequency()

int cChannel::Frequency ( void  ) const
inline

Returns the actual frequency, as given in 'channels.conf'.

Definition at line 147 of file channels.h.

References frequency.

Referenced by cDvbTuner::GetBondingParams(), cDvbSourceParam::GetData(), cNitFilter::Process(), cDvbDevice::ProvidesTransponder(), cDvbTuner::SetFrontend(), SetTransponderData(), and Transponder().

◆ GetChannelID()

tChannelID cChannel::GetChannelID ( void  ) const
inline

◆ GroupSep()

bool cChannel::GroupSep ( void  ) const
inline

◆ IsAtsc()

bool cChannel::IsAtsc ( void  ) const
inline

Definition at line 183 of file channels.h.

References cSource::IsAtsc(), and source.

Referenced by GetRequiredDeliverySystem().

◆ IsCable()

bool cChannel::IsCable ( void  ) const
inline

Definition at line 184 of file channels.h.

References cSource::IsCable(), and source.

Referenced by GetRequiredDeliverySystem(), SignalToSQI(), and StrengthToSSI().

◆ IsSat()

bool cChannel::IsSat ( void  ) const
inline

Definition at line 185 of file channels.h.

References cSource::IsSat(), and source.

Referenced by GetRequiredDeliverySystem(), SignalToSQI(), StrengthToSSI(), and Transponder().

◆ IsSourceType()

bool cChannel::IsSourceType ( char  Source) const
inline

Definition at line 187 of file channels.h.

References cSource::IsType(), source, and Source().

◆ IsTerr()

bool cChannel::IsTerr ( void  ) const
inline

Definition at line 186 of file channels.h.

References cSource::IsTerr(), and source.

Referenced by GetRequiredDeliverySystem(), SignalToSQI(), and StrengthToSSI().

◆ Lcn()

int cChannel::Lcn ( void  ) const
inline

Definition at line 176 of file channels.h.

References lcn.

Referenced by SetLcn().

◆ LinkChannels()

const cLinkChannels* cChannel::LinkChannels ( void  ) const
inline

Definition at line 181 of file channels.h.

References linkChannels.

Referenced by SetLinkChannels().

◆ Modification()

int cChannel::Modification ( int  Mask = CHANNELMOD_ALL) const

Definition at line 159 of file channels.c.

References CHANNELMOD_NONE, and modification.

◆ Name()

const char * cChannel::Name ( void  ) const

◆ Nid()

int cChannel::Nid ( void  ) const
inline

Definition at line 172 of file channels.h.

References nid.

Referenced by cEIT::cEIT(), cNitFilter::Process(), and SetId().

◆ Number()

int cChannel::Number ( void  ) const
inline

◆ operator=()

cChannel & cChannel::operator= ( const cChannel Channel)

◆ Parameters()

const char* cChannel::Parameters ( void  ) const
inline

◆ Parse()

bool cChannel::Parse ( const char *  s)

◆ PortalName()

const char* cChannel::PortalName ( void  ) const
inline

Definition at line 146 of file channels.h.

References portalName.

Referenced by SetPortalName().

◆ Ppid()

int cChannel::Ppid ( void  ) const
inline

◆ Provider()

const char* cChannel::Provider ( void  ) const
inline

Definition at line 145 of file channels.h.

References provider.

Referenced by cMenuChannelItem::Compare(), cMenuChannelItem::Set(), and SetName().

◆ RefChannel()

const cChannel* cChannel::RefChannel ( void  ) const
inline

Definition at line 182 of file channels.h.

References refChannel.

Referenced by SetRefChannel().

◆ Rid()

int cChannel::Rid ( void  ) const
inline

Definition at line 175 of file channels.h.

References rid.

Referenced by SetId().

◆ Save()

bool cChannel::Save ( FILE *  f)

Definition at line 815 of file channels.c.

References ToText().

◆ Seen()

time_t cChannel::Seen ( void  ) const
inline

Definition at line 190 of file channels.h.

References seen.

◆ SetCaDescriptors()

bool cChannel::SetCaDescriptors ( int  Level)

Definition at line 475 of file channels.c.

References CHANNELMOD_CA, dsyslog, modification, name, and Number().

Referenced by cPatFilter::Process().

◆ SetCaIds()

bool cChannel::SetCaIds ( const int *  CaIds)

◆ SetId()

bool cChannel::SetId ( cChannels Channels,
int  Nid,
int  Tid,
int  Sid,
int  Rid = 0 
)

◆ SetLcn()

bool cChannel::SetLcn ( int  Lcn)

Definition at line 246 of file channels.c.

References dsyslog, lcn, Lcn(), name, and Number().

Referenced by cNitFilter::Process().

◆ SetLinkChannels()

bool cChannel::SetLinkChannels ( cLinkChannels LinkChannels)

◆ SetName()

bool cChannel::SetName ( const char *  Name,
const char *  ShortName,
const char *  Provider 
)

◆ SetNumber()

void cChannel::SetNumber ( int  Number)
inline

Definition at line 178 of file channels.h.

References number, and Number().

◆ SetPids()

bool cChannel::SetPids ( int  Vpid,
int  Ppid,
int  Vtype,
int *  Apids,
int *  Atypes,
char  ALangs[][MAXLANGCODE2],
int *  Dpids,
int *  Dtypes,
char  DLangs[][MAXLANGCODE2],
int *  Spids,
char  SLangs[][MAXLANGCODE2],
int  Tpid 
)

◆ SetPortalName()

bool cChannel::SetPortalName ( const char *  PortalName)

Definition at line 285 of file channels.c.

References CHANNELMOD_NAME, dsyslog, isempty(), modification, name, Number(), portalName, PortalName(), and strcpyrealloc().

Referenced by cEIT::cEIT().

◆ SetRefChannel()

void cChannel::SetRefChannel ( cChannel RefChannel)

Definition at line 534 of file channels.c.

References refChannel, and RefChannel().

◆ SetSeen()

void cChannel::SetSeen ( void  )

Definition at line 432 of file channels.c.

References seen.

Referenced by cChannels::NewChannel(), and cSdtFilter::Process().

◆ SetSource()

bool cChannel::SetSource ( int  Source)

Definition at line 213 of file channels.c.

References CHANNELMOD_TRANSP, dsyslog, modification, name, Number(), source, Source(), and cSource::ToString().

Referenced by cSdtFilter::Process().

◆ SetSubtitlingDescriptors()

bool cChannel::SetSubtitlingDescriptors ( uchar SubtitlingTypes,
uint16_t *  CompositionPageIds,
uint16_t *  AncillaryPageIds 
)

Definition at line 408 of file channels.c.

References ancillaryPageIds, compositionPageIds, MAXSPIDS, and subtitlingTypes.

Referenced by cPatFilter::Process().

◆ SetTransponderData()

bool cChannel::SetTransponderData ( int  Source,
int  Frequency,
int  Srate,
const char *  Parameters,
bool  Quiet = false 
)

◆ ShortName()

const char * cChannel::ShortName ( bool  OrName = false) const

◆ Sid()

int cChannel::Sid ( void  ) const
inline

◆ Slang()

const char* cChannel::Slang ( int  i) const
inline

Definition at line 163 of file channels.h.

References MAXSPIDS, and slangs.

Referenced by cRecordingInfo::cRecordingInfo(), cPatPmtGenerator::GeneratePmt(), and cDevice::SetChannel().

◆ Source()

int cChannel::Source ( void  ) const
inline

◆ Spid()

int cChannel::Spid ( int  i) const
inline

Definition at line 160 of file channels.h.

References MAXSPIDS, and spids.

Referenced by cPatPmtGenerator::GeneratePmt(), and cDevice::SetChannel().

◆ Spids()

const int* cChannel::Spids ( void  ) const
inline

◆ Srate()

int cChannel::Srate ( void  ) const
inline

◆ SubtitlingType()

uchar cChannel::SubtitlingType ( int  i) const
inline

Definition at line 166 of file channels.h.

References MAXSPIDS, and subtitlingTypes.

Referenced by cPatPmtGenerator::GeneratePmt().

◆ Tid()

int cChannel::Tid ( void  ) const
inline

Definition at line 173 of file channels.h.

References tid.

Referenced by cEIT::cEIT(), cNitFilter::Process(), and SetId().

◆ ToText() [1/2]

cString cChannel::ToText ( const cChannel Channel)
staticprivate

◆ ToText() [2/2]

cString cChannel::ToText ( void  ) const

Definition at line 603 of file channels.c.

Referenced by Save().

◆ Tpid()

int cChannel::Tpid ( void  ) const
inline

◆ Transponder() [1/2]

int cChannel::Transponder ( void  ) const

◆ Transponder() [2/2]

int cChannel::Transponder ( int  Frequency,
char  Polarization 
)
static

builds the transponder from the given Frequency and Polarization

Definition at line 133 of file channels.c.

References esyslog, and Frequency().

◆ TransponderDataToString()

cString cChannel::TransponderDataToString ( void  ) const
private

◆ Vpid()

int cChannel::Vpid ( void  ) const
inline

◆ Vtype()

int cChannel::Vtype ( void  ) const
inline

Definition at line 154 of file channels.h.

References vtype.

Referenced by cRecorder::cRecorder(), cPatPmtGenerator::GeneratePmt(), and SetPids().

Friends And Related Function Documentation

◆ cDvbSourceParam

friend class cDvbSourceParam
friend

Definition at line 90 of file channels.h.

◆ cMenuEditChannel

friend class cMenuEditChannel
friend

Definition at line 89 of file channels.h.

◆ cSchedules

friend class cSchedules
friend

Definition at line 88 of file channels.h.

Member Data Documentation

◆ __BeginData__

int cChannel::__BeginData__
private

Definition at line 97 of file channels.h.

Referenced by cChannel(), and operator=().

◆ __EndData__

int cChannel::__EndData__
private

Definition at line 124 of file channels.h.

Referenced by cChannel(), and operator=().

◆ alangs

char cChannel::alangs[MAXAPIDS][MAXLANGCODE2]
private

Definition at line 106 of file channels.h.

Referenced by Alang(), Parse(), SetPids(), and ToText().

◆ ancillaryPageIds

uint16_t cChannel::ancillaryPageIds[MAXSPIDS]
private

Definition at line 114 of file channels.h.

Referenced by AncillaryPageId(), and SetSubtitlingDescriptors().

◆ apids

int cChannel::apids[MAXAPIDS+1]
private

Definition at line 104 of file channels.h.

Referenced by Apid(), Apids(), Parse(), SetPids(), cMenuEditChannel::Setup(), and ToText().

◆ atypes

int cChannel::atypes[MAXAPIDS+1]
private

Definition at line 105 of file channels.h.

Referenced by Atype(), Parse(), SetPids(), and ToText().

◆ caids

int cChannel::caids[MAXCAIDS+1]
private

Definition at line 116 of file channels.h.

Referenced by Ca(), Caids(), Parse(), SetCaIds(), cMenuEditChannel::Setup(), and ToText().

◆ compositionPageIds

uint16_t cChannel::compositionPageIds[MAXSPIDS]
private

Definition at line 113 of file channels.h.

Referenced by CompositionPageId(), and SetSubtitlingDescriptors().

◆ dlangs

char cChannel::dlangs[MAXDPIDS][MAXLANGCODE2]
private

Definition at line 109 of file channels.h.

Referenced by Dlang(), Parse(), SetPids(), and ToText().

◆ dpids

int cChannel::dpids[MAXDPIDS+1]
private

Definition at line 107 of file channels.h.

Referenced by Dpid(), Dpids(), Parse(), SetPids(), cMenuEditChannel::Setup(), and ToText().

◆ dtypes

int cChannel::dtypes[MAXAPIDS+1]
private

Definition at line 108 of file channels.h.

Referenced by Dtype(), Parse(), SetPids(), and ToText().

◆ frequency

int cChannel::frequency
private

◆ groupSep

bool cChannel::groupSep
private

Definition at line 123 of file channels.h.

Referenced by GroupSep(), Name(), Parse(), ShortName(), and ToText().

◆ lcn

int cChannel::lcn
private

Definition at line 121 of file channels.h.

Referenced by Lcn(), and SetLcn().

◆ linkChannels

cLinkChannels* cChannel::linkChannels
private

Definition at line 132 of file channels.h.

Referenced by cChannel(), DelLinkChannel(), LinkChannels(), SetLinkChannels(), and ~cChannel().

◆ modification

int cChannel::modification
mutableprivate

◆ name

char* cChannel::name
private

◆ nameSource

cString cChannel::nameSource
mutableprivate

Definition at line 125 of file channels.h.

Referenced by Name(), operator=(), Parse(), SetName(), and SetTransponderData().

◆ nameSourceMode

int cChannel::nameSourceMode
mutableprivate

Definition at line 126 of file channels.h.

Referenced by Name(), operator=(), Parse(), SetName(), and SetTransponderData().

◆ nid

int cChannel::nid
private

◆ number

int cChannel::number
private

Definition at line 122 of file channels.h.

Referenced by Number(), Parse(), SetNumber(), and ToText().

◆ parameters

cString cChannel::parameters
private

◆ portalName

char* cChannel::portalName
private

◆ ppid

int cChannel::ppid
private

Definition at line 102 of file channels.h.

Referenced by Parse(), Ppid(), SetPids(), cMenuEditChannel::Setup(), and ToText().

◆ provider

char* cChannel::provider
private

◆ refChannel

cChannel* cChannel::refChannel
private

Definition at line 133 of file channels.h.

Referenced by cChannel(), RefChannel(), and SetRefChannel().

◆ rid

int cChannel::rid
private

Definition at line 120 of file channels.h.

Referenced by cMenuEditChannel::cMenuEditChannel(), GetChannelID(), Parse(), Rid(), SetId(), and ToText().

◆ schedule

const cSchedule* cChannel::schedule
mutableprivate

Definition at line 131 of file channels.h.

Referenced by cChannel(), cSchedules::GetSchedule(), SetId(), and SetTransponderData().

◆ seen

time_t cChannel::seen
private

Definition at line 130 of file channels.h.

Referenced by cChannel(), Seen(), and SetSeen().

◆ shortName

char* cChannel::shortName
private

◆ shortNameSource

cString cChannel::shortNameSource
mutableprivate

Definition at line 127 of file channels.h.

Referenced by operator=(), Parse(), SetName(), SetTransponderData(), and ShortName().

◆ sid

int cChannel::sid
private

Definition at line 119 of file channels.h.

Referenced by GetChannelID(), Parse(), SetId(), cMenuEditChannel::Setup(), Sid(), and ToText().

◆ slangs

char cChannel::slangs[MAXSPIDS][MAXLANGCODE2]
private

Definition at line 111 of file channels.h.

Referenced by Parse(), SetPids(), Slang(), and ToText().

◆ source

int cChannel::source
private

◆ spids

int cChannel::spids[MAXSPIDS+1]
private

Definition at line 110 of file channels.h.

Referenced by Parse(), SetPids(), cMenuEditChannel::Setup(), Spid(), Spids(), and ToText().

◆ srate

int cChannel::srate
private

◆ subtitlingTypes

uchar cChannel::subtitlingTypes[MAXSPIDS]
private

Definition at line 112 of file channels.h.

Referenced by SetSubtitlingDescriptors(), and SubtitlingType().

◆ tid

int cChannel::tid
private

◆ tpid

int cChannel::tpid
private

Definition at line 115 of file channels.h.

Referenced by Parse(), SetPids(), cMenuEditChannel::Setup(), ToText(), and Tpid().

◆ vpid

int cChannel::vpid
private

Definition at line 101 of file channels.h.

Referenced by Parse(), SetPids(), cMenuEditChannel::Setup(), ToText(), and Vpid().

◆ vtype

int cChannel::vtype
private

Definition at line 103 of file channels.h.

Referenced by Parse(), SetPids(), ToText(), and Vtype().


The documentation for this class was generated from the following files: