MythTV  master
blurayInfo.h
Go to the documentation of this file.
1 // Program Name: blurayInfo.h
3 // Created : Apr. 22, 2011
4 //
5 // Copyright (c) 2011 Robert McNamara <rmcnamara@mythtv.org>
6 //
7 // Licensed under the GPL v2 or later, see LICENSE for details
8 //
10 
11 #ifndef BLURAYINFO_H_
12 #define BLURAYINFO_H_
13 
14 #include <QString>
15 
18 
19 namespace DTC
20 {
21 
23 
24 class SERVICE_PUBLIC BlurayInfo : public QObject
25 {
26  Q_OBJECT
27  Q_CLASSINFO( "version" , "1.0" );
28 
29  Q_PROPERTY( QString Path READ Path WRITE setPath )
30  Q_PROPERTY( QString Title READ Title WRITE setTitle )
31  Q_PROPERTY( QString AltTitle READ AltTitle WRITE setAltTitle )
32  Q_PROPERTY( QString DiscLang READ DiscLang WRITE setDiscLang )
33  Q_PROPERTY( uint DiscNum READ DiscNum WRITE setDiscNum )
34  Q_PROPERTY( uint TotalDiscNum READ TotalDiscNum WRITE setTotalDiscNum )
35  Q_PROPERTY( uint TitleCount READ TitleCount WRITE setTitleCount )
36  Q_PROPERTY( uint ThumbCount READ ThumbCount WRITE setThumbCount )
37  Q_PROPERTY( QString ThumbPath READ ThumbPath WRITE setThumbPath )
38  Q_PROPERTY( bool TopMenuSupported READ TopMenuSupported WRITE setTopMenuSupported )
39  Q_PROPERTY( bool FirstPlaySupported READ FirstPlaySupported WRITE setFirstPlaySupported )
40  Q_PROPERTY( uint NumHDMVTitles READ NumHDMVTitles WRITE setNumHDMVTitles )
41  Q_PROPERTY( uint NumBDJTitles READ NumBDJTitles WRITE setNumBDJTitles )
42  Q_PROPERTY( uint NumUnsupportedTitles READ NumUnsupportedTitles WRITE setNumUnsupportedTitles )
43  Q_PROPERTY( bool AACSDetected READ AACSDetected WRITE setAACSDetected )
44  Q_PROPERTY( bool LibAACSDetected READ LibAACSDetected WRITE setLibAACSDetected )
45  Q_PROPERTY( bool AACSHandled READ AACSHandled WRITE setAACSHandled )
46  Q_PROPERTY( bool BDPlusDetected READ BDPlusDetected WRITE setBDPlusDetected )
47  Q_PROPERTY( bool LibBDPlusDetected READ LibBDPlusDetected WRITE setLibBDPlusDetected )
48  Q_PROPERTY( bool BDPlusHandled READ BDPlusHandled WRITE setBDPlusHandled )
49 
50  PROPERTYIMP_REF( QString , Path )
51  PROPERTYIMP_REF( QString , Title )
52  PROPERTYIMP_REF( QString , AltTitle )
53  PROPERTYIMP_REF( QString , DiscLang )
54  PROPERTYIMP ( uint , DiscNum )
55  PROPERTYIMP ( uint , TotalDiscNum )
56  PROPERTYIMP ( uint , TitleCount )
57  PROPERTYIMP ( uint , ThumbCount )
58  PROPERTYIMP_REF( QString , ThumbPath )
59  PROPERTYIMP ( bool , TopMenuSupported )
60  PROPERTYIMP ( bool , FirstPlaySupported )
61  PROPERTYIMP ( uint , NumHDMVTitles )
62  PROPERTYIMP ( uint , NumBDJTitles )
63  PROPERTYIMP ( uint , NumUnsupportedTitles )
64  PROPERTYIMP ( bool , AACSDetected )
65  PROPERTYIMP ( bool , LibAACSDetected )
66  PROPERTYIMP ( bool , AACSHandled )
67  PROPERTYIMP ( bool , BDPlusDetected )
68  PROPERTYIMP ( bool , LibBDPlusDetected )
69  PROPERTYIMP ( bool , BDPlusHandled )
70 
71  public:
72 
73  static inline void InitializeCustomTypes();
74 
75  Q_INVOKABLE BlurayInfo(QObject *parent = nullptr)
76  : QObject ( parent ),
77  m_Path ( QString() ),
78  m_Title ( QString() ),
79  m_AltTitle ( QString() ),
80  m_DiscLang ( QString() ),
81  m_DiscNum ( 0 ),
82  m_TotalDiscNum ( 0 ),
83  m_TitleCount ( 0 ),
84  m_ThumbCount ( 0 ),
85  m_ThumbPath ( QString() ),
86  m_TopMenuSupported ( false ),
87  m_FirstPlaySupported ( false ),
88  m_NumHDMVTitles ( 0 ),
89  m_NumBDJTitles ( 0 ),
90  m_NumUnsupportedTitles ( 0 ),
91  m_AACSDetected ( false ),
92  m_LibAACSDetected ( false ),
93  m_AACSHandled ( false ),
94  m_BDPlusDetected ( false ),
95  m_LibBDPlusDetected ( false ),
96  m_BDPlusHandled ( false )
97  {
98  }
99 
100  void Copy( const BlurayInfo *src )
101  {
102  m_Path = src->m_Path ;
103  m_Title = src->m_Title ;
104  m_AltTitle = src->m_AltTitle ;
105  m_DiscLang = src->m_DiscLang ;
106  m_DiscNum = src->m_DiscNum ;
107  m_TotalDiscNum = src->m_TotalDiscNum ;
108  m_TitleCount = src->m_TitleCount ;
109  m_ThumbCount = src->m_ThumbCount ;
110  m_ThumbPath = src->m_ThumbPath ;
111  m_TopMenuSupported = src->m_TopMenuSupported ;
112  m_FirstPlaySupported = src->m_FirstPlaySupported ;
113  m_NumHDMVTitles = src->m_NumHDMVTitles ;
114  m_NumBDJTitles = src->m_NumBDJTitles ;
115  m_NumUnsupportedTitles = src->m_NumUnsupportedTitles ;
116  m_AACSDetected = src->m_AACSDetected ;
117  m_LibAACSDetected = src->m_LibAACSDetected ;
118  m_AACSHandled = src->m_AACSHandled ;
119  m_BDPlusDetected = src->m_BDPlusDetected ;
120  m_LibBDPlusDetected = src->m_LibBDPlusDetected ;
121  m_BDPlusHandled = src->m_BDPlusHandled ;
122  }
123 
124  private:
125  Q_DISABLE_COPY(BlurayInfo);
126 };
127 
129 {
130  qRegisterMetaType< BlurayInfo* >();
131 }
132 
133 } // namespace DTC
134 
135 #endif
false
VERBOSE_PREAMBLE false
Definition: verbosedefs.h:89
SERVICE_PUBLIC
#define SERVICE_PUBLIC
Definition: serviceexp.h:9
DTC::BlurayInfo::InitializeCustomTypes
static void InitializeCustomTypes()
Definition: blurayInfo.h:128
DTC::BlurayInfo
Definition: blurayInfo.h:24
datacontracthelper.h
serviceexp.h
uint
unsigned int uint
Definition: compat.h:81
PROPERTYIMP
#define PROPERTYIMP(type, name)
Definition: datacontracthelper.h:56
DTC
Definition: datacontracthelper.h:123
PROPERTYIMP_REF
#define PROPERTYIMP_REF(type, name)
Definition: datacontracthelper.h:70
DTC::BlurayInfo::Copy
void Copy(const BlurayInfo *src)
Definition: blurayInfo.h:100