DiSEqCDevLNB Class Reference

LNB Class. More...

#include <diseqc.h>

Inheritance diagram for DiSEqCDevLNB:
DiSEqCDevDevice

List of all members.

Public Types

enum  dvbdev_lnb_t { kTypeFixed = 0, kTypeVoltageControl = 1, kTypeVoltageAndToneControl = 2, kTypeBandstacked = 3 }

Public Member Functions

 DiSEqCDevLNB (DiSEqCDevTree &tree, uint devid)
virtual bool Execute (const DiSEqCDevSettings &, const DTVMultiplex &)
 Applies DiSEqC settings to this node and any children.
virtual bool Load (void)
 Loads this device from the database.
virtual bool Store (void) const
 Stores this device to the database.
void SetType (dvbdev_lnb_t type)
void SetLOFSwitch (uint lof_switch)
void SetLOFHigh (uint lof_hi)
void SetLOFLow (uint lof_lo)
void SetPolarityInverted (bool inv)
dvbdev_lnb_t GetType (void) const
uint GetLOFSwitch (void) const
uint GetLOFHigh (void) const
uint GetLOFLow (void) const
bool IsPolarityInverted (void) const
bool IsHighBand (const DTVMultiplex &) const
 Determine if the high frequency band is active (for switchable LNBs).
bool IsHorizontal (const DTVMultiplex &) const
 Determine if horizontal polarity is active (for switchable LNBs).
uint32_t GetIntermediateFrequency (const DiSEqCDevSettings &, const DTVMultiplex &) const
 Calculate proper intermediate frequency for the given settings and tuning parameters.
virtual uint GetVoltage (const DiSEqCDevSettings &, const DTVMultiplex &) const
 Retrives the desired voltage for this config.

Static Public Member Functions

static QString LNBTypeToString (dvbdev_lnb_t type)
static dvbdev_lnb_t LNBTypeFromString (const QString &type)

Private Attributes

dvbdev_lnb_t m_type
uint m_lof_switch
uint m_lof_hi
uint m_lof_lo
bool m_pol_inv
 If a signal is circularly polarized the polarity will flip on each reflection, so antenna systems with an even number of reflectors will need to set this value.

Static Private Attributes

static const TypeTable LNBTypeTable [5]

Detailed Description

LNB Class.

Definition at line 362 of file diseqc.h.


Member Enumeration Documentation

Enumerator:
kTypeFixed 
kTypeVoltageControl 
kTypeVoltageAndToneControl 
kTypeBandstacked 

Definition at line 373 of file diseqc.h.


Constructor & Destructor Documentation

DiSEqCDevLNB::DiSEqCDevLNB ( DiSEqCDevTree tree,
uint  devid 
)

Definition at line 2069 of file diseqc.cpp.


Member Function Documentation

bool DiSEqCDevLNB::Execute ( const DiSEqCDevSettings ,
const DTVMultiplex  
) [virtual]

Applies DiSEqC settings to this node and any children.

Parameters:
settings Configuration chain to apply.
tuning Tuning parameters.
Returns:
True if execution completed successfully.

Implements DiSEqCDevDevice.

Definition at line 2078 of file diseqc.cpp.

bool DiSEqCDevLNB::Load ( void   )  [virtual]

Loads this device from the database.

Returns:
True if successful.

Implements DiSEqCDevDevice.

Definition at line 2101 of file diseqc.cpp.

bool DiSEqCDevLNB::Store ( void   )  const [virtual]

Stores this device to the database.

Returns:
True if successful.

Implements DiSEqCDevDevice.

Definition at line 2131 of file diseqc.cpp.

void DiSEqCDevLNB::SetType ( dvbdev_lnb_t  type  )  [inline]

Definition at line 380 of file diseqc.h.

Referenced by convert_diseqc_db(), and LNBTypeSetting::Save().

void DiSEqCDevLNB::SetLOFSwitch ( uint  lof_switch  )  [inline]

Definition at line 381 of file diseqc.h.

Referenced by convert_diseqc_db(), and LNBLOFSwitchSetting::Save().

void DiSEqCDevLNB::SetLOFHigh ( uint  lof_hi  )  [inline]

Definition at line 382 of file diseqc.h.

Referenced by convert_diseqc_db(), and LNBLOFHighSetting::Save().

void DiSEqCDevLNB::SetLOFLow ( uint  lof_lo  )  [inline]

Definition at line 383 of file diseqc.h.

Referenced by convert_diseqc_db(), and LNBLOFLowSetting::Save().

void DiSEqCDevLNB::SetPolarityInverted ( bool  inv  )  [inline]

Definition at line 384 of file diseqc.h.

Referenced by LNBPolarityInvertedSetting::Save().

