MythTV  master
scanwizardconfig.cpp
Go to the documentation of this file.
1 #include "scanwizardconfig.h"
2 
3 #include "videosource.h"
4 #include "cardutil.h"
6 #include "channelutil.h"
7 
9 #include "inputselectorsetting.h"
10 #include "scanwizard.h"
11 
12 #include "panedvbs.h"
13 #include "panedvbs2.h"
14 #include "panedvbc.h"
15 #include "panedvbt.h"
16 #include "panedvbt2.h"
17 #include "paneatsc.h"
18 #include "paneanalog.h"
19 #include "panesingle.h"
20 #include "paneall.h"
21 #include "panedvbutilsimport.h"
22 #include "paneexistingscanimport.h"
23 
25  uint default_sourceid, uint default_cardid,
26  const QString& default_inputname)
27 {
29  default_sourceid, CardUtil::GetScanableInputTypes(), false);
30  m_input = new InputSelector(default_cardid, default_inputname);
34  m_ftaOnly = new FreeToAirOnly();
38  m_addFullTS = new AddFullTS();
40 
41  setLabel(tr("Channel Scan"));
42 
50 
55 
56  connect(m_videoSource, SIGNAL(valueChanged(const QString&)),
57  m_scanConfig, SLOT( SetSourceID( const QString&)));
58 
59  connect(m_videoSource, SIGNAL(valueChanged(const QString&)),
60  m_input, SLOT( SetSourceID( const QString&)));
61 
62  connect(m_input, SIGNAL(valueChanged(const QString&)),
63  m_scanType, SLOT( SetInput( const QString&)));
64 
65  connect(m_input, SIGNAL(valueChanged(const QString&)),
66  this, SLOT( SetInput( const QString&)));
67 
68  connect(m_input, SIGNAL(valueChanged(const QString&)),
69  this, SLOT( SetPaneDefaults(const QString)));
70 
71 }
72 
74 {
75  return m_videoSource->getValue().toUInt();
76 }
77 
79 {
81 }
82 
84 {
85  return m_ftaOnly->boolValue();
86 }
87 
89 {
90  return m_lcnOnly->boolValue();
91 }
92 
94 {
95  return m_completeOnly->boolValue();
96 }
97 
99 {
100  return m_fullSearch->boolValue();
101 }
102 
103 bool ScanWizard::DoAddFullTS(void) const
104 {
105  return m_addFullTS->boolValue();
106 }
107 
109 {
110  return m_trustEncSI->boolValue();
111 }
112 
113 void ScanWizard::SetPaneDefaults(const QString &cardid_inputname)
114 {
115  const int sourceid = m_videoSource->getValue().toInt();
116  uint scanfrequency = 0;
117 
118  MSqlQuery query(MSqlQuery::InitCon());
119  query.prepare(
120  "SELECT scanfrequency "
121  "FROM videosource "
122  "WHERE videosource.sourceid = :SOURCEID ;");
123  query.bindValue(":SOURCEID", sourceid);
124  if (!query.exec() || !query.isActive())
125  {
126  MythDB::DBError("ScanOptionalConfig::SetPaneDefaults", query);
127  }
128  else if (query.next())
129  {
130  scanfrequency = query.value(0).toUInt();
131  LOG(VB_CHANSCAN, LOG_DEBUG,
132  QString("SetPaneDefaults cardid_inputname:%1 sourceid:%2 frequency:%3")
133  .arg(cardid_inputname).arg(sourceid).arg(scanfrequency));
134  }
135 
136  // Set defaults only when a frequency has been entered.
137  if (scanfrequency == 0)
138  return;
139 
140  // If we have only a frequency set that as default; if there is a multiplex
141  // already at that frequency then use the values of that multiplex as
142  // default values for scanning.
143  int mplexid = 0;
144  mplexid = ChannelUtil::GetMplexID(sourceid, scanfrequency);
145  LOG(VB_CHANSCAN, LOG_DEBUG,
146  QString("SetPaneDefaults sourceid:%1 frequency:%2 mplexid:%3")
147  .arg(sourceid).arg(scanfrequency).arg(mplexid));
148 
149  DTVMultiplex mpx;
150  if (mplexid > 0)
151  {
153 
154  mpx.FillFromDB(tuner_type, mplexid);
155 
156  LOG(VB_CHANSCAN, LOG_DEBUG,
157  QString("SetPaneDefaults sourceid:%1 frequency:%2 mplexid:%3 tuner_type:%4 mpx:%5")
158  .arg(sourceid).arg(scanfrequency).arg(mplexid)
159  .arg(tuner_type.toString()).arg(mpx.toString()));
160  }
161 
162  m_scanConfig->SetTuningPaneValues(scanfrequency, mpx);
163 }
164 
167 
168 void ScanTypeSetting::SetInput(const QString &cardids_inputname)
169 {
170  uint cardid = 0;
171  QString inputname;
172  if (!InputSelector::Parse(cardids_inputname, cardid, inputname))
173  return;
174 
175  // Only refresh if we really have to. If we do it too often
176  // Then we end up fighting the scan routine when we want to
177  // check the type of dvb card :/
178  if (cardid == m_hw_cardid)
179  return;
180 
181  m_hw_cardid = cardid;
182  QString subtype = CardUtil::ProbeSubTypeName(m_hw_cardid);
183  int nCardType = CardUtil::toInputType(subtype);
184  clearSelections();
185 
186  switch (nCardType)
187  {
188  case CardUtil::V4L:
189  case CardUtil::MPEG:
190  addSelection(tr("Full Scan"),
191  QString::number(FullScan_Analog), true);
192  addSelection(tr("Import existing scan"),
193  QString::number(ExistingScanImport));
194  return;
195  case CardUtil::DVBT:
196  addSelection(tr("Full Scan"),
197  QString::number(FullScan_DVBT), true);
198  addSelection(tr("Full Scan (Tuned)"),
199  QString::number(NITAddScan_DVBT));
200 // addSelection(tr("Import channels.conf"),
201 // QString::number(DVBUtilsImport));
202  addSelection(tr("Import existing scan"),
203  QString::number(ExistingScanImport));
204  break;
205  case CardUtil::DVBT2:
206  addSelection(tr("Full Scan"),
207  QString::number(FullScan_DVBT2), true);
208  addSelection(tr("Full Scan (Tuned)"),
209  QString::number(NITAddScan_DVBT2));
210 // addSelection(tr("Import channels.conf"),
211 // QString::number(DVBUtilsImport));
212  addSelection(tr("Import existing scan"),
213  QString::number(ExistingScanImport));
214  break;
215  case CardUtil::DVBS:
216  addSelection(tr("Full Scan (Tuned)"),
217  QString::number(NITAddScan_DVBS));
218 // addSelection(tr("Import channels.conf"),
219 // QString::number(DVBUtilsImport));
220  addSelection(tr("Import existing scan"),
221  QString::number(ExistingScanImport));
222  break;
223  case CardUtil::DVBS2:
224  addSelection(tr("Full Scan (Tuned)"),
225  QString::number(NITAddScan_DVBS2));
226 // addSelection(tr("Import channels.conf"),
227 // QString::number(DVBUtilsImport));
228  addSelection(tr("Import existing scan"),
229  QString::number(ExistingScanImport));
230  break;
231  case CardUtil::QAM:
232  addSelection(tr("Full Scan (Tuned)"),
233  QString::number(NITAddScan_DVBC));
234  addSelection(tr("Full Scan"),
235  QString::number(FullScan_DVBC));
236 // addSelection(tr("Import channels.conf"),
237 // QString::number(DVBUtilsImport));
238  addSelection(tr("Import existing scan"),
239  QString::number(ExistingScanImport));
240  break;
241  case CardUtil::ATSC:
242  addSelection(tr("Full Scan"),
243  QString::number(FullScan_ATSC), true);
244 // addSelection(tr("Import channels.conf"),
245 // QString::number(DVBUtilsImport));
246  addSelection(tr("Import existing scan"),
247  QString::number(ExistingScanImport));
248  break;
249  case CardUtil::HDHOMERUN:
251  {
252  addSelection(tr("Full Scan (Tuned)"),
253  QString::number(NITAddScan_DVBC));
254  addSelection(tr("Full Scan"),
255  QString::number(FullScan_DVBC));
256  }
258  {
259  addSelection(tr("Full Scan"),
260  QString::number(FullScan_DVBT), true);
261  addSelection(tr("Full Scan (Tuned)"),
262  QString::number(NITAddScan_DVBT));
263  }
264  else
265  addSelection(tr("Full Scan"),
266  QString::number(FullScan_ATSC), true);
267 // addSelection(tr("Import channels.conf"),
268 // QString::number(DVBUtilsImport));
269  addSelection(tr("Import existing scan"),
270  QString::number(ExistingScanImport));
271  break;
272  case CardUtil::VBOX:
273  addSelection(tr("VBox Channel Import"),
274  QString::number(VBoxImport), true);
275  return;
276  case CardUtil::FREEBOX:
277  addSelection(tr("M3U Import with MPTS"),
278  QString::number(IPTVImportMPTS), true);
279  addSelection(tr("M3U Import"),
280  QString::number(IPTVImport), true);
281  return;
282  case CardUtil::ASI:
283  addSelection(tr("ASI Scan"),
284  QString::number(CurrentTransportScan), true);
285  return;
286  case CardUtil::EXTERNAL:
287  addSelection(tr("MPTS Scan"),
288  QString::number(CurrentTransportScan), true);
289  addSelection(tr("Import from ExternalRecorder"),
290  QString::number(ExternRecImport), true);
291  return;
293  addSelection(tr("Failed to probe the card"),
294  QString::number(Error_Probe), true);
295  return;
296  default:
297  addSelection(tr("Failed to open the card"),
298  QString::number(Error_Open), true);
299  return;
300  }
301 
302  addSelection(tr("Scan of all existing transports"),
303  QString::number(FullTransportScan));
304  addSelection(tr("Scan of single existing transport"),
305  QString::number(TransportScan));
306 }
307 
310 
312  m_scanType(_scan_type),
313  m_dvbTCountry(new ScanCountry()),
314  m_dvbT2Country(new ScanCountry()),
315  m_network(new ScanNetwork()),
316  m_paneDVBT(new PaneDVBT(QString::number(ScanTypeSetting::NITAddScan_DVBT), m_scanType)),
317  m_paneDVBT2(new PaneDVBT2(QString::number(ScanTypeSetting::NITAddScan_DVBT2), m_scanType)),
318  m_paneDVBS(new PaneDVBS(QString::number(ScanTypeSetting::NITAddScan_DVBS), m_scanType)),
319  m_paneDVBS2(new PaneDVBS2(QString::number(ScanTypeSetting::NITAddScan_DVBS2), m_scanType)),
320  m_paneATSC(new PaneATSC(QString::number(ScanTypeSetting::FullScan_ATSC), m_scanType)),
321  m_paneDVBC(new PaneDVBC(QString::number(ScanTypeSetting::NITAddScan_DVBC), m_scanType)),
322  m_paneAnalog(new PaneAnalog(QString::number(ScanTypeSetting::FullScan_Analog), m_scanType)),
323  m_paneSingle(new PaneSingle(QString::number(ScanTypeSetting::TransportScan), m_scanType)),
324  m_paneAll(new PaneAll(QString::number(ScanTypeSetting::FullTransportScan), m_scanType)),
325  m_paneDVBUtilsImport(new PaneDVBUtilsImport()),
326  m_paneExistingScanImport(new PaneExistingScanImport(QString::number(ScanTypeSetting::ExistingScanImport), m_scanType))
327 {
328  setVisible(false);
329 
331  new PaneError(tr("Failed to open the card")));
333  new PaneError(tr("Failed to probe the card")));
335  m_network);
337  m_dvbTCountry);
340 // m_scanType->addTargetedChild(QString::number(ScanTypeSetting::DVBUtilsImport),
341 // paneDVBUtilsImport);
342 }
343 
344 void ScanOptionalConfig::SetSourceID(const QString &sourceid)
345 {
346  m_paneAnalog->SetSourceID(sourceid.toUInt());
347  m_paneSingle->SetSourceID(sourceid.toUInt());
348  m_paneExistingScanImport->SetSourceID(sourceid.toUInt());
349 }
350 
352 {
353  int st = m_scanType->getValue().toInt();
354 
355  switch (st)
356  {
358  return "atsc";
360  return "dvbc";
363  return "dvbt";
365  return "analog";
366  default:
367  return "unknown";
368  }
369 }
370 
372 {
373  int st = m_scanType->getValue().toInt();
374 
375  switch (st)
376  {
378  return m_paneATSC->GetModulation();
380  return "qam";
383  return "ofdm";
385  return "analog";
386  default:
387  return "unknown";
388  }
389 }
390 
392 {
393  int st = m_scanType->getValue().toInt();
394 
395  switch (st)
396  {
398  return m_paneATSC->GetFrequencyTable();
400  return m_network->getValue();
402  return m_dvbTCountry->getValue();
404  return m_dvbT2Country->getValue();
407  default:
408  return "unknown";
409  }
410 }
411 
413  QString &start, QString &end) const
414 {
415  start.clear();
416  end.clear();
417 
418  int st = m_scanType->getValue().toInt();
420  return m_paneATSC->GetFrequencyTableRange(start, end);
421 
422  return false;
423 }
424 
426 {
427  int st = m_scanType->getValue().toInt();
428 
429  switch (st)
430  {
434  return m_paneAll->ignoreSignalTimeout();
437  default:
438  return false;
439  }
440 }
441 
443 {
444  int st = m_scanType->getValue().toInt();
445  switch (st)
446  {
448  return m_paneSingle->GetFollowNIT();
450  return m_paneAll->GetFollowNIT();
451  default:
452  return false;
453  }
454 }
455 
457 {
459 }
460 
462 {
463  int mplexid = m_paneSingle->GetMultiplex();
464  return (mplexid <= 0) ? 0 : mplexid;
465 }
466 
468 {
470 }
471 
472 QMap<QString,QString> ScanOptionalConfig::GetStartChan(void) const
473 {
474  QMap<QString,QString> startChan;
475 
476  int st = m_scanType->getValue().toInt();
478  {
479  const PaneDVBT *pane = m_paneDVBT;
480 
481  startChan["std"] = "dvb";
482  startChan["type"] = "OFDM";
483  startChan["frequency"] = pane->frequency();
484  startChan["inversion"] = pane->inversion();
485  startChan["bandwidth"] = pane->bandwidth();
486  startChan["coderate_hp"] = pane->coderate_hp();
487  startChan["coderate_lp"] = pane->coderate_lp();
488  startChan["constellation"] = pane->constellation();
489  startChan["trans_mode"] = pane->trans_mode();
490  startChan["guard_interval"] = pane->guard_interval();
491  startChan["hierarchy"] = pane->hierarchy();
492  }
493  else if (ScanTypeSetting::NITAddScan_DVBT2 == st)
494  {
495  const PaneDVBT2 *pane = m_paneDVBT2;
496 
497  startChan["std"] = "dvb";
498  startChan["type"] = "DVB_T2";
499  startChan["frequency"] = pane->frequency();
500  startChan["inversion"] = pane->inversion();
501  startChan["bandwidth"] = pane->bandwidth();
502  startChan["coderate_hp"] = pane->coderate_hp();
503  startChan["coderate_lp"] = pane->coderate_lp();
504  startChan["constellation"] = pane->constellation();
505  startChan["trans_mode"] = pane->trans_mode();
506  startChan["guard_interval"] = pane->guard_interval();
507  startChan["hierarchy"] = pane->hierarchy();
508  startChan["mod_sys"] = pane->mod_sys();
509  }
510  else if (ScanTypeSetting::NITAddScan_DVBS == st)
511  {
512  const PaneDVBS *pane = m_paneDVBS;
513 
514  startChan["std"] = "dvb";
515  startChan["type"] = "QPSK";
516  startChan["modulation"] = "qpsk";
517  startChan["frequency"] = pane->frequency();
518  startChan["inversion"] = pane->inversion();
519  startChan["symbolrate"] = pane->symbolrate();
520  startChan["fec"] = pane->fec();
521  startChan["polarity"] = pane->polarity();
522  }
523  else if (ScanTypeSetting::NITAddScan_DVBC == st)
524  {
525  const PaneDVBC *pane = m_paneDVBC;
526 
527  startChan["std"] = "dvb";
528  startChan["type"] = "QAM";
529  startChan["frequency"] = pane->frequency();
530  startChan["inversion"] = pane->inversion();
531  startChan["symbolrate"] = pane->symbolrate();
532  startChan["fec"] = pane->fec();
533  startChan["modulation"] = pane->modulation();
534  }
535  else if (ScanTypeSetting::NITAddScan_DVBS2 == st)
536  {
537  const PaneDVBS2 *pane = m_paneDVBS2;
538 
539  startChan["std"] = "dvb";
540  startChan["type"] = "DVB_S2";
541  startChan["frequency"] = pane->frequency();
542  startChan["inversion"] = pane->inversion();
543  startChan["symbolrate"] = pane->symbolrate();
544  startChan["fec"] = pane->fec();
545  startChan["modulation"] = pane->modulation();
546  startChan["polarity"] = pane->polarity();
547  startChan["mod_sys"] = pane->mod_sys();
548  startChan["rolloff"] = pane->rolloff();
549  }
550 
551  return startChan;
552 }
553 
555 {
556  const int st = m_scanType->getValue().toInt();
557 
558  if (st == ScanTypeSetting::FullScan_DVBT ||
560  {
561  PaneDVBT *pane = m_paneDVBT;
562 
563  pane->setFrequency(frequency);
564  if (frequency == mpx.m_frequency)
565  {
566  pane->setInversion(mpx.m_inversion.toString());
567  pane->setBandwidth(mpx.m_bandwidth.toString());
568  pane->setCodeRateHP(mpx.m_hpCodeRate.toString());
569  pane->setCodeRateLP(mpx.m_lpCodeRate.toString());
571  pane->setTransmode(mpx.m_transMode.toString());
573  pane->setHierarchy(mpx.m_hierarchy.toString());
574  }
575  }
576  else if (st == ScanTypeSetting::FullScan_DVBT2 ||
578  {
579  PaneDVBT2 *pane = m_paneDVBT2;
580 
581  pane->setFrequency(frequency);
582  if (frequency == mpx.m_frequency)
583  {
584  pane->setInversion(mpx.m_inversion.toString());
585  pane->setBandwidth(mpx.m_bandwidth.toString());
586  pane->setCodeRateHP(mpx.m_hpCodeRate.toString());
587  pane->setCodeRateLP(mpx.m_lpCodeRate.toString());
589  pane->setTransmode(mpx.m_transMode.toString());
591  pane->setHierarchy(mpx.m_hierarchy.toString());
592  pane->setModsys(mpx.m_modSys.toString());
593  }
594  }
595  else if (st == ScanTypeSetting::FullScan_DVBC ||
597  {
598  PaneDVBC *pane = m_paneDVBC;
599 
600  pane->setFrequency(frequency);
601  if (frequency == mpx.m_frequency)
602  {
603  pane->setInversion(mpx.m_inversion.toString());
604  pane->setSymbolrate(QString("%1").arg(mpx.m_symbolrate));
605  pane->setFec(mpx.m_fec.toString());
606  pane->setModulation(mpx.m_modulation.toString());
607  }
608  }
609  else if (st == ScanTypeSetting::NITAddScan_DVBS)
610  {
611  PaneDVBS *pane = m_paneDVBS;
612 
613  pane->setFrequency(frequency);
614  if (frequency == mpx.m_frequency)
615  {
616  pane->setSymbolrate(QString("%1").arg(mpx.m_symbolrate));
617  pane->setInversion(mpx.m_inversion.toString());
618  pane->setFec(mpx.m_fec.toString());
619  pane->setPolarity(mpx.m_polarity.toString());
620  }
621  }
622  else if (st == ScanTypeSetting::NITAddScan_DVBS2)
623  {
624  PaneDVBS2 *pane = m_paneDVBS2;
625 
626  pane->setFrequency(frequency);
627  if (frequency == mpx.m_frequency)
628  {
629  pane->setSymbolrate(QString("%1").arg(mpx.m_symbolrate));
630  pane->setInversion(mpx.m_inversion.toString());
631  pane->setFec(mpx.m_fec.toString());
632  pane->setPolarity(mpx.m_polarity.toString());
633  pane->setModulation(mpx.m_modulation.toString());
634  pane->setModsys(mpx.m_modSys.toString());
635  pane->setRolloff(mpx.m_rolloff.toString());
636  }
637  }
638 }
void setSymbolrate(QString symbolrate)
Definition: panedvbs2.h:40
AddFullTS * m_addFullTS
Definition: scanwizard.h:108
bool next(void)
Wrap QSqlQuery::next() so we can display the query results.
Definition: mythdbcon.cpp:781
void setBandwidth(QString bandwidth)
Definition: panedvbt.h:66
QString GetFilename(void) const
PaneSingle * m_paneSingle
void setInversion(QString inversion)
Definition: panedvbs.h:59
QString inversion(void) const
Definition: panedvbs2.h:32
QString trans_mode(void) const
Definition: panedvbt.h:61
bool DoFullChannelSearch(void) const
void setPolarity(QString polarity)
Definition: panedvbs2.h:43
uint64_t m_symbolrate
Definition: dtvmultiplex.h:95
static bool HDHRdoesDVBC(const QString &device)
void setFrequency(uint frequency)
Definition: panedvbc.h:57
QString modulation(void) const
Definition: panedvbs2.h:35
DTVGuardInterval m_guardInterval
Definition: dtvmultiplex.h:102
void bindValue(const QString &placeholder, const QVariant &val)
Add a single binding.
Definition: mythdbcon.cpp:862
QString GetModulation(void) const
Definition: paneatsc.h:65
void setRolloff(QString rolloff)
Definition: panedvbs2.h:46
QString fec(void) const
Definition: panedvbc.h:54
QString coderate_lp(void) const
Definition: panedvbt2.h:61
DTVBandwidth m_bandwidth
Definition: dtvmultiplex.h:97
void SetupConfig(uint default_sourceid, uint default_cardid, const QString &default_inputname)
DTVHierarchy m_hierarchy
Definition: dtvmultiplex.h:103
void setFec(QString fec)
Definition: panedvbs.h:60
bool DoFreeToAirOnly(void) const
int GetMultiplex(void) const
Definition: panesingle.h:53
DTVPolarity m_polarity
Definition: dtvmultiplex.h:104
static QString ProbeSubTypeName(uint inputid)
Definition: cardutil.cpp:934
static enum INPUT_TYPES toInputType(const QString &name)
Definition: cardutil.h:72
QSqlQuery wrapper that fetches a DB connection from the connection pool.
Definition: mythdbcon.h:125
void SetSourceID(const QString &)
void setFec(QString fec)
Definition: panedvbc.h:61
PaneDVBUtilsImport * m_paneDVBUtilsImport
void addSelection(const QString &label, QString value=QString(), bool select=false)
QString modulation(void) const
Definition: panedvbc.h:55
void setTransmode(QString trans_mode)
Definition: panedvbt2.h:74
QString inversion(void) const
Definition: panedvbc.h:53
bool DoCompleteChannelsOnly(void) const
QString toString() const
uint GetSourceID(void) const
QString frequency(void) const
Definition: panedvbc.h:51
CompleteChannelsOnly * m_completeOnly
Definition: scanwizard.h:106
QString GetFrequencyTable(void) const
Definition: paneanalog.cpp:21
void setCodeRateHP(QString coderate_hp)
Definition: panedvbt.h:70
void setHierarchy(QString hierarchy)
Definition: panedvbt2.h:76
void setBandwidth(QString bandwidth)
Definition: panedvbt2.h:69
DTVInversion m_inversion
Definition: dtvmultiplex.h:96
void setCodeRateLP(QString coderate_lp)
Definition: panedvbt.h:69
void setGuardInterval(QString guard_interval)
Definition: panedvbt.h:72
static uint GetMplexID(uint sourceid, const QString &channum)
void setInversion(QString inversion)
Definition: panedvbt2.h:70
QString toString() const
QString toString() const
void setFec(QString fec)
Definition: panedvbs2.h:42
DTVCodeRate m_fec
Inner Forward Error Correction rate.
Definition: dtvmultiplex.h:105
uint GetScanID(void) const
virtual QString getValue(void) const
QString hierarchy(void) const
Definition: panedvbt.h:63
QString inversion(void) const
Definition: panedvbt.h:57
void setModsys(QString mod_sys)
Definition: panedvbs2.h:45
VideoSourceSelector * m_videoSource
Definition: scanwizard.h:99
DesiredServices * m_services
Definition: scanwizard.h:103
QVariant value(int i) const
Definition: mythdbcon.h:198
QString toString() const
void setInversion(QString inversion)
Definition: panedvbc.h:59
void setFrequency(uint frequency)
Definition: panedvbt2.h:68
QString constellation(void) const
Definition: panedvbt.h:58
QString GetFilename(void) const
bool DoIgnoreSignalTimeout(void) const
void setInversion(QString inversion)
Definition: panedvbs2.h:41
DTVModulation m_modulation
Definition: dtvmultiplex.h:100
QString toString() const
QString frequency(void) const
Definition: panedvbt.h:55
QString polarity(void) const
Definition: panedvbs2.h:34
uint GetMultiplex(void) const
void setCodeRateHP(QString coderate_hp)
Definition: panedvbt2.h:73
QString GetFrequencyStandard(void) const
ScanTypeSetting * m_scanType
Definition: scanwizard.h:101
static bool Parse(const QString &cardid_inputname, uint &cardid, QString &inputname)
static bool HDHRdoesDVB(const QString &device)
void setSymbolrate(QString symbolrate)
Definition: panedvbs.h:58
virtual void setLabel(QString str)
QString frequency(void) const
Definition: panedvbs2.h:30
QString rolloff(void) const
Definition: panedvbs2.h:37
bool GetFrequencyTableRange(QString &start, QString &end) const
Definition: paneatsc.h:67
TrustEncSISetting * m_trustEncSI
Definition: scanwizard.h:109
QString toString() const
bool GetFollowNIT(void) const
Definition: paneall.h:52
bool isActive(void) const
Definition: mythdbcon.h:204
QString trans_mode(void) const
Definition: panedvbt2.h:63
QString toString() const
void SetInput(const QString &cardids_inputname)
QString inversion(void) const
Definition: panedvbt2.h:59
void setGuardInterval(QString guard_interval)
Definition: panedvbt2.h:75
unsigned int uint
Definition: compat.h:140
QString bandwidth(void) const
Definition: panedvbt2.h:58
static MSqlQueryInfo InitCon(ConnectionReuse=kNormalConnection)
Only use this in combination with MSqlQuery constructor.
Definition: mythdbcon.cpp:534
bool DoTestDecryption(void) const
void setCodeRateLP(QString coderate_lp)
Definition: panedvbt2.h:72
void SetTuningPaneValues(uint frequency, const DTVMultiplex &mpx)
bool DoIgnoreSignalTimeout(void) const
void setPolarity(QString polarity)
Definition: panedvbs.h:61
void setFrequency(uint frequency)
Definition: panedvbs2.h:39
ChannelNumbersOnly * m_lcnOnly
Definition: scanwizard.h:105
ScanOptionalConfig(ScanTypeSetting *_scan_type)
DTVTransmitMode m_transMode
Definition: dtvmultiplex.h:101
virtual void addChild(StandardSetting *child)
void setModulation(QString modulation)
Definition: panedvbs2.h:44
QMap< QString, QString > GetStartChan(void) const
static QString GetVideoDevice(uint inputid)
Definition: cardutil.h:273
QString toString() const
QString bandwidth(void) const
Definition: panedvbt.h:56
QString hierarchy(void) const
Definition: panedvbt2.h:65
QString GetFrequencyTable(void) const
Definition: paneatsc.h:63
QString coderate_hp(void) const
Definition: panedvbt2.h:62
void setVisible(bool visible)
bool prepare(const QString &query)
QSqlQuery::prepare() is not thread safe in Qt <= 3.3.2.
Definition: mythdbcon.cpp:806
bool DoChannelNumbersOnly(void) const
DTVRollOff m_rolloff
Definition: dtvmultiplex.h:107
QString fec(void) const
Definition: panedvbs.h:54
ScanCountry * m_dvbT2Country
#define LOG(_MASK_, _LEVEL_, _STRING_)
Definition: mythlogging.h:41
QString guard_interval(void) const
Definition: panedvbt2.h:64
void setTransmode(QString trans_mode)
Definition: panedvbt.h:71
ScanCountry * m_dvbTCountry
static DTVTunerType GetTunerTypeFromMultiplex(uint mplexid)
Definition: cardutil.cpp:821
bool GetFrequencyTableRange(QString &, QString &) const
QString toString() const
void setModsys(QString mod_sys)
Definition: panedvbt2.h:77
QString frequency(void) const
Definition: panedvbs.h:51
QString toString() const
ScanTypeSetting * m_scanType
bool ignoreSignalTimeout(void) const
Definition: panesingle.h:55
void setInversion(QString inversion)
Definition: panedvbt.h:67
FreeToAirOnly * m_ftaOnly
Definition: scanwizard.h:104
QString frequency(void) const
Definition: panedvbt2.h:57
PaneExistingScanImport * m_paneExistingScanImport
bool ignoreSignalTimeout(void) const
Definition: paneall.h:50
QString symbolrate(void) const
Definition: panedvbc.h:52
ServiceRequirements
QString GetModulation(void) const
bool DoFollowNIT(void) const
DTVCodeRate m_hpCodeRate
High Priority FEC rate.
Definition: dtvmultiplex.h:98
void setFrequency(uint frequency)
Definition: panedvbt.h:65
void setFrequency(uint frequency)
Definition: panedvbs.h:57
bool exec(void)
Wrap QSqlQuery::exec() so we can display SQL.
Definition: mythdbcon.cpp:602
void SetSourceID(uint sourceid)
Definition: paneanalog.cpp:16
QString GetFrequencyTable(void) const
FullChannelSearch * m_fullSearch
Definition: scanwizard.h:107
void setConstellation(QString constellation)
Definition: panedvbt2.h:71
void SetPaneDefaults(const QString &cardid_inputname)
void setSymbolrate(QString symbolrate)
Definition: panedvbc.h:58
QString mod_sys(void) const
Definition: panedvbs2.h:36
static void DBError(const QString &where, const MSqlQuery &query)
Definition: mythdb.cpp:179
bool DoAddFullTS(void) const
ServiceRequirements GetServiceRequirements(void) const
void setHierarchy(QString hierarchy)
Definition: panedvbt.h:73
Scans the transport when there is no tuner (for ASI)
void SetInput(const QString &cardid_inputname)
Definition: scanwizard.cpp:196
QString symbolrate(void) const
Definition: panedvbs.h:52
void setConstellation(QString constellation)
Definition: panedvbt.h:68
QString mod_sys(void) const
Definition: panedvbt2.h:66
ScanOptionalConfig * m_scanConfig
Definition: scanwizard.h:102
QString inversion(void) const
Definition: panedvbs.h:53
QString guard_interval(void) const
Definition: panedvbt.h:62
void addTargetedChild(const QString &value, StandardSetting *setting)
bool GetFollowNIT(void) const
Definition: panesingle.h:57
QString coderate_lp(void) const
Definition: panedvbt.h:59
QString symbolrate(void) const
Definition: panedvbs2.h:31
ServiceRequirements GetServiceRequirements(void) const
QString coderate_hp(void) const
Definition: panedvbt.h:60
QString polarity(void) const
Definition: panedvbs.h:55
void setModulation(QString modulation)
Definition: panedvbc.h:60
void SetSourceID(uint sourceid)
QString constellation(void) const
Definition: panedvbt2.h:60
DTVCodeRate m_lpCodeRate
Low Priority FEC rate.
Definition: dtvmultiplex.h:99
InputSelector * m_input
Definition: scanwizard.h:100
PaneAnalog * m_paneAnalog
ScanNetwork * m_network
QString fec(void) const
Definition: panedvbs2.h:33
static QString GetScanableInputTypes(void)
Definition: cardutil.cpp:58
QString toString() const
virtual bool FillFromDB(DTVTunerType type, uint mplexid)
void SetSourceID(uint sourceid)
Definition: panesingle.h:60
DTVModulationSystem m_modSys
Modulation system.
Definition: dtvmultiplex.h:106
uint64_t m_frequency
Definition: dtvmultiplex.h:94
void valueChanged(const QString &)