MythTV
master
|
FirewireChannel Copyright (c) 2005 by Jim Westfall and Dave Abrahams Distributed as part of MythTV under GPL v2 and later. More...
#include <libmythtv/recorders/firewirechannel.h>
Public Member Functions | |
FirewireChannel (TVRec *parent, QString videodevice, FireWireDBOptions firewire_opts) | |
~FirewireChannel () override | |
FirewireChannel (const FirewireChannel &)=delete | |
FirewireChannel & | operator= (const FirewireChannel &)=delete |
bool | Open (void) override |
Opens the channel changing hardware for use. More... | |
void | Close (void) override |
Closes the channel changing hardware to use. More... | |
bool | Tune (const DTVMultiplex &) override |
This performs the actual frequency tuning and in some cases input switching. More... | |
bool | Tune (const QString &freqid, int finetune) override |
bool | Retune (void) override |
virtual bool | SetPowerState (bool on) |
bool | IsOpen (void) const override |
Reports whether channel is already open. More... | |
QString | GetDevice (void) const override |
Returns String representing device, useful for debugging. More... | |
virtual bool | Tune (const DTVMultiplex &tuning)=0 |
This performs the actual frequency tuning and in some cases input switching. More... | |
virtual bool | Tune (const IPTVTuningData &, bool) |
Performs IPTV Tuning. Only implemented by IPTVChannel. More... | |
virtual bool | Tune (const QString &) |
Leave it up to the implementation to map the channnum appropriately. More... | |
bool | Tune ([[maybe_unused]] const QString &freqid,[[maybe_unused]] int finetune) override |
This tunes on the frequency Identification parameter for hardware that supports it. More... | |
virtual bool | Tune ([[maybe_unused]] uint64_t frequency) |
Public Member Functions inherited from DTVChannel | |
DTVChannel (TVRec *parent) | |
~DTVChannel () override | |
bool | SetChannelByString (const QString &chan) override |
void | SetFormat (const QString &format) override |
QString | GetFormat (void) |
virtual bool | TuneMultiplex (uint mplexid, const QString &inputname) |
To be used by the channel scanner and possibly the EIT scanner. More... | |
virtual bool | Tune (const IPTVTuningData &, bool) |
Performs IPTV Tuning. Only implemented by IPTVChannel. More... | |
virtual bool | Tune (const QString &) |
Leave it up to the implementation to map the channnum appropriately. More... | |
virtual bool | EnterPowerSavingMode (void) |
Enters power saving mode if the card supports it. More... | |
bool | Tune ([[maybe_unused]] const QString &freqid, [[maybe_unused]] int finetune) override |
This tunes on the frequency Identification parameter for hardware that supports it. More... | |
virtual bool | Tune ([[maybe_unused]] uint64_t frequency) |
int | GetProgramNumber (void) const |
Returns program number in PAT, -1 if unknown. More... | |
uint | GetMajorChannel (void) const |
Returns major channel, 0 if unknown. More... | |
uint | GetMinorChannel (void) const |
Returns minor channel, 0 if unknown. More... | |
uint | GetOriginalNetworkID (void) const |
Returns DVB original_network_id, 0 if unknown. More... | |
uint | GetTransportID (void) const |
Returns DVB transport_stream_id, 0 if unknown. More... | |
QString | GetSIStandard (void) const |
Returns PSIP table standard: MPEG, DVB, ATSC, or OpenCable. More... | |
QString | GetSuggestedTuningMode (bool is_live_tv) const |
Returns suggested tuning mode: "mpeg", "dvb", or "atsc". More... | |
QString | GetTuningMode (void) const |
Returns tuning mode last set by SetTuningMode(). More... | |
virtual std::vector< DTVTunerType > | GetTunerTypes (void) const |
Returns a vector of supported tuning types. More... | |
void | GetCachedPids (pid_cache_t &pid_cache) const |
Returns cached MPEG PIDs for last tuned channel. More... | |
void | RegisterForMaster (const QString &key) |
void | DeregisterForMaster (const QString &key) |
virtual bool | IsMaster (void) const |
Returns true if this is the first of a number of multi-rec devs. More... | |
virtual bool | IsPIDTuningSupported (void) const |
virtual bool | IsIPTV (void) const |
bool | HasGeneratedPAT (void) const |
bool | HasGeneratedPMT (void) const |
const ProgramAssociationTable * | GetGeneratedPAT (void) const |
const ProgramMapTable * | GetGeneratedPMT (void) const |
void | SetTuningMode (const QString &tuning_mode) |
Sets tuning mode: "mpeg", "dvb", "atsc", etc. More... | |
void | SaveCachedPids (const pid_cache_t &pid_cache) const |
Saves MPEG PIDs to cache to database. More... | |
Public Member Functions inherited from ChannelBase | |
ChannelBase (TVRec *parent) | |
virtual | ~ChannelBase (void) |
virtual bool | Init (QString &startchannel, bool setchan) |
virtual bool | IsTunable (const QString &channum) const |
virtual int | SetFreqTable (const QString &) |
virtual void | SetFd (int fd) |
Sets file descriptor. More... | |
virtual int | GetFd (void) const |
Returns file descriptor, -1 if it does not exist. More... | |
virtual bool | IsExternalChannelChangeInUse (void) |
virtual uint | GetNextChannel (uint chanid, ChannelChangeDirection direction) const |
virtual uint | GetNextChannel (const QString &channum, ChannelChangeDirection direction) const |
virtual QString | GetChannelName (void) const |
virtual int | GetChanID (void) const |
virtual int | GetInputID (void) const |
virtual QString | GetInputName (void) const |
virtual uint | GetSourceID (void) const |
bool | IsCommercialFree (void) const |
Returns true iff commercial detection is not required. More... | |
virtual void | Renumber (uint sourceid, const QString &oldChanNum, const QString &newChanNum) |
Changes a channum if we have it cached anywhere. More... | |
virtual bool | InitializeInput (void) |
Fills in input map from DB. More... | |
virtual void | StoreInputChannels (void) |
Saves current channel as the default channel for the current input. More... | |
virtual bool | InitPictureAttributes (void) |
virtual int | GetPictureAttribute (PictureAttribute) const |
virtual int | ChangePictureAttribute (PictureAdjustType, PictureAttribute, bool) |
bool | CheckChannel (const QString &channum) const |
void | SetInputID (uint _inputid) |
int | GetMajorID (void) |
Protected Member Functions | |
bool | IsExternalChannelChangeSupported (void) override |
Protected Member Functions inherited from DTVChannel | |
void | SetSIStandard (const QString &si_std) |
Sets PSIP table standard: MPEG, DVB, ATSC, or OpenCable. More... | |
void | SetDTVInfo (uint atsc_major, uint atsc_minor, uint dvb_orig_netid, uint mpeg_tsid, int mpeg_pnum) |
void | ClearDTVInfo (void) |
virtual void | CheckOptions (DTVMultiplex &) const |
Checks tuning for problems, and tries to fix them. More... | |
void | HandleScriptEnd (bool ok) override |
Protected Member Functions inherited from ChannelBase | |
virtual bool | IsInputAvailable (uint &mplexid_restriction, uint &chanid_restriction) const |
Switches to another input on hardware, and sets the channel is setstarting is true. More... | |
bool | KillScript (void) |
void | HandleScript (const QString &freqid) |
uint | GetScriptStatus (bool holding_lock=false) |
bool | ChangeExternalChannel (const QString &changer, const QString &freqid) |
bool | ChangeInternalChannel (const QString &freqid, uint cardinputid) const |
Private Member Functions | |
virtual FirewireDevice::PowerState | GetPowerState (void) const |
virtual FirewireDevice * | GetFirewireDevice (void) |
Friends | |
class | FirewireSignalMonitor |
class | FirewireRecorder |
Additional Inherited Members | |
Public Types inherited from DTVChannel | |
using | DTVChannelP = DTVChannel * |
Static Public Member Functions inherited from DTVChannel | |
static DTVChannel * | GetMasterLock (const QString &key) |
static void | ReturnMasterLock (DTVChannelP &chan) |
Static Public Member Functions inherited from ChannelBase | |
static ChannelBase * | CreateChannel (TVRec *tvrec, const GeneralDBOptions &genOpt, const DVBDBOptions &dvbOpt, const FireWireDBOptions &fwOpt, const QString &startchannel, bool enter_power_save_mode, QString &rbFileExt, bool setchan) |
Protected Types inherited from DTVChannel | |
using | MasterMap = QMap< QString, QList< DTVChannel * > > |
Static Protected Attributes inherited from DTVChannel | |
static QReadWriteLock | s_master_map_lock |
static MasterMap | s_master_map |
FirewireChannel Copyright (c) 2005 by Jim Westfall and Dave Abrahams Distributed as part of MythTV under GPL v2 and later.
Definition at line 14 of file firewirechannel.h.
FirewireChannel::FirewireChannel | ( | TVRec * | parent, |
QString | videodevice, | ||
FireWireDBOptions | firewire_opts | ||
) |
Definition at line 21 of file firewirechannel.cpp.
|
override |
Definition at line 41 of file firewirechannel.cpp.
|
delete |
|
delete |
|
overridevirtual |
Opens the channel changing hardware for use.
Implements ChannelBase.
Definition at line 47 of file firewirechannel.cpp.
|
overridevirtual |
Closes the channel changing hardware to use.
Implements ChannelBase.
Definition at line 80 of file firewirechannel.cpp.
Referenced by ~FirewireChannel().
|
inlineoverridevirtual |
This performs the actual frequency tuning and in some cases input switching.
In rare cases such as ASI this does nothing since all the channels are in the same MPTS stream on the same input. But generally you will need to implement this when adding support for new hardware.
Implements DTVChannel.
Definition at line 32 of file firewirechannel.h.
Referenced by Retune().
|
overridevirtual |
Reimplemented from ChannelBase.
Definition at line 142 of file firewirechannel.cpp.
|
overridevirtual |
Reimplemented from ChannelBase.
Definition at line 121 of file firewirechannel.cpp.
Definition at line 95 of file firewirechannel.cpp.
|
inlineoverridevirtual |
Reports whether channel is already open.
Implements ChannelBase.
Definition at line 41 of file firewirechannel.h.
|
overridevirtual |
Returns String representing device, useful for debugging.
Reimplemented from ChannelBase.
Definition at line 90 of file firewirechannel.cpp.
|
inlineoverrideprotectedvirtual |
Reimplemented from ChannelBase.
Definition at line 46 of file firewirechannel.h.
|
privatevirtual |
Definition at line 108 of file firewirechannel.cpp.
Referenced by FirewireSignalMonitor::FirewireSignalMonitor(), Retune(), Tune(), and FirewireSignalMonitor::UpdateValues().
|
inlineprivatevirtual |
Definition at line 51 of file firewirechannel.h.
Referenced by FirewireRecorder::Close(), FirewireSignalMonitor::HandlePAT(), FirewireRecorder::Open(), FirewireRecorder::StartStreaming(), and FirewireRecorder::StopStreaming().
virtual bool DTVChannel::Tune |
This performs the actual frequency tuning and in some cases input switching.
In rare cases such as ASI this does nothing since all the channels are in the same MPTS stream on the same input. But generally you will need to implement this when adding support for new hardware.
|
inline |
Performs IPTV Tuning. Only implemented by IPTVChannel.
Definition at line 58 of file dtvchannel.h.
|
inline |
Leave it up to the implementation to map the channnum appropriately.
Used by the ExternalRecorder.
Definition at line 63 of file dtvchannel.h.
|
inlineoverride |
This tunes on the frequency Identification parameter for hardware that supports it.
This is only called when there is no frequency set. This is used to implement "Channel Numbers" in analog tuning scenarios and to implement "Virtual Channels" in the OCUR and Firewire tuners.
Definition at line 75 of file dtvchannel.h.
|
inline |
Definition at line 81 of file dtvchannel.h.
|
friend |
Definition at line 16 of file firewirechannel.h.
|
friend |
Definition at line 17 of file firewirechannel.h.
|
protected |
Definition at line 54 of file firewirechannel.h.
Referenced by FirewireChannel(), and GetDevice().
|
protected |
Definition at line 55 of file firewirechannel.h.
Referenced by FirewireChannel(), Open(), and Tune().
|
protected |
Definition at line 56 of file firewirechannel.h.
Referenced by Close(), FirewireChannel(), GetFirewireDevice(), GetPowerState(), Open(), SetPowerState(), Tune(), and ~FirewireChannel().
|
protected |
Definition at line 57 of file firewirechannel.h.
Definition at line 58 of file firewirechannel.h.
Referenced by Close(), GetPowerState(), IsOpen(), Open(), and SetPowerState().