MythTV master
videosource.h
Go to the documentation of this file.
1#ifndef VIDEOSOURCE_H
2#define VIDEOSOURCE_H
3
4#include <utility>
5#include <vector>
6
7#include <QtGlobal>
8#if QT_VERSION >= QT_VERSION_CHECK(6,5,0)
9#include <QtSystemDetection>
10#endif
11
12// MythTV headers
13#include "libmythbase/mythconfig.h"
15#include "libmythbase/mthread.h"
16
17#include "mythtvexp.h"
18
19class SignalTimeout;
20class ChannelTimeout;
21class UseEIT;
22class VideoSource;
23class CaptureCard;
24class VBIDevice;
25class CardInput;
26class CardID;
27class InputName;
28class SourceID;
29class DeviceTree;
30class DiSEqCDevTree;
32class InputGroup;
33
34static inline bool is_grabber_external(const QString &grabber)
35{
36 return !(grabber == "eitonly" ||
37 grabber == "/bin/true");
38}
39
40static inline bool is_grabber_labs([[maybe_unused]] const QString &grabber)
41{
42 return false;
43}
44
46{
47 public:
49 const VideoSource &_parent,
50 const QString &name) :
51 SimpleDBStorage(_user, "videosource", name), m_parent(_parent)
52 {
53 }
54
55 protected:
56 QString GetSetClause(MSqlBindings &bindings) const override; // SimpleDBStorage
57 QString GetWhereClause(MSqlBindings &bindings) const override; // SimpleDBStorage
58
60};
61
63{
64 Q_OBJECT
65
66 public:
67 VideoSourceSelector(uint _initial_sourceid,
68 QString _card_types,
69 bool _must_have_mplexid);
70
71 void Load(void) override; // StandardSetting
72
73 uint GetSourceID(void) const { return getValue().toUInt(); }
74
75 private:
77 QString m_cardTypes;
79};
80
82{
83 Q_OBJECT
84
85 public:
86 explicit VideoSourceShow(uint _initial_sourceid);
87
88 void Load(void) override; // StandardSetting
89
90 uint GetSourceID(void) const { return getValue().toUInt(); }
91
92 private:
94};
95
98{
99 Q_OBJECT
100public:
101 explicit FreqTableSelector(const VideoSource& parent);
102 ~FreqTableSelector() override;
103protected:
104 QString m_freq;
105};
106
108{
109 public:
110 explicit TransFreqTableSelector(uint sourceid);
111
112 void Load(void) override; // StandardSetting
113
114 void Save(void) override; // StandardSetting
115 virtual void Save(const QString& /*destination*/) { Save(); }
116
117 void SetSourceID(uint sourceid);
118
119 private:
122};
123
125{
126 Q_OBJECT
127
128 public:
129 XMLTV_generic_config(const VideoSource& _parent, const QString& _grabber,
130 StandardSetting *_setting);
131
132 void Save(void) override; // StandardSetting
133 virtual void Save(const QString& /*destination*/) { Save(); }
134
135 public slots:
136 void RunConfig(void);
137
138 protected:
140 QString m_grabber;
141 QStringList m_grabberArgs;
142};
143
145{
146public:
147 EITOnly_config(const VideoSource& _parent, StandardSetting *_setting);
148
149 void Save(void) override; // StandardSetting
150 virtual void Save(const QString& /*destination*/) { Save(); }
151
152protected:
153 UseEIT *m_useEit {nullptr};
154};
155
157{
158public:
159 explicit NoGrabber_config(const VideoSource& _parent);
160
161 void Save(void) override; // StandardSetting
162 virtual void Save(const QString& /*destination*/) { Save(); }
163
164protected:
165 UseEIT *m_useEit {nullptr};
166};
167
169public:
170 IdSetting(const QString &table, const QString &setting):
171 AutoIncrementSetting(table, setting)
172 {
173 setVisible(false);
174 }
175
176 int intValue() { return getValue().toInt(); }
177 void setValue(int value) override // StandardSetting
178 { setValue(QString::number(value)); }
180};
181
182class VideoSource : public GroupSetting {
183 Q_OBJECT
184
185 public:
186 VideoSource();
187
188 int getSourceID(void) const { return m_id->intValue(); };
189
190 void loadByID(int id);
191
192 static void fillSelections(GroupSetting* setting);
193 static void fillSelections(MythUIComboBoxSetting* setting);
194 static QString idToName(int id);
195
196 QString getSourceName(void) const { return m_name->getValue(); };
197
198 void Load(void) override // StandardSetting
199 {
201 }
202
203 void Save(void) override // StandardSetting
204 {
205 if (m_name)
207 }
208 bool canDelete(void) override; // GroupSetting
209 void deleteEntry(void) override; // GroupSetting
210
211 private:
212 class ID: public IdSetting
213 {
214 public:
215 ID() : IdSetting("videosource", "sourceid")
216 {
217 };
218 };
219
221 {
222 public:
223 explicit Name(const VideoSource &parent) :
224 MythUITextEditSetting(new VideoSourceDBStorage(this, parent, "name"))
225 {
226 setLabel(QObject::tr("Video source name"));
227 }
228
229 ~Name() override
230 {
231 delete GetStorage();
232 }
233 };
234
235private:
236 ID *m_id {nullptr};
237 Name *m_name {nullptr};
238};
239
241{
242 public:
244 const CaptureCard &_parent,
245 const QString &_name) :
246 SimpleDBStorage(_user, "capturecard", _name), m_parent(_parent)
247 {
248 }
249
250
251protected:
252 int getCardID(void) const;
253 QString GetSetClause(MSqlBindings &bindings) const override; // SimpleDBStorage
254 QString GetWhereClause(MSqlBindings &bindings) const override; // SimpleDBStorage
255private:
257};
258
260{
261 public:
263 bool rw,
264 const QString &setting) :
265 MythUIComboBoxSetting(new CaptureCardDBStorage(this, parent, setting),
266 rw)
267 {
268 }
269
271 {
272 delete GetStorage();
273 }
274};
275
277{
278 Q_OBJECT
279 public:
280 explicit TunerCardAudioInput(const CaptureCard &parent,
281 QString dev = QString(),
282 QString type = QString());
283
284 public slots:
285 int fillSelections(const QString &device);
286
287 private:
290};
291
293{
294 Q_OBJECT
295 public:
296 explicit EmptyAudioDevice(const CaptureCard &parent) :
298 "audiodevice"))
299 {
300 setVisible(false);
301 }
302
304 {
305 delete GetStorage();
306 }
307
308 void Save(void) override // StandardSetting
309 {
311 setValue("");
312 GetStorage()->Save();
313 }
314 void Save(const QString& destination)
315 {
317 setValue("");
318 GetStorage()->Save(destination);
319 }
320};
321
323{
324 Q_OBJECT
325
326 public:
327 explicit EmptyVBIDevice(const CaptureCard &parent) :
328 MythUITextEditSetting(new CaptureCardDBStorage(this, parent, "vbidevice"))
329 {
330 setVisible(false);
331 };
332
334 {
335 delete GetStorage();
336 }
337
338 void Save(void) override // StandardSetting
339 {
341 setValue("");
342 GetStorage()->Save();
343 }
344 void Save(const QString& destination)
345 {
347 setValue("");
348 GetStorage()->Save(destination);
349 }
350};
351
353{
354public:
355 explicit CardType(const CaptureCard& parent);
356 static void fillSelections(MythUIComboBoxSetting* setting);
357};
358
359#if CONFIG_HDHOMERUN
360
361class UseHDHomeRunDevice;
362class HDHomeRunDevice
363{
364 public:
365 QString m_deviceId;
366 QString m_model;
367 QString m_cardIp;
368 UseHDHomeRunDevice *m_checkbox {nullptr};
369};
370
371using HDHomeRunDeviceList = QMap<QString, HDHomeRunDevice>;
372
373class HDHomeRunDeviceID;
374class HDHomeRunConfigurationGroup : public GroupSetting
375{
376 Q_OBJECT
377
378 friend class HDHomeRunExtra;
379
380 public:
381 HDHomeRunConfigurationGroup(CaptureCard &parent, CardType &cardtype);
382 void SetDeviceCheckBoxes(const QString& devices);
383 QString GetDeviceCheckBoxes(void);
384
385 private:
386 void FillDeviceList(void);
387
388 private:
390 HDHomeRunDeviceID *m_deviceId {nullptr};
391 HDHomeRunDeviceList m_deviceList;
392};
393
394class HDHomeRunDeviceID : public MythUITextEditSetting
395{
396 Q_OBJECT
397
398 public:
399 HDHomeRunDeviceID(const CaptureCard &parent,
400 HDHomeRunConfigurationGroup &_group);
401 ~HDHomeRunDeviceID() override;
402 void Load(void) override; // StandardSetting
403 void Save(void) override; // StandardSetting
404
405 private:
406 HDHomeRunConfigurationGroup &m_group;
407};
408#endif // CONFIG_HDHOMERUN
409
410#if CONFIG_SATIP
411
412class SatIPDevice
413{
414 public:
415 QString m_mythDeviceId;
416 QString m_deviceId;
417 QString m_friendlyName;
418 QString m_cardIP;
419 QString m_tunerNo;
420 QString m_tunerType;
421 bool m_inUse {false};
422 bool m_discovered {false};
423};
424
425using SatIPDeviceList = QMap<QString, SatIPDevice>;
426
427class SatIPDeviceIDList;
428class SatIPDeviceID;
429class SatIPDeviceAttribute;
430class SatIPConfigurationGroup : public GroupSetting
431{
432 Q_OBJECT
433
434 public:
435 SatIPConfigurationGroup(CaptureCard &parent, CardType &cardtype);
436
437 private:
438 void FillDeviceList(void);
439
440 private:
442 SatIPDeviceIDList *m_deviceIdList {nullptr};
443 SatIPDeviceID *m_deviceId {nullptr};
444 SatIPDeviceAttribute *m_friendlyName {nullptr};
445 SatIPDeviceAttribute *m_tunerType {nullptr};
446 SatIPDeviceAttribute *m_tunerIndex {nullptr};
447 SatIPDeviceList m_deviceList;
448};
449
450class SatIPDeviceIDList : public TransMythUIComboBoxSetting
451{
452 Q_OBJECT
453
454 public:
455 SatIPDeviceIDList(SatIPDeviceID *deviceId,
456 SatIPDeviceAttribute *friendlyName,
457 SatIPDeviceAttribute *tunerType,
458 SatIPDeviceAttribute *tunerIndex,
459 SatIPDeviceList *deviceList,
460 const CaptureCard &parent);
461
462 void fillSelections(const QString &current);
463
464 void Load(void) override; // StandardSetting
465
466 public slots:
467 void UpdateDevices(const QString& /*v*/);
468
469 signals:
470 void NewTuner(const QString&);
471
472 private:
473 SatIPDeviceID *m_deviceId;
474 SatIPDeviceAttribute *m_friendlyName;
475 SatIPDeviceAttribute *m_tunerType;
476 SatIPDeviceAttribute *m_tunerIndex;
477 SatIPDeviceList *m_deviceList;
478 const CaptureCard &m_parent;
479};
480
481class SatIPDeviceID : public MythUITextEditSetting
482{
483 Q_OBJECT
484
485 public:
486 explicit SatIPDeviceID(const CaptureCard &parent);
487 ~SatIPDeviceID() override;
488
489 void Load(void) override; // StandardSetting
490
491 public slots:
492 void SetTuner(const QString& /*tuner*/);
493
494 private:
495 const CaptureCard &m_parent;
496};
497
498class SatIPDeviceAttribute : public GroupSetting
499{
500 Q_OBJECT
501
502 public:
503 SatIPDeviceAttribute(const QString& label,
504 const QString& helpText);
505};
506#endif // CONFIG_SATIP
507
509{
510 public:
512 QString m_deviceId;
513 QString m_desc;
514 QString m_cardIp;
515 QString m_tunerNo;
516 QString m_tunerType;
517 bool m_inUse {false};
518 bool m_discovered {false};
519};
520
521using VBoxDeviceList = QMap<QString, VBoxDevice>;
522
523class VBoxDeviceIDList;
524class VBoxDeviceID;
525class VBoxIP;
526class VBoxTunerIndex;
528{
529 Q_OBJECT
530
531 public:
532 VBoxConfigurationGroup(CaptureCard &parent, CardType &cardtype);
533
534 private:
535 void FillDeviceList(void);
536
537 private:
542 VBoxIP *m_cardIp {nullptr};
545};
546
548{
549 Q_OBJECT
550
551 public:
552 V4LConfigurationGroup(CaptureCard &parent, CardType &cardtype, const QString &inputtype);
553
554 public slots:
555 void probeCard(const QString &device);
556
557 private:
560 VBIDevice *m_vbiDev {nullptr};
561};
562
563class VideoDevice;
564class VBIDevice;
565
567{
568 Q_OBJECT
569
570 public:
571 MPEGConfigurationGroup(CaptureCard &parent, CardType &cardtype);
572
573 public slots:
574 void probeCard(const QString &device);
575
576 private:
581};
582
584{
585 Q_OBJECT
586
587 public:
588 HDPVRConfigurationGroup(CaptureCard &parent, CardType &cardtype);
589
590 public slots:
591 void probeCard(const QString &device);
592
593 private:
597};
598
599class ASIDevice;
600
602{
603 Q_OBJECT
604
605 public:
606 V4L2encGroup(CaptureCard& parent, CardType& cardType);
607
608 private:
612
614
615 protected slots:
616 void probeCard(const QString &device);
617};
618
620{
621 Q_OBJECT
622
623 public:
624 ASIConfigurationGroup(CaptureCard &parent, CardType &cardType);
625
626 public slots:
627 void probeCard(const QString &device);
628
629 private:
631 ASIDevice *m_device {nullptr};
633};
634
636{
637 Q_OBJECT
638
639 public:
641
642 public slots:
643 void probeCard(const QString &device);
644
645 private:
649};
650
652{
653 Q_OBJECT
654
655 public:
656 DemoConfigurationGroup(CaptureCard &parent, CardType &cardtype);
657
658 public slots:
659 void probeCard(const QString &device);
660
661 private:
665};
666
667#ifndef Q_OS_WINDOWS
668class ExternalConfigurationGroup: public GroupSetting
669{
670 Q_OBJECT
671
672 public:
673 ExternalConfigurationGroup(CaptureCard &parent, CardType &cardtype);
674
675 public slots:
676 void probeApp(const QString & path);
677
678 private:
680 GroupSetting *m_info {nullptr};
681};
682#endif
683
684class DVBCardNum;
685class DVBCardName;
686class DVBCardType;
687class DVBTuningDelay;
688
690{
691 Q_OBJECT
692
693 friend class DVBExtra;
694
695 public:
696 DVBConfigurationGroup(CaptureCard& a_parent, CardType& cardType);
697 ~DVBConfigurationGroup() override;
698
699 void Load(void) override; // StandardSetting
700
701 void Save(void) override; // StandardSetting
702
703 public slots:
704 void probeCard(const QString& videodevice);
705 void reloadDiseqcTree(const QString &device);
706
707 private:
709
718};
719
720class FirewireGUID;
722{
723 Q_OBJECT
724
725 public:
726 FirewireModel(const CaptureCard &parent, const FirewireGUID *_guid);
727
728 public slots:
729 void SetGUID(const QString &_guid);
730
731 private:
732 const FirewireGUID *m_guid {nullptr};
733};
734
736{
737 Q_OBJECT
738
739 public:
740 explicit FirewireDesc(const FirewireGUID *_guid) :
741 m_guid(_guid) { }
742
743 public slots:
744 void SetGUID(const QString &_guid);
745
746 private:
747 const FirewireGUID *m_guid {nullptr};
748};
749
751{
752 Q_OBJECT
753public:
754 explicit CaptureCardGroup(CaptureCard& parent);
755};
756
758{
759 Q_OBJECT
760public:
761 explicit CaptureCard(bool use_card_group = true);
762
763 int getCardID(void) const { return m_id->intValue(); }
764 QString GetRawCardType(void) const;
765
766 void loadByID(int id);
767
768 static void fillSelections(GroupSetting* setting);
769
770 void reload(void);
771
772 void Save(void) override; // StandardSetting
773
774 bool canDelete(void) override; // GroupSetting
775 void deleteEntry(void) override; // GroupSetting
776
777private:
778
779 class ID: public IdSetting {
780 public:
781 ID():
782 IdSetting("capturecard", "cardid")
783 {
784 }
785 };
786
788 {
789 public:
790 explicit Hostname(const CaptureCard &parent);
791 ~Hostname() override;
792 void edit(MythScreenType */*screen*/) override {} // StandardSetting
793 void resultEdit(DialogCompletionEvent */*dce*/) override {} // StandardSetting
794 };
795
796private:
797 ID *m_id {nullptr};
798};
799
801{
802 public:
804 const CardInput &_parent,
805 const QString& _name) :
806 SimpleDBStorage(_user, "capturecard", _name), m_parent(_parent)
807 {
808 }
809
810 int getInputID(void) const;
811
812 protected:
814
815 QString GetSetClause(MSqlBindings &bindings) const override; // SimpleDBStorage
816 QString GetWhereClause(MSqlBindings &bindings) const override; // SimpleDBStorage
817
818 private:
820};
821
823{
824 Q_OBJECT
825
826 public:
827 CaptureCardButton(const QString &label, QString value)
828 : ButtonStandardSetting(label),
829 m_value(std::move(value))
830 {
831 }
832
833 void edit(MythScreenType *screen) override; // ButtonStandardSetting
834
835 signals:
836 void Clicked(const QString &choice);
837
838 private:
839 QString m_value;
840};
841
842
844{
845 Q_OBJECT
846
847 public:
849
850 void Load(void) override; // StandardSetting
851
852 using CCESlot = void (CaptureCardEditor::*)(void);
853 using CCESlotConst = void (CaptureCardEditor::*)(void) const;
854 void AddSelection(const QString &label, CCESlot slot);
855 void AddSelection(const QString &label, CCESlotConst slot);
856
857 public slots:
858 void ShowDeleteAllCaptureCardsDialog(void) const;
859 void ShowDeleteAllCaptureCardsDialogOnHost(void) const;
860 void DeleteAllCaptureCards(bool doDelete);
861 void DeleteAllCaptureCardsOnHost(bool doDelete);
862 void AddNewCard(void);
863};
864
866{
867 Q_OBJECT
868
869 public:
871
872 static bool cardTypesInclude(int SourceID,
873 const QString& thecardtype);
874
875 void Load(void) override; // StandardSetting
876 using VSESlot = void (VideoSourceEditor::*)(void);
877 using VSESlotConst = void (VideoSourceEditor::*)(void) const;
878 void AddSelection(const QString &label, VSESlot slot);
879 void AddSelection(const QString &label, VSESlotConst slot);
880
881 public slots:
882 void NewSource(void);
883 void ShowDeleteAllSourcesDialog(void) const;
884 void DeleteAllSources(bool doDelete);
885};
886
888{
889 Q_OBJECT
890
891 public:
893
894 void Load(void) override; // StandardSetting
895
896 private:
897 std::vector<CardInput*> m_cardInputs;
898};
899
901{
902 Q_OBJECT
903 public:
904 explicit StartingChannel(const CardInput &parent) :
905 MythUIComboBoxSetting(new CardInputDBStorage(this, parent, "startchan"),
906 false)
907 {
908 setLabel(QObject::tr("Starting channel"));
909 setHelpText(QObject::tr("This channel is shown when 'Watch TV' is selected on the main menu. "
910 "It is updated on every Live TV channel change. "
911 "When the value is not valid a suitable default will be chosen."));
912 }
913
915 {
916 delete GetStorage();
917 }
918 static void fillSelections(void) {;}
919 public slots:
920 void SetSourceID(const QString &sourceid);
921};
922
924{
925 Q_OBJECT
926 public:
927 CardInput(const QString & cardtype, const QString & device,
928 int cardid);
929 ~CardInput() override;
930
931 int getInputID(void) const { return m_id->intValue(); };
932
933 void loadByID(int id);
934 void loadByInput(int cardid, const QString& inputname);
935 QString getSourceName(void) const;
936
937 void Save(void) override; // StandardSetting
938
939 public slots:
940 void CreateNewInputGroup();
941 void channelScanner();
942 void sourceFetch();
943 void SetSourceID(const QString &sourceid);
944 void CreateNewInputGroupSlot(const QString &name);
945
946 private:
947 class ID: public IdSetting
948 {
949 public:
950 ID() : IdSetting("capturecard", "cardid")
951 {
952 }
953 };
954
955 ID *m_id {nullptr};
966};
967
969class VBoxDeviceID;
970class VBoxTunerIndex;
971
973{
974 Q_OBJECT
975
976 public:
977 VBoxIP();
978
979 void setEnabled(bool e) override; // StandardSetting
980 void SetOldValue(const QString &s)
981 { m_oldValue = s; };
982
983 signals:
984 void NewIP(const QString&);
985
986 public slots:
987 void UpdateDevices(const QString &v);
988
989 private:
990 QString m_oldValue;
991};
992
994{
995 Q_OBJECT
996
997 public:
999
1000 void setEnabled(bool e) override; // StandardSetting
1001 void SetOldValue(const QString &s)
1002 { m_oldValue = s; };
1003
1004 signals:
1005 void NewTuner(const QString&);
1006
1007 public slots:
1008 void UpdateDevices(const QString &v);
1009
1010 private:
1011 QString m_oldValue;
1012};
1013
1015{
1016 Q_OBJECT
1017
1018 public:
1020 StandardSetting *desc,
1021 VBoxIP *cardip,
1022 VBoxTunerIndex *cardtuner,
1023 VBoxDeviceList *devicelist,
1024 const CaptureCard &parent);
1025
1026 void fillSelections(const QString &current);
1027
1028 void Load(void) override; // StandardSetting
1029
1030 public slots:
1031 void UpdateDevices(const QString &v);
1032
1033 private:
1040
1041 QString m_oldValue;
1042};
1043
1045{
1046 Q_OBJECT
1047
1048 public:
1049 explicit VBoxDeviceID(const CaptureCard &parent);
1050 ~VBoxDeviceID() override;
1051
1052 void Load(void) override; // StandardSetting
1053
1054 public slots:
1055 void SetIP(const QString &ip);
1056 void SetTuner(const QString &tuner);
1057 void SetOverrideDeviceID(const QString &deviceid);
1058
1059 private:
1060 QString m_ip;
1061 QString m_tuner;
1063};
1064
1065#if CONFIG_CETON
1066class CetonSetting : public TransTextEditSetting
1067{
1068 Q_OBJECT
1069
1070 public:
1071 CetonSetting(QString label, const QString& helptext);
1072 static void CetonConfigurationGroup(CaptureCard& parent, CardType& cardtype);
1073
1074 signals:
1075 void NewValue(const QString&);
1076
1077 public slots:
1078 void UpdateDevices(const QString &v);
1079 void LoadValue(const QString &value);
1080};
1081
1082class CetonDeviceID : public MythUITextEditSetting
1083{
1084 Q_OBJECT
1085
1086 public:
1087 explicit CetonDeviceID(const CaptureCard &parent);
1088 ~CetonDeviceID() override;
1089
1090 void Load(void) override; // StandardSetting
1091 void UpdateValues();
1092
1093 signals:
1094 void LoadedIP(const QString&);
1095 void LoadedCard(const QString&);
1096 void LoadedTuner(const QString&);
1097
1098 public slots:
1099 void SetIP(const QString &ip);
1100 void SetTuner(const QString &tuner);
1101
1102 private:
1103 QString m_ip;
1104 QString m_card;
1105 QString m_tuner;
1106 const CaptureCard &m_parent;
1107};
1108#endif // CONFIG_CETON
1109
1110#endif
TransTextEditSetting * m_cardInfo
Definition: videosource.h:632
void probeCard(const QString &device)
ASIDevice * m_device
Definition: videosource.h:631
ASIConfigurationGroup(CaptureCard &parent, CardType &cardType)
CaptureCard & m_parent
Definition: videosource.h:630
CaptureCardButton(const QString &label, QString value)
Definition: videosource.h:827
void Clicked(const QString &choice)
void edit(MythScreenType *screen) override
~CaptureCardComboBoxSetting() override
Definition: videosource.h:270
CaptureCardComboBoxSetting(const CaptureCard &parent, bool rw, const QString &setting)
Definition: videosource.h:262
CaptureCardDBStorage(StorageUser *_user, const CaptureCard &_parent, const QString &_name)
Definition: videosource.h:243
QString GetSetClause(MSqlBindings &bindings) const override
const CaptureCard & m_parent
Definition: videosource.h:256
QString GetWhereClause(MSqlBindings &bindings) const override
int getCardID(void) const
void(CaptureCardEditor::*)(void) const CCESlotConst
Definition: videosource.h:853
void(CaptureCardEditor::*)(void) CCESlot
Definition: videosource.h:852
CaptureCardGroup(CaptureCard &parent)
void resultEdit(DialogCompletionEvent *) override
Definition: videosource.h:793
void edit(MythScreenType *) override
Definition: videosource.h:792
Hostname(const CaptureCard &parent)
void Save(void) override
void deleteEntry(void) override
QString GetRawCardType(void) const
bool canDelete(void) override
int getCardID(void) const
Definition: videosource.h:763
void loadByID(int id)
CaptureCard(bool use_card_group=true)
void reload(void)
static void fillSelections(GroupSetting *setting)
const CardInput & m_parent
Definition: videosource.h:819
int getInputID(void) const
QString GetWhereClause(MSqlBindings &bindings) const override
CardInputDBStorage(StorageUser *_user, const CardInput &_parent, const QString &_name)
Definition: videosource.h:803
QString GetSetClause(MSqlBindings &bindings) const override
std::vector< CardInput * > m_cardInputs
Definition: videosource.h:897
void SetSourceID(const QString &sourceid)
SourceID * m_sourceId
Definition: videosource.h:957
void CreateNewInputGroup()
void sourceFetch()
void Save(void) override
InputName * m_inputName
Definition: videosource.h:956
CardInput(const QString &cardtype, const QString &device, int cardid)
int getInputID(void) const
Definition: videosource.h:931
MythUISpinBoxSetting * m_instanceCount
Definition: videosource.h:964
QString getSourceName(void) const
void loadByID(int id)
MythUICheckBoxSetting * m_schedGroup
Definition: videosource.h:965
void loadByInput(int cardid, const QString &inputname)
~CardInput() override
StartingChannel * m_startChan
Definition: videosource.h:958
DiSEqCDevSettings * m_externalInputSettings
Definition: videosource.h:961
ButtonStandardSetting * m_srcFetch
Definition: videosource.h:960
ButtonStandardSetting * m_scan
Definition: videosource.h:959
InputGroup * m_inputGrp0
Definition: videosource.h:962
void channelScanner()
void CreateNewInputGroupSlot(const QString &name)
InputGroup * m_inputGrp1
Definition: videosource.h:963
static void fillSelections(MythUIComboBoxSetting *setting)
CardType(const CaptureCard &parent)
void reloadDiseqcTree(const QString &device)
friend class DVBExtra
Definition: videosource.h:693
DiSEqCDevTree * m_diseqcTree
Definition: videosource.h:716
DVBCardType * m_cardType
Definition: videosource.h:712
DVBCardName * m_cardName
Definition: videosource.h:711
CaptureCard & m_parent
Definition: videosource.h:708
DVBConfigurationGroup(CaptureCard &a_parent, CardType &cardType)
~DVBConfigurationGroup() override
SignalTimeout * m_signalTimeout
Definition: videosource.h:713
ChannelTimeout * m_channelTimeout
Definition: videosource.h:714
DeviceTree * m_diseqcBtn
Definition: videosource.h:717
void Load(void) override
void Save(void) override
void probeCard(const QString &videodevice)
DVBCardNum * m_cardNum
Definition: videosource.h:710
DVBTuningDelay * m_tuningDelay
Definition: videosource.h:715
GroupSetting * m_info
Definition: videosource.h:663
GroupSetting * m_size
Definition: videosource.h:664
DemoConfigurationGroup(CaptureCard &parent, CardType &cardtype)
void probeCard(const QString &device)
CaptureCard & m_parent
Definition: videosource.h:662
DVB-S device settings class.
Definition: diseqc.h:37
DVB-S device tree class.
Definition: diseqc.h:75
Event dispatched from MythUI modal dialogs to a listening class containing a result of some form.
Definition: mythdialogbox.h:40
UseEIT * m_useEit
Definition: videosource.h:153
virtual void Save(const QString &)
Definition: videosource.h:150
void Save(void) override
EITOnly_config(const VideoSource &_parent, StandardSetting *_setting)
void Save(void) override
Definition: videosource.h:308
void Save(const QString &destination)
Definition: videosource.h:314
EmptyAudioDevice(const CaptureCard &parent)
Definition: videosource.h:296
~EmptyAudioDevice() override
Definition: videosource.h:303
void Save(const QString &destination)
Definition: videosource.h:344
~EmptyVBIDevice() override
Definition: videosource.h:333
EmptyVBIDevice(const CaptureCard &parent)
Definition: videosource.h:327
void Save(void) override
Definition: videosource.h:338
FirewireDesc(const FirewireGUID *_guid)
Definition: videosource.h:740
const FirewireGUID * m_guid
Definition: videosource.h:747
void SetGUID(const QString &_guid)
const FirewireGUID * m_guid
Definition: videosource.h:732
FirewireModel(const CaptureCard &parent, const FirewireGUID *_guid)
void SetGUID(const QString &_guid)
FreqTableSelector(const VideoSource &parent)
~FreqTableSelector() override
void probeCard(const QString &device)
CaptureCard & m_parent
Definition: videosource.h:594
GroupSetting * m_cardInfo
Definition: videosource.h:595
TunerCardAudioInput * m_audioInput
Definition: videosource.h:596
HDPVRConfigurationGroup(CaptureCard &parent, CardType &cardtype)
IdSetting(const QString &table, const QString &setting)
Definition: videosource.h:170
int intValue()
Definition: videosource.h:176
void setValue(int value) override
Definition: videosource.h:177
GroupSetting * m_info
Definition: videosource.h:647
CaptureCard & m_parent
Definition: videosource.h:646
ImportConfigurationGroup(CaptureCard &parent, CardType &cardtype)
void probeCard(const QString &device)
GroupSetting * m_size
Definition: videosource.h:648
VBIDevice * m_vbiDevice
Definition: videosource.h:579
void probeCard(const QString &device)
MPEGConfigurationGroup(CaptureCard &parent, CardType &cardtype)
GroupSetting * m_cardInfo
Definition: videosource.h:580
CaptureCard & m_parent
Definition: videosource.h:577
VideoDevice * m_device
Definition: videosource.h:578
Screen in which all other widgets are contained and rendered.
UseEIT * m_useEit
Definition: videosource.h:165
void Save(void) override
virtual void Save(const QString &)
Definition: videosource.h:162
NoGrabber_config(const VideoSource &_parent)
virtual void Save(void)
StandardSetting * m_parent
virtual void Load(void)
virtual void setHelpText(const QString &str)
void setVisible(bool visible)
virtual void setValue(const QString &newValue)
Storage * GetStorage(void) const
virtual QString getValue(void) const
virtual void setLabel(QString str)
void SetSourceID(const QString &sourceid)
StartingChannel(const CardInput &parent)
Definition: videosource.h:904
~StartingChannel() override
Definition: videosource.h:914
static void fillSelections(void)
Definition: videosource.h:918
virtual void SetSaveRequired(void)
Definition: mythstorage.h:33
virtual void Save(void)=0
virtual void Save(const QString &)
Definition: videosource.h:115
void SetSourceID(uint sourceid)
void Save(void) override
void Load(void) override
TransFreqTableSelector(uint sourceid)
int fillSelections(const QString &device)
TunerCardAudioInput(const CaptureCard &parent, QString dev=QString(), QString type=QString())
VideoDevice * m_device
Definition: videosource.h:611
CaptureCard & m_parent
Definition: videosource.h:609
GroupSetting * m_cardInfo
Definition: videosource.h:610
void probeCard(const QString &device)
QString m_driverName
Definition: videosource.h:613
V4L2encGroup(CaptureCard &parent, CardType &cardType)
V4LConfigurationGroup(CaptureCard &parent, CardType &cardtype, const QString &inputtype)
void probeCard(const QString &device)
VBIDevice * m_vbiDev
Definition: videosource.h:560
GroupSetting * m_cardInfo
Definition: videosource.h:559
CaptureCard & m_parent
Definition: videosource.h:558
VBoxDeviceList m_deviceList
Definition: videosource.h:544
StandardSetting * m_desc
Definition: videosource.h:539
VBoxDeviceID * m_deviceId
Definition: videosource.h:541
VBoxDeviceIDList * m_deviceIdList
Definition: videosource.h:540
VBoxTunerIndex * m_cardTuner
Definition: videosource.h:543
VBoxConfigurationGroup(CaptureCard &parent, CardType &cardtype)
CaptureCard & m_parent
Definition: videosource.h:538
void fillSelections(const QString &current)
Adds all available device-tuner combinations to list.
VBoxDeviceID * m_deviceId
Definition: videosource.h:1034
const CaptureCard & m_parent
Definition: videosource.h:1039
VBoxDeviceList * m_deviceList
Definition: videosource.h:1038
StandardSetting * m_desc
Definition: videosource.h:1035
VBoxTunerIndex * m_cardTuner
Definition: videosource.h:1037
void Load(void) override
void UpdateDevices(const QString &v)
VBoxDeviceIDList(VBoxDeviceID *deviceid, StandardSetting *desc, VBoxIP *cardip, VBoxTunerIndex *cardtuner, VBoxDeviceList *devicelist, const CaptureCard &parent)
void SetTuner(const QString &tuner)
void Load(void) override
void SetOverrideDeviceID(const QString &deviceid)
~VBoxDeviceID() override
VBoxDeviceID(const CaptureCard &parent)
void SetIP(const QString &ip)
QString m_tuner
Definition: videosource.h:1061
QString m_ip
Definition: videosource.h:1060
QString m_overrideDeviceId
Definition: videosource.h:1062
bool m_inUse
Definition: videosource.h:517
QString m_cardIp
Definition: videosource.h:514
QString m_deviceId
Definition: videosource.h:512
QString m_mythDeviceId
Definition: videosource.h:511
QString m_tunerNo
Definition: videosource.h:515
QString m_tunerType
Definition: videosource.h:516
QString m_desc
Definition: videosource.h:513
bool m_discovered
Definition: videosource.h:518
void NewIP(const QString &)
void SetOldValue(const QString &s)
Definition: videosource.h:980
void setEnabled(bool e) override
void UpdateDevices(const QString &v)
QString m_oldValue
Definition: videosource.h:990
QString m_oldValue
Definition: videosource.h:1011
void UpdateDevices(const QString &v)
void setEnabled(bool e) override
void NewTuner(const QString &)
void SetOldValue(const QString &s)
Definition: videosource.h:1001
VideoSourceDBStorage(StorageUser *_user, const VideoSource &_parent, const QString &name)
Definition: videosource.h:48
QString GetWhereClause(MSqlBindings &bindings) const override
const VideoSource & m_parent
Definition: videosource.h:59
QString GetSetClause(MSqlBindings &bindings) const override
void(VideoSourceEditor::*)(void) VSESlot
Definition: videosource.h:876
void(VideoSourceEditor::*)(void) const VSESlotConst
Definition: videosource.h:877
uint GetSourceID(void) const
Definition: videosource.h:73
VideoSourceSelector(uint _initial_sourceid, QString _card_types, bool _must_have_mplexid)
Definition: videosource.cpp:69
void Load(void) override
Definition: videosource.cpp:85
void Load(void) override
VideoSourceShow(uint _initial_sourceid)
uint GetSourceID(void) const
Definition: videosource.h:90
uint m_initialSourceId
Definition: videosource.h:93
Name(const VideoSource &parent)
Definition: videosource.h:223
~Name() override
Definition: videosource.h:229
static void fillSelections(GroupSetting *setting)
int getSourceID(void) const
Definition: videosource.h:188
Name * m_name
Definition: videosource.h:237
QString getSourceName(void) const
Definition: videosource.h:196
void Save(void) override
Definition: videosource.h:203
void Load(void) override
Definition: videosource.h:198
bool canDelete(void) override
static QString idToName(int id)
void deleteEntry(void) override
void loadByID(int id)
QStringList m_grabberArgs
Definition: videosource.h:141
const VideoSource & m_parent
Definition: videosource.h:139
void Save(void) override
XMLTV_generic_config(const VideoSource &_parent, const QString &_grabber, StandardSetting *_setting)
virtual void Save(const QString &)
Definition: videosource.h:133
unsigned int uint
Definition: compat.h:60
QMap< QString, QVariant > MSqlBindings
typedef for a map of string -> string bindings for generic queries.
Definition: mythdbcon.h:100
#define MTV_PUBLIC
Definition: mythtvexp.h:8
QDateTime current(bool stripped)
Returns current Date and Time in UTC.
Definition: mythdate.cpp:15
VERBOSE_PREAMBLE false
Definition: verbosedefs.h:80
QMap< QString, VBoxDevice > VBoxDeviceList
Definition: videosource.h:521
static bool is_grabber_labs(const QString &grabber)
Definition: videosource.h:40
static bool is_grabber_external(const QString &grabber)
Definition: videosource.h:34