-class iDVBResourceManager: public iObject
-{
-public:
- /*
- solange rumloopen bis eine resource gefunden wurde, die eine frequenz
- tunen will
-
- wenn natuerlich sowas schon vorhanden ist, dann einfach ne ref darauf
- geben. (zwei services auf dem gleichen transponder teilen sich einen
- channel)
- */
- virtual RESULT setChannelList(iDVBChannelList *list)=0;
- virtual RESULT getChannelList(ePtr<iDVBChannelList> &list)=0;
- virtual RESULT allocateChannel(const eDVBChannelID &channel, ePtr<iDVBChannel> &channel)=0;
- virtual RESULT allocateRawChannel(ePtr<iDVBChannel> &channel)=0;
- virtual RESULT allocatePVRChannel(int caps)=0;
-};
-
-class SatelliteDeliverySystemDescriptor;
-class CableDeliverySystemDescriptor;
-class TerrestrialDeliverySystemDescriptor;
-
-struct eDVBFrontendParametersSatellite
-{
- struct Polarisation
- {
- enum {
- Horizontal, Vertical, CircularLeft, CircularRight
- };
- };
- struct Inversion
- {
- enum {
- On, Off, Unknown
- };
- };
- struct FEC
- {
- enum {
- fNone, f1_2, f2_3, f3_4, f5_6, f7_8, fAuto
- };
- };
- unsigned int frequency, symbol_rate;
- int polarisation, fec, inversion, orbital_position;
-
- void set(const SatelliteDeliverySystemDescriptor &);
-};
-
-struct eDVBFrontendParametersCable
-{
- unsigned int frequency, symbol_rate;
- int modulation, inversion, fec_inner;
- void set(const CableDeliverySystemDescriptor &);
-};
-
-struct eDVBFrontendParametersTerrestrial
-{
- int unknown;
- void set(const TerrestrialDeliverySystemDescriptor &);