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,0,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:
598};
599
600class ASIDevice;
601
603{
604 Q_OBJECT
605
606 public:
607 V4L2encGroup(CaptureCard& parent, CardType& cardType);
608
609 private:
613
615
616 protected slots:
617 void probeCard(const QString &device);
618};
619
621{
622 Q_OBJECT
623
624 public:
625 ASIConfigurationGroup(CaptureCard &parent, CardType &cardType);
626
627 public slots:
628 void probeCard(const QString &device);
629
630 private:
632 ASIDevice *m_device {nullptr};
634};
635
637{
638 Q_OBJECT
639
640 public:
642
643 public slots:
644 void probeCard(const QString &device);
645
646 private:
650};
651
653{
654 Q_OBJECT
655
656 public:
657 DemoConfigurationGroup(CaptureCard &parent, CardType &cardtype);
658
659 public slots:
660 void probeCard(const QString &device);
661
662 private:
666};
667
668#ifndef Q_OS_WINDOWS
669class ExternalConfigurationGroup: public GroupSetting
670{
671 Q_OBJECT
672
673 public:
674 ExternalConfigurationGroup(CaptureCard &parent, CardType &cardtype);
675
676 public slots:
677 void probeApp(const QString & path);
678
679 private:
681 GroupSetting *m_info {nullptr};
682};
683#endif
684
685class DVBCardNum;
686class DVBCardName;
687class DVBCardType;
688class DVBTuningDelay;
689
691{
692 Q_OBJECT
693
694 friend class DVBExtra;
695
696 public:
697 DVBConfigurationGroup(CaptureCard& a_parent, CardType& cardType);
698 ~DVBConfigurationGroup() override;
699
700 void Load(void) override; // StandardSetting
701
702 void Save(void) override; // StandardSetting
703
704 public slots:
705 void probeCard(const QString& videodevice);
706 void reloadDiseqcTree(const QString &device);
707
708 private:
710
719};
720
721class FirewireGUID;
723{
724 Q_OBJECT
725
726 public:
727 FirewireModel(const CaptureCard &parent, const FirewireGUID *_guid);
728
729 public slots:
730 void SetGUID(const QString &_guid);
731
732 private:
733 const FirewireGUID *m_guid {nullptr};
734};
735
737{
738 Q_OBJECT
739
740 public:
741 explicit FirewireDesc(const FirewireGUID *_guid) :
742 m_guid(_guid) { }
743
744 public slots:
745 void SetGUID(const QString &_guid);
746
747 private:
748 const FirewireGUID *m_guid {nullptr};
749};
750
752{
753 Q_OBJECT
754public:
755 explicit CaptureCardGroup(CaptureCard& parent);
756};
757
759{
760 Q_OBJECT
761public:
762 explicit CaptureCard(bool use_card_group = true);
763
764 int getCardID(void) const { return m_id->intValue(); }
765 QString GetRawCardType(void) const;
766
767 void loadByID(int id);
768
769 static void fillSelections(GroupSetting* setting);
770
771 void reload(void);
772
773 void Save(void) override; // StandardSetting
774
775 bool canDelete(void) override; // GroupSetting
776 void deleteEntry(void) override; // GroupSetting
777
778private:
779
780 class ID: public IdSetting {
781 public:
782 ID():
783 IdSetting("capturecard", "cardid")
784 {
785 }
786 };
787
789 {
790 public:
791 explicit Hostname(const CaptureCard &parent);
792 ~Hostname() override;
793 void edit(MythScreenType */*screen*/) override {} // StandardSetting
794 void resultEdit(DialogCompletionEvent */*dce*/) override {} // StandardSetting
795 };
796
797private:
798 ID *m_id {nullptr};
799};
800
802{
803 public:
805 const CardInput &_parent,
806 const QString& _name) :
807 SimpleDBStorage(_user, "capturecard", _name), m_parent(_parent)
808 {
809 }
810
811 int getInputID(void) const;
812
813 protected:
815
816 QString GetSetClause(MSqlBindings &bindings) const override; // SimpleDBStorage
817 QString GetWhereClause(MSqlBindings &bindings) const override; // SimpleDBStorage
818
819 private:
821};
822
824{
825 Q_OBJECT
826
827 public:
828 CaptureCardButton(const QString &label, QString value)
829 : ButtonStandardSetting(label),
830 m_value(std::move(value))
831 {
832 }
833
834 void edit(MythScreenType *screen) override; // ButtonStandardSetting
835
836 signals:
837 void Clicked(const QString &choice);
838
839 private:
840 QString m_value;
841};
842
843
845{
846 Q_OBJECT
847
848 public:
850
851 void Load(void) override; // StandardSetting
852
853 using CCESlot = void (CaptureCardEditor::*)(void);
854 using CCESlotConst = void (CaptureCardEditor::*)(void) const;
855 void AddSelection(const QString &label, CCESlot slot);
856 void AddSelection(const QString &label, CCESlotConst slot);
857
858 public slots:
859 void ShowDeleteAllCaptureCardsDialog(void) const;
860 void ShowDeleteAllCaptureCardsDialogOnHost(void) const;
861 void DeleteAllCaptureCards(bool doDelete);
862 void DeleteAllCaptureCardsOnHost(bool doDelete);
863 void AddNewCard(void);
864};
865
867{
868 Q_OBJECT
869
870 public:
872
873 static bool cardTypesInclude(int SourceID,
874 const QString& thecardtype);
875
876 void Load(void) override; // StandardSetting
877 using VSESlot = void (VideoSourceEditor::*)(void);
878 using VSESlotConst = void (VideoSourceEditor::*)(void) const;
879 void AddSelection(const QString &label, VSESlot slot);
880 void AddSelection(const QString &label, VSESlotConst slot);
881
882 public slots:
883 void NewSource(void);
884 void ShowDeleteAllSourcesDialog(void) const;
885 void DeleteAllSources(bool doDelete);
886};
887
889{
890 Q_OBJECT
891
892 public:
894
895 void Load(void) override; // StandardSetting
896
897 private:
898 std::vector<CardInput*> m_cardInputs;
899};
900
902{
903 Q_OBJECT
904 public:
905 explicit StartingChannel(const CardInput &parent) :
906 MythUIComboBoxSetting(new CardInputDBStorage(this, parent, "startchan"),
907 false)
908 {
909 setLabel(QObject::tr("Starting channel"));
910 setHelpText(QObject::tr("This channel is shown when 'Watch TV' is selected on the main menu. "
911 "It is updated on every Live TV channel change. "
912 "When the value is not valid a suitable default will be chosen."));
913 }
914
916 {
917 delete GetStorage();
918 }
919 static void fillSelections(void) {;}
920 public slots:
921 void SetSourceID(const QString &sourceid);
922};
923
925{
926 Q_OBJECT
927 public:
928 CardInput(const QString & cardtype, const QString & device,
929 int cardid);
930 ~CardInput() override;
931
932 int getInputID(void) const { return m_id->intValue(); };
933
934 void loadByID(int id);
935 void loadByInput(int cardid, const QString& inputname);
936 QString getSourceName(void) const;
937
938 void Save(void) override; // StandardSetting
939
940 public slots:
941 void CreateNewInputGroup();
942 void channelScanner();
943 void sourceFetch();
944 void SetSourceID(const QString &sourceid);
945 void CreateNewInputGroupSlot(const QString &name);
946
947 private:
948 class ID: public IdSetting
949 {
950 public:
951 ID() : IdSetting("capturecard", "cardid")
952 {
953 }
954 };
955
956 ID *m_id {nullptr};
967};
968
970class VBoxDeviceID;
971class VBoxTunerIndex;
972
974{
975 Q_OBJECT
976
977 public:
978 VBoxIP();
979
980 void setEnabled(bool e) override; // StandardSetting
981 void SetOldValue(const QString &s)
982 { m_oldValue = s; };
983
984 signals:
985 void NewIP(const QString&);
986
987 public slots:
988 void UpdateDevices(const QString &v);
989
990 private:
991 QString m_oldValue;
992};
993
995{
996 Q_OBJECT
997
998 public:
1000
1001 void setEnabled(bool e) override; // StandardSetting
1002 void SetOldValue(const QString &s)
1003 { m_oldValue = s; };
1004
1005 signals:
1006 void NewTuner(const QString&);
1007
1008 public slots:
1009 void UpdateDevices(const QString &v);
1010
1011 private:
1012 QString m_oldValue;
1013};
1014
1016{
1017 Q_OBJECT
1018
1019 public:
1021 StandardSetting *desc,
1022 VBoxIP *cardip,
1023 VBoxTunerIndex *cardtuner,
1024 VBoxDeviceList *devicelist,
1025 const CaptureCard &parent);
1026
1027 void fillSelections(const QString &current);
1028
1029 void Load(void) override; // StandardSetting
1030
1031 public slots:
1032 void UpdateDevices(const QString &v);
1033
1034 private:
1041
1042 QString m_oldValue;
1043};
1044
1046{
1047 Q_OBJECT
1048
1049 public:
1050 explicit VBoxDeviceID(const CaptureCard &parent);
1051 ~VBoxDeviceID() override;
1052
1053 void Load(void) override; // StandardSetting
1054
1055 public slots:
1056 void SetIP(const QString &ip);
1057 void SetTuner(const QString &tuner);
1058 void SetOverrideDeviceID(const QString &deviceid);
1059
1060 private:
1061 QString m_ip;
1062 QString m_tuner;
1064};
1065
1066#if CONFIG_CETON
1067class CetonSetting : public TransTextEditSetting
1068{
1069 Q_OBJECT
1070
1071 public:
1072 CetonSetting(QString label, const QString& helptext);
1073 static void CetonConfigurationGroup(CaptureCard& parent, CardType& cardtype);
1074
1075 signals:
1076 void NewValue(const QString&);
1077
1078 public slots:
1079 void UpdateDevices(const QString &v);
1080 void LoadValue(const QString &value);
1081};
1082
1083class CetonDeviceID : public MythUITextEditSetting
1084{
1085 Q_OBJECT
1086
1087 public:
1088 explicit CetonDeviceID(const CaptureCard &parent);
1089 ~CetonDeviceID() override;
1090
1091 void Load(void) override; // StandardSetting
1092 void UpdateValues();
1093
1094 signals:
1095 void LoadedIP(const QString&);
1096 void LoadedCard(const QString&);
1097 void LoadedTuner(const QString&);
1098
1099 public slots:
1100 void SetIP(const QString &ip);
1101 void SetTuner(const QString &tuner);
1102
1103 private:
1104 QString m_ip;
1105 QString m_card;
1106 QString m_tuner;
1107 const CaptureCard &m_parent;
1108};
1109#endif // CONFIG_CETON
1110
1111#endif
TransTextEditSetting * m_cardInfo
Definition: videosource.h:633
void probeCard(const QString &device)
ASIDevice * m_device
Definition: videosource.h:632
ASIConfigurationGroup(CaptureCard &parent, CardType &cardType)
CaptureCard & m_parent
Definition: videosource.h:631
CaptureCardButton(const QString &label, QString value)
Definition: videosource.h:828
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:854
void(CaptureCardEditor::*)(void) CCESlot
Definition: videosource.h:853
CaptureCardGroup(CaptureCard &parent)
void resultEdit(DialogCompletionEvent *) override
Definition: videosource.h:794
void edit(MythScreenType *) override
Definition: videosource.h:793
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:764
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:820
int getInputID(void) const
QString GetWhereClause(MSqlBindings &bindings) const override
CardInputDBStorage(StorageUser *_user, const CardInput &_parent, const QString &_name)
Definition: videosource.h:804
QString GetSetClause(MSqlBindings &bindings) const override
std::vector< CardInput * > m_cardInputs
Definition: videosource.h:898
void SetSourceID(const QString &sourceid)
SourceID * m_sourceId
Definition: videosource.h:958
void CreateNewInputGroup()
void sourceFetch()
void Save(void) override
InputName * m_inputName
Definition: videosource.h:957
CardInput(const QString &cardtype, const QString &device, int cardid)
int getInputID(void) const
Definition: videosource.h:932
MythUISpinBoxSetting * m_instanceCount
Definition: videosource.h:965
QString getSourceName(void) const
void loadByID(int id)
MythUICheckBoxSetting * m_schedGroup
Definition: videosource.h:966
void loadByInput(int cardid, const QString &inputname)
~CardInput() override
StartingChannel * m_startChan
Definition: videosource.h:959
DiSEqCDevSettings * m_externalInputSettings
Definition: videosource.h:962
ButtonStandardSetting * m_srcFetch
Definition: videosource.h:961
ButtonStandardSetting * m_scan
Definition: videosource.h:960
InputGroup * m_inputGrp0
Definition: videosource.h:963
void channelScanner()
void CreateNewInputGroupSlot(const QString &name)
InputGroup * m_inputGrp1
Definition: videosource.h:964
static void fillSelections(MythUIComboBoxSetting *setting)
CardType(const CaptureCard &parent)
void reloadDiseqcTree(const QString &device)
friend class DVBExtra
Definition: videosource.h:694
DiSEqCDevTree * m_diseqcTree
Definition: videosource.h:717
DVBCardType * m_cardType
Definition: videosource.h:713
DVBCardName * m_cardName
Definition: videosource.h:712
CaptureCard & m_parent
Definition: videosource.h:709
DVBConfigurationGroup(CaptureCard &a_parent, CardType &cardType)
~DVBConfigurationGroup() override
SignalTimeout * m_signalTimeout
Definition: videosource.h:714
ChannelTimeout * m_channelTimeout
Definition: videosource.h:715
DeviceTree * m_diseqcBtn
Definition: videosource.h:718
void Load(void) override
void Save(void) override
void probeCard(const QString &videodevice)
DVBCardNum * m_cardNum
Definition: videosource.h:711
DVBTuningDelay * m_tuningDelay
Definition: videosource.h:716
GroupSetting * m_info
Definition: videosource.h:664
GroupSetting * m_size
Definition: videosource.h:665
DemoConfigurationGroup(CaptureCard &parent, CardType &cardtype)
void probeCard(const QString &device)
CaptureCard & m_parent
Definition: videosource.h:663
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:41
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:741
const FirewireGUID * m_guid
Definition: videosource.h:748
void SetGUID(const QString &_guid)
const FirewireGUID * m_guid
Definition: videosource.h:733
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:648
CaptureCard & m_parent
Definition: videosource.h:647
ImportConfigurationGroup(CaptureCard &parent, CardType &cardtype)
void probeCard(const QString &device)
GroupSetting * m_size
Definition: videosource.h:649
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:905
~StartingChannel() override
Definition: videosource.h:915
static void fillSelections(void)
Definition: videosource.h:919
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:612
CaptureCard & m_parent
Definition: videosource.h:610
GroupSetting * m_cardInfo
Definition: videosource.h:611
void probeCard(const QString &device)
QString m_driverName
Definition: videosource.h:614
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:1035
const CaptureCard & m_parent
Definition: videosource.h:1040
VBoxDeviceList * m_deviceList
Definition: videosource.h:1039
StandardSetting * m_desc
Definition: videosource.h:1036
VBoxTunerIndex * m_cardTuner
Definition: videosource.h:1038
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:1062
QString m_ip
Definition: videosource.h:1061
QString m_overrideDeviceId
Definition: videosource.h:1063
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:981
void setEnabled(bool e) override
void UpdateDevices(const QString &v)
QString m_oldValue
Definition: videosource.h:991
QString m_oldValue
Definition: videosource.h:1012
void UpdateDevices(const QString &v)
void setEnabled(bool e) override
void NewTuner(const QString &)
void SetOldValue(const QString &s)
Definition: videosource.h:1002
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:877
void(VideoSourceEditor::*)(void) const VSESlotConst
Definition: videosource.h:878
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:68
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:11
QDateTime current(bool stripped)
Returns current Date and Time in UTC.
Definition: mythdate.cpp:15
STL namespace.
VERBOSE_PREAMBLE false
Definition: verbosedefs.h:89
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