Just found a small flaw: the cDvbDevice::ProvidesTransponder() function needs to be adapted to the fact that the delivery system is now an enum and no longer a flag word:
bool cDvbDevice::ProvidesTransponder(const cChannel *Channel) const { if (!ProvidesSource(Channel->Source())) return false; // doesn't provide source if (!cSource::IsSat(Channel->Source())) return true; // source is sufficient for non sat if (frontendType == SYS_DVBS && Channel->System() == SYS_DVBS2) return false; // requires modulation system which frontend doesn't provide return !Setup.DiSEqC || Diseqcs.Get(Channel->Source(), Channel->Frequency(), Channel->Polarization()); }
Maybe I'll map the SYS_DVB* stuff to a set of flags, so that these things can be handled as comfortably as in the multiproto API...
Klaus