ChannelBase Class Reference

#include <channelbase.h>

Inheritance diagram for ChannelBase:

DBox2Channel DTVChannel DummyChannel Channel DVBChannel FirewireChannel HDHRChannel IPTVChannel

List of all members.


Detailed Description

Abstract class providing a generic interface to tuning hardware.

This class abstracts channel implementations for analog TV, ATSC, DVB, etc. Also implements many generic functions needed by most derived classes. It is responsible for tuning, i.e. switching channels.

Definition at line 25 of file channelbase.h.


Public Member Functions

 ChannelBase (TVRec *parent)
virtual ~ChannelBase ()
virtual bool Init (QString &inputname, QString &startchannel, bool setchan)
virtual bool IsTunable (const QString &input, const QString &channum) const
virtual bool Open (void)=0
 Opens the channel changing hardware for use.
virtual void Close (void)=0
 Closes the channel changing hardware to use.
virtual bool SetChannelByString (const QString &chan)=0
virtual bool IsOpen (void) const =0
 Reports whether channel is already open.
virtual void SetFd (int fd)
 Sets file descriptor.
virtual int GetFd (void) const
 Returns file descriptor, -1 if it does not exist.
virtual uint GetNextChannel (uint chanid, int direction) const
virtual uint GetNextChannel (const QString &channum, int direction) const
virtual int GetInputByName (const QString &input) const
 Returns number of named input, returns -1 if not found.
virtual QString GetInputByNum (int capchannel) const
 Returns name of numbered input, returns null if not found.
virtual QString GetCurrentName (void) const
virtual int GetChanID (void) const
virtual int GetCurrentInputNum (void) const
virtual QString GetCurrentInput (void) const
virtual int GetNextInputNum (void) const
virtual QString GetNextInput (void) const
virtual QString GetNextInputStartChan (void)
virtual uint GetCurrentSourceID (void) const
virtual uint GetInputCardID (int inputNum) const
virtual DBChanList GetChannels (int inputNum) const
virtual DBChanList GetChannels (const QString &inputname) const
virtual vector< InputInfoGetFreeInputs (const vector< uint > &excluded_cards) const
 Returns the recorders available inputs.
virtual QStringList GetConnectedInputs (void) const
 Returns names of connected inputs.
bool IsCommercialFree (void) const
 Returns true iff commercial detection is not required.
virtual QString GetDevice (void) const
 Returns String representing device, useful for debugging.
virtual void Renumber (uint srcid, const QString &oldChanNum, const QString &newChanNum)
 Changes a channum if we have it cached anywhere.
virtual bool SwitchToInput (const QString &input)
virtual bool SwitchToInput (const QString &input, const QString &chan)
virtual bool InitializeInputs (void)
 Fills in input map from DB.
virtual bool Retune (void)
virtual void StoreInputChannels (void)
 Saves current channel as the default channel for the current input.
virtual bool InitPictureAttributes (void)
virtual int GetPictureAttribute (PictureAttribute) const
virtual int ChangePictureAttribute (PictureAdjustType, PictureAttribute, bool up)
bool CheckChannel (const QString &channum, QString &inputName) const
void SetCardID (uint _cardid)

Protected Member Functions

virtual bool SwitchToInput (int inputNum, bool setstarting)
 Switches to another input on hardware, and sets the channel is setstarting is true.
virtual bool IsInputAvailable (int inputNum, uint &mplexid_restriction) const
virtual int GetCardID (void) const
 Returns card id.
virtual bool ChangeExternalChannel (const QString &newchan)

Static Protected Member Functions

static void StoreInputChannels (const InputMap &)
 Sets starting channel for the each input in the input map.
static void StoreDefaultInput (uint cardid, const QString &input)
 Sets default input for the cardid.

Protected Attributes

TVRecpParent
QString curchannelname
int currentInputID
bool commfree
uint cardid
InputMap inputs
DBChanList allchannels
 channels across all inputs

Constructor & Destructor Documentation

ChannelBase::ChannelBase ( TVRec parent  ) 

Definition at line 37 of file channelbase.cpp.

ChannelBase::~ChannelBase ( void   )  [virtual]

Definition at line 44 of file channelbase.cpp.


Member Function Documentation

bool ChannelBase::Init ( QString &  inputname,
QString &  startchannel,
bool  setchan 
) [virtual]