dvbdev_lnb_t DiSEqCDevLNB::GetType ( void   )  const [inline]

Definition at line 387 of file diseqc.h.

Referenced by FindPreset(), and LNBTypeSetting::Load().

uint DiSEqCDevLNB::GetLOFSwitch ( void   )  const [inline]

Definition at line 388 of file diseqc.h.

Referenced by FindPreset(), and LNBLOFSwitchSetting::Load().

uint DiSEqCDevLNB::GetLOFHigh ( void   )  const [inline]

Definition at line 389 of file diseqc.h.

Referenced by FindPreset(), and LNBLOFHighSetting::Load().

uint DiSEqCDevLNB::GetLOFLow ( void   )  const [inline]

Definition at line 390 of file diseqc.h.

Referenced by FindPreset(), and LNBLOFLowSetting::Load().

bool DiSEqCDevLNB::IsPolarityInverted ( void   )  const [inline]

Definition at line 391 of file diseqc.h.

Referenced by FindPreset(), IsHorizontal(), and LNBPolarityInvertedSetting::Load().

bool DiSEqCDevLNB::IsHighBand ( const DTVMultiplex tuning  )  const

Determine if the high frequency band is active (for switchable LNBs).

Parameters:
tuning Tuning parameters.
Returns:
True if high band is active.

Definition at line 2201 of file diseqc.cpp.

Referenced by Execute(), DiSEqCDevSwitch::ExecuteDiseqc(), GetIntermediateFrequency(), and DiSEqCDevSwitch::ShouldSwitch().

bool DiSEqCDevLNB::IsHorizontal ( const DTVMultiplex tuning  )  const

Determine if horizontal polarity is active (for switchable LNBs).

Parameters:
tuning Tuning parameters.
Returns:
True if polarity is horizontal.

Definition at line 2221 of file diseqc.cpp.

Referenced by DiSEqCDevSwitch::ExecuteDiseqc(), DiSEqCDevSwitch::ExecuteLegacy(), GetVoltage(), IsHighBand(), and DiSEqCDevSwitch::ShouldSwitch().

uint32_t DiSEqCDevLNB::GetIntermediateFrequency ( const DiSEqCDevSettings ,
const DTVMultiplex tuning 
) const

Calculate proper intermediate frequency for the given settings and tuning parameters.

Parameters:
settings Configuration chain in effect.
tuning Tuning parameters.
Returns:
Frequency for use with FE_SET_FRONTEND.

Definition at line 2235 of file diseqc.cpp.

Referenced by DVBChannel::Tune().

uint DiSEqCDevLNB::GetVoltage ( const DiSEqCDevSettings ,
const DTVMultiplex  
) const [virtual]

Retrives the desired voltage for this config.

Parameters:
settings Configuration chain in effect.
tuning Tuning parameters.
Returns:
Voltage required.

Implements DiSEqCDevDevice.

Definition at line 2087 of file diseqc.cpp.

static QString DiSEqCDevLNB::LNBTypeToString ( dvbdev_lnb_t  type  )  [inline, static]

Definition at line 400 of file diseqc.h.

Referenced by Store().

static dvbdev_lnb_t DiSEqCDevLNB::LNBTypeFromString ( const QString &  type  )  [inline, static]

Definition at line 403 of file diseqc.h.

Referenced by Load().


Member Data Documentation

Definition at line 407 of file diseqc.h.

Referenced by Execute(), GetType(), GetVoltage(), IsHighBand(), Load(), SetType(), and Store().

Definition at line 408 of file diseqc.h.

Referenced by GetLOFSwitch(), IsHighBand(), Load(), SetLOFSwitch(), and Store().

Definition at line 409 of file diseqc.h.

Referenced by GetIntermediateFrequency(), GetLOFHigh(), Load(), SetLOFHigh(), and Store().

Definition at line 410 of file diseqc.h.

Referenced by GetIntermediateFrequency(), GetLOFLow(), Load(), SetLOFLow(), and Store().

If a signal is circularly polarized the polarity will flip on each reflection, so antenna systems with an even number of reflectors will need to set this value.

Definition at line 414 of file diseqc.h.

Referenced by IsPolarityInverted(), Load(), SetPolarityInverted(), and Store().

Initial value:
{
    { "fixed",        kTypeFixed                 },
    { "voltage",      kTypeVoltageControl        },
    { "voltage_tone", kTypeVoltageAndToneControl },
    { "bandstacked",  kTypeBandstacked           },
    { QString::null,  kTypeVoltageAndToneControl },
}

Definition at line 416 of file diseqc.h.

Referenced by LNBTypeFromString(), and LNBTypeToString().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends
Generated on Thu May 24 06:41:58 2012 for MythTV by  doxygen 1.6.3