FirewireSignalMonitor Class Reference

#include <firewiresignalmonitor.h>

Inheritance diagram for FirewireSignalMonitor:

DTVSignalMonitor TSDataListener SignalMonitor MPEGStreamListener ATSCMainStreamListener ATSCAuxStreamListener DVBMainStreamListener

List of all members.


Detailed Description

Definition at line 16 of file firewiresignalmonitor.h.


Public Slots

void deleteLater (void)
 Safer alternative to just deleting signal monitor directly.

Public Member Functions

 FirewireSignalMonitor (int db_cardnum, FirewireChannel *_channel, uint64_t _flags=kFWSigMon_WaitForPower, const char *_name="FirewireSignalMonitor")
virtual void HandlePAT (const ProgramAssociationTable *)
virtual void HandlePMT (uint, const ProgramMapTable *)
void Stop (void)
 Stop signal monitoring and table monitoring threads.

Static Public Attributes

static const uint kPowerTimeout = 3000
static const uint kBufferTimeout = 5000

Protected Member Functions

 FirewireSignalMonitor (void)
 FirewireSignalMonitor (const FirewireSignalMonitor &)
virtual ~FirewireSignalMonitor ()
 Stops signal monitoring and table monitoring threads.
virtual void UpdateValues (void)
 Fills in frontend stats and emits status Qt signals.
void EmitFirewireSignals (void)
 Emits signals for lock, signal strength, etc.
void RunTableMonitor (void)
bool SupportsTSMonitoring (void)
void AddData (const unsigned char *data, uint dataSize)
 Callback function to add MPEG2 TS data.

Static Protected Member Functions

static void * TableMonitorThread (void *param)

Protected Attributes

bool dtvMonitorRunning
pthread_t table_monitor_thread
bool stb_needs_retune
bool stb_needs_to_wait_for_pat
bool stb_needs_to_wait_for_power
MythTimer stb_wait_for_pat_timer
MythTimer stb_wait_for_power_timer
vector< unsigned char > buffer

Static Protected Attributes

static QMap< void *, uintpat_keys
static QMutex pat_keys_lock

Constructor & Destructor Documentation

FirewireSignalMonitor::FirewireSignalMonitor ( int  db_cardnum,
FirewireChannel _channel,
uint64_t  _flags = kFWSigMon_WaitForPower,
const char *  _name = "FirewireSignalMonitor" 
)

Definition at line 42 of file firewiresignalmonitor.cpp.

FirewireSignalMonitor::FirewireSignalMonitor ( void   )  [protected]

FirewireSignalMonitor::FirewireSignalMonitor ( const FirewireSignalMonitor  )  [protected]

FirewireSignalMonitor::~FirewireSignalMonitor (  )  [protected, virtual]

Stops signal monitoring and table monitoring threads.

Definition at line 65 of file firewiresignalmonitor.cpp.


Member Function Documentation

void FirewireSignalMonitor::HandlePAT ( const ProgramAssociationTable pat  )  [virtual]

Reimplemented from DTVSignalMonitor.

Definition at line 93 of file firewiresignalmonitor.cpp.

void FirewireSignalMonitor::HandlePMT ( uint  pnum,
const ProgramMapTable pmt 
) [virtual]

Reimplemented from DTVSignalMonitor.

Definition at line 117 of file firewiresignalmonitor.cpp.

void FirewireSignalMonitor::Stop ( void   )  [virtual]

Stop signal monitoring and table monitoring threads.

Reimplemented from SignalMonitor.

Definition at line 81 of file firewiresignalmonitor.cpp.

Referenced by deleteLater(), and ~FirewireSignalMonitor().

void FirewireSignalMonitor::deleteLater ( void   )  [virtual, slot]

Safer alternative to just deleting signal monitor directly.

Reimplemented from DTVSignalMonitor.

Definition at line 71 of file firewiresignalmonitor.cpp.

void FirewireSignalMonitor::UpdateValues ( void   )  [protected, virtual]

Fills in frontend stats and emits status Qt signals.

This function uses five ioctl's FE_READ_SNR, FE_READ_SIGNAL_STRENGTH FE_READ_BER, FE_READ_UNCORRECTED_BLOCKS, and FE_READ_STATUS to obtain statistics from the frontend.

This is automatically called by MonitorLoop(), after Start() has been used to start the signal monitoring thread.

Reimplemented from SignalMonitor.

Definition at line 193 of file firewiresignalmonitor.cpp.

void FirewireSignalMonitor::EmitFirewireSignals ( void   )  [protected]

Emits signals for lock, signal strength, etc.

Definition at line 304 of file firewiresignalmonitor.cpp.

Referenced by UpdateValues().

void * FirewireSignalMonitor::TableMonitorThread ( void *  param  )  [static, protected]

Definition at line 133 of file firewiresignalmonitor.cpp.

Referenced by UpdateValues().

void FirewireSignalMonitor::RunTableMonitor ( void   )  [protected]

Definition at line 140 of file firewiresignalmonitor.cpp.

Referenced by TableMonitorThread().

bool FirewireSignalMonitor::SupportsTSMonitoring ( void   )  [protected]

void FirewireSignalMonitor::AddData ( const unsigned char *  data,
uint  dataSize 
) [protected, virtual]

Callback function to add MPEG2 TS data.

Implements TSDataListener.

Definition at line 174 of file firewiresignalmonitor.cpp.


Member Data Documentation

Definition at line 49 of file firewiresignalmonitor.h.

Referenced by UpdateValues().

Definition at line 50 of file firewiresignalmonitor.h.

Referenced by HandlePAT().

Definition at line 53 of file firewiresignalmonitor.h.

Referenced by AddData(), RunTableMonitor(), Stop(), and UpdateValues().

Definition at line 54 of file firewiresignalmonitor.h.

Referenced by Stop(), and UpdateValues().

Definition at line 55 of file firewiresignalmonitor.h.

Referenced by FirewireSignalMonitor(), and UpdateValues().

Definition at line 56 of file firewiresignalmonitor.h.

Referenced by HandlePAT(), and RunTableMonitor().

Definition at line 57 of file firewiresignalmonitor.h.

Referenced by UpdateValues().

Definition at line 58 of file firewiresignalmonitor.h.

Referenced by HandlePAT(), and RunTableMonitor().

Definition at line 59 of file firewiresignalmonitor.h.

Referenced by UpdateValues().

vector<unsigned char> FirewireSignalMonitor::buffer [protected]

Definition at line 61 of file firewiresignalmonitor.h.

QMap< void *, uint > FirewireSignalMonitor::pat_keys [static, protected]

Definition at line 63 of file firewiresignalmonitor.h.

QMutex FirewireSignalMonitor::pat_keys_lock [static, protected]

Definition at line 64 of file firewiresignalmonitor.h.


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

Generated on Sat Jul 31 05:18:37 2010 for MythTV by  doxygen 1.5.5