Reimplemented in Channel, and DVBChannel.

Definition at line 48 of file channelbase.cpp.

Referenced by DVBChannel::Init(), Channel::Init(), TVRec::InitChannel(), and TVRec::TuningGetChanNum().

bool ChannelBase::IsTunable ( const QString &  input,
const QString &  channum 
) const [virtual]

Definition at line 157 of file channelbase.cpp.

Referenced by Init().

virtual bool ChannelBase::Open ( void   )  [pure virtual]

virtual void ChannelBase::Close ( void   )  [pure virtual]

Closes the channel changing hardware to use.

Implemented in Channel, DBox2Channel, DummyChannel, DVBChannel, FirewireChannel, HDHRChannel, and IPTVChannel.

Referenced by TVRec::CloseChannel(), TVRec::TuningNewRecorder(), and TVRec::TuningShutdowns().

virtual bool ChannelBase::SetChannelByString ( const QString &  chan  )  [pure virtual]

virtual bool ChannelBase::IsOpen ( void   )  const [pure virtual]

Reports whether channel is already open.

Implemented in Channel, DBox2Channel, DummyChannel, DVBChannel, FirewireChannel, HDHRChannel, and IPTVChannel.

Referenced by TVRec::TuningOnSameMultiplex().

virtual void ChannelBase::SetFd ( int  fd  )  [inline, virtual]

Sets file descriptor.

Reimplemented in Channel.

Definition at line 45 of file channelbase.h.

Referenced by TVRec::TeardownRecorder(), TVRec::TuningNewRecorder(), and TVRec::TuningRestartRecorder().

virtual int ChannelBase::GetFd ( void   )  const [inline, virtual]

Returns file descriptor, -1 if it does not exist.

Reimplemented in Channel, and DVBChannel.

Definition at line 47 of file channelbase.h.

Referenced by AnalogSignalMonitor::AnalogSignalMonitor(), and AnalogSignalMonitor::UpdateValues().

uint ChannelBase::GetNextChannel ( uint  chanid,
int  direction 
) const [virtual]

uint ChannelBase::GetNextChannel ( const QString &  channum,
int  direction 
) const [virtual]

Definition at line 239 of file channelbase.cpp.

int ChannelBase::GetInputByName ( const QString &  input  )  const [virtual]

QString ChannelBase::GetInputByNum ( int  capchannel  )  const [virtual]

Returns name of numbered input, returns null if not found.

Definition at line 305 of file channelbase.cpp.

virtual QString ChannelBase::GetCurrentName ( void   )  const [inline, virtual]

int ChannelBase::GetChanID ( void   )  const [virtual]

virtual int ChannelBase::GetCurrentInputNum ( void   )  const [inline, virtual]

virtual QString ChannelBase::GetCurrentInput ( void   )  const [inline, virtual]

int ChannelBase::GetNextInputNum ( void   )  const [virtual]

virtual QString ChannelBase::GetNextInput ( void   )  const [inline, virtual]

Definition at line 62 of file channelbase.h.

Referenced by TVRec::SetInput().

virtual QString ChannelBase::GetNextInputStartChan ( void   )  [inline, virtual]

Definition at line 64 of file channelbase.h.

Referenced by TVRec::SetInput().

virtual uint ChannelBase::GetCurrentSourceID ( void   )  const [inline, virtual]

uint ChannelBase::GetInputCardID ( int  inputNum  )  const [virtual]

Definition at line 571 of file channelbase.cpp.

Referenced by TVRec::TuningCheckForHWChange().

DBChanList ChannelBase::GetChannels ( int  inputNum  )  const [virtual]

Definition at line 579 of file channelbase.cpp.

Referenced by GetChannels(), and Init().

DBChanList ChannelBase::GetChannels ( const QString &  inputname  )  const [virtual]

Definition at line 591 of file channelbase.cpp.

vector< InputInfo > ChannelBase::GetFreeInputs ( const vector< uint > &  excluded_cards  )  const [virtual]

Returns the recorders available inputs.

This filters out the connected inputs that belong to an input group which is busy. Recorders in the excluded cardids will not be considered busy for the sake of determining free inputs.

Definition at line 517 of file channelbase.cpp.

Referenced by TVRec::GetFreeInputs().

QStringList ChannelBase::GetConnectedInputs ( void   )  const [virtual]

Returns names of connected inputs.

Definition at line 290 of file channelbase.cpp.

Referenced by GetFreeInputs(), Init(), and TVRec::IsBusy().

bool ChannelBase::IsCommercialFree ( void   )  const [inline]

Returns true iff commercial detection is not required.

Definition at line 77 of file channelbase.h.

virtual QString ChannelBase::GetDevice ( void   )  const [inline, virtual]

Returns String representing device, useful for debugging.

Reimplemented in Channel, DummyChannel, DVBChannel, FirewireChannel, and HDHRChannel.

Definition at line 79 of file channelbase.h.

Referenced by GetCardID(), and SIScan::loc().

void ChannelBase::Renumber ( uint  srcid,
const QString &  oldChanNum,
const QString &  newChanNum 
) [virtual]

Changes a channum if we have it cached anywhere.

Definition at line 828 of file channelbase.cpp.

Referenced by TVRec::SetChannelInfo().

bool ChannelBase::SwitchToInput ( const QString &  input  )  [virtual]

bool ChannelBase::SwitchToInput ( const QString &  input,
const QString &  chan 
) [virtual]

Reimplemented in DummyChannel, and DVBChannel.

Definition at line 339 of file channelbase.cpp.

bool ChannelBase::InitializeInputs ( void   )  [virtual]

virtual bool ChannelBase::Retune ( void   )  [inline, virtual]

Reimplemented in Channel, DVBChannel, and FirewireChannel.

Definition at line 92 of file channelbase.h.

Referenced by NuppelVideoRecorder::DoV4L2().

virtual void ChannelBase::StoreInputChannels ( void   )  [inline, virtual]

Saves current channel as the default channel for the current input.

Definition at line 95 of file channelbase.h.

Referenced by TVRec::HandleTuning(), and Renumber().

virtual bool ChannelBase::InitPictureAttributes ( void   )  [inline, virtual]

Reimplemented in Channel.

Definition at line 100 of file channelbase.h.

Referenced by TVRec::TuningNewRecorder().

virtual int ChannelBase::GetPictureAttribute ( PictureAttribute   )  const [inline, virtual]

Reimplemented in Channel.

Definition at line 101 of file channelbase.h.

Referenced by TVRec::GetPictureAttribute().

virtual int ChannelBase::ChangePictureAttribute ( PictureAdjustType  ,
PictureAttribute  ,
bool  up 
) [inline, virtual]

Reimplemented in Channel.

Definition at line 102 of file channelbase.h.

Referenced by TVRec::ChangePictureAttribute().

bool ChannelBase::CheckChannel ( const QString &  channum,
QString &  inputName 
) const

void ChannelBase::SetCardID ( uint  _cardid  )  [inline]

Definition at line 108 of file channelbase.h.

Referenced by ScanWizardScanner::PreScanCommon().

bool ChannelBase::SwitchToInput ( int  inputNum,
bool  setstarting 
) [protected, virtual]

Switches to another input on hardware, and sets the channel is setstarting is true.

Reimplemented in Channel, DummyChannel, and DVBChannel.

Definition at line 359 of file channelbase.cpp.

bool ChannelBase::IsInputAvailable ( int  inputNum,
uint mplexid_restriction 
) const [protected, virtual]

int ChannelBase::GetCardID ( void   )  const [protected, virtual]

bool ChannelBase::ChangeExternalChannel ( const QString &  newchan  )  [protected, virtual]

void ChannelBase::StoreInputChannels ( const InputMap inputs  )  [static, protected]

Sets starting channel for the each input in the input map.

Parameters:
input Map from cardinputid to input params.

Definition at line 854 of file channelbase.cpp.

void ChannelBase::StoreDefaultInput ( uint  cardid,
const QString &  input 
) [static, protected]

Sets default input for the cardid.

Parameters:
cardid ChannelBase::GetCardID()
input ChannelBase::GetCurrentInput()

Definition at line 880 of file channelbase.cpp.

Referenced by StoreInputChannels().


Member Data Documentation

QString ChannelBase::curchannelname [protected]

int ChannelBase::currentInputID [protected]

channels across all inputs

Definition at line 128 of file channelbase.h.

Referenced by GetNextChannel(), and InitializeInputs().


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

Generated on Sat Dec 18 05:16:00 2010 for MythTV by  doxygen 1.5.5