Enigma functions

Alles rund um das grafische Benutzerinterface Enigma
arachaz
Neugieriger
Neugieriger
Beiträge: 3
Registriert: Freitag 16. Juli 2004, 11:07

Enigma functions

Beitrag von arachaz »

Hi all,

In sselect.cpp file, the following function is called to fill the serviceselector with a new entry.
I want to understand from where these entries are downloaded by the function and how all this is implemented.

Many thanks.

here is the function :
void eServiceSelector::addService(const eServiceReference &ref)
{
if ( eZap::getInstance()->getServiceSelector() == this )
{
#ifndef DISABLE_FILE
if ( eDVB::getInstance()->recorder && eZapMain::getInstance()->getMode() != eZapMain::modeFile )
{
eServiceReferenceDVB &Ref = (eServiceReferenceDVB&) ref;
eServiceReferenceDVB &rec = eDVB::getInstance()->recorder->recRef;
if ( rec.getTransportStreamID() != Ref.getTransportStreamID() ||
rec.getOriginalNetworkID() != Ref.getOriginalNetworkID() ||
rec.getDVBNamespace() != Ref.getDVBNamespace() )
return;
}
#endif
}
if ( ref.isLocked() && (eConfig::getInstance()->pLockActive() & 2) )
return;

int flags=serviceentryflags;

if ( ref.flags & eServiceReference::isDirectory)
flags &= ~ eListBoxEntryService::flagShowNumber;
new eListBoxEntryService(services, ref, flags);
}
All that is worth doing must be well done.
arachaz
Neugieriger
Neugieriger
Beiträge: 3
Registriert: Freitag 16. Juli 2004, 11:07

Beitrag von arachaz »

Hi,

Who can explain how the functions CONNECT and signal are implemented in enigma modules as in the following lines :
Signal1<void,const eServiceReference&> signal;
CONNECT(signal, eServiceSelector::addService);
How to use similar implementation in own's code ?

Regards.

Arachaz
All that is worth doing must be well done.