1
0

MultimediaService.cpp 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  1. #include "MultimediaService.h"
  2. #include "AutoConnect.h"
  3. #include "DeviceWatcher/DeviceWatcher.h"
  4. #include "MusicPlayer/MusicPlayer.h"
  5. #include "VideoPlayer/VideoPlayer.h"
  6. #include "ImagePlayer/ImagePlayer.h"
  7. #include "UserInterfaceUtility.h"
  8. #include <QCoreApplication>
  9. #include <QDBusConnection>
  10. class MultimediaServicePrivate
  11. {
  12. Q_DISABLE_COPY(MultimediaServicePrivate)
  13. public:
  14. explicit MultimediaServicePrivate(MultimediaService* parent);
  15. ~MultimediaServicePrivate();
  16. void initialize();
  17. void connectAllSlots();
  18. private:
  19. MultimediaService* m_Parent;
  20. };
  21. MultimediaService::MultimediaService(QObject *parent)
  22. : QObject(parent)
  23. , m_Private(new MultimediaServicePrivate(this))
  24. {
  25. }
  26. MultimediaService::~MultimediaService()
  27. {
  28. }
  29. void MultimediaService::synchronize()
  30. {
  31. g_DeviceWatcher->synchronize();
  32. }
  33. void MultimediaService::reset()
  34. {
  35. MultimediaPersistent::reset();
  36. }
  37. void MultimediaService::musicPlayerRequestFileNames()
  38. {
  39. g_MusicPlayer->musicPlayerRequestFileNames(DWT_USBDisk);
  40. }
  41. void MultimediaService::deviceWatcherCheckStatus(const DeviceWatcherType type)
  42. {
  43. g_DeviceWatcher->deviceWatcherCheckStatus(type);
  44. }
  45. void MultimediaService::musicPlayerSetPlayModeToggle()
  46. {
  47. g_MusicPlayer->musicPlayerSetPlayModeToggle();
  48. }
  49. void MultimediaService::musicPlayerSetPlayMode(const MusicPlayerPlayMode mode)
  50. {
  51. g_MusicPlayer->musicPlayerSetPlayMode(mode);
  52. }
  53. void MultimediaService::musicPlayerSetPlayStatusToggle()
  54. {
  55. g_MusicPlayer->musicPlayerSetPlayStatusToggle();
  56. }
  57. void MultimediaService::musicPlayerSetPlayStatus(const MusicPlayerPlayStatus status)
  58. {
  59. g_MusicPlayer->musicPlayerSetPlayStatus(status);
  60. }
  61. void MultimediaService::musicPlayerPlayListViewIndex(const DeviceWatcherType type, const int index, const int millesimal)
  62. {
  63. g_MusicPlayer->musicPlayerPlayListViewIndex(type, index, millesimal);
  64. }
  65. void MultimediaService::musicPlayerPlayPreviousListViewIndex()
  66. {
  67. g_MusicPlayer->musicPlayerPlayPreviousListViewIndex();
  68. }
  69. void MultimediaService::musicPlayerPlayNextListViewIndex()
  70. {
  71. g_MusicPlayer->musicPlayerPlayNextListViewIndex();
  72. }
  73. void MultimediaService::musicPlayerSeekToMillesimal(const int millesimal)
  74. {
  75. g_MusicPlayer->musicPlayerSeekToMillesimal(millesimal);
  76. }
  77. void MultimediaService::musicPlayerExit()
  78. {
  79. g_MusicPlayer->musicPlayerExit();
  80. }
  81. void MultimediaService::imagePlayerRequestFileNames(const DeviceWatcherType type)
  82. {
  83. g_ImagePlayer->imagePlayerRequestFileNames(type);
  84. }
  85. void MultimediaService::imagePlayerPlayListViewIndex(const DeviceWatcherType type, const int index)
  86. {
  87. g_ImagePlayer->imagePlayerPlayListViewIndex(type, index);
  88. }
  89. void MultimediaService::imagePlayerPlayPreviousListViewIndex()
  90. {
  91. g_ImagePlayer->imagePlayerPlayPreviousListViewIndex();
  92. }
  93. void MultimediaService::imagePlayerPlayNextListViewIndex()
  94. {
  95. g_ImagePlayer->imagePlayerPlayNextListViewIndex();
  96. }
  97. void MultimediaService::imagePlayerRotateImage()
  98. {
  99. g_ImagePlayer->imagePlayerRotateImage();
  100. }
  101. void MultimediaService::imagePlayerZoomInImage()
  102. {
  103. g_ImagePlayer->imagePlayerZoomInImage();
  104. }
  105. void MultimediaService::imagePlayerZoomOutImage()
  106. {
  107. g_ImagePlayer->imagePlayerZoomOutImage();
  108. }
  109. void MultimediaService::videoPlayerRequestFileNames(const DeviceWatcherType type)
  110. {
  111. g_VideoPlayer->videoPlayerRequestFileNames(type);
  112. }
  113. void MultimediaService::videoPlayerSetPlayModeToggle()
  114. {
  115. g_VideoPlayer->videoPlayerSetPlayModeToggle();
  116. }
  117. void MultimediaService::videoPlayerSetPlayStatusToggle()
  118. {
  119. g_VideoPlayer->videoPlayerSetPlayStatusToggle();
  120. }
  121. void MultimediaService::videoPlayerSetPlayStatus(const VideoPlayerPlayStatus status)
  122. {
  123. g_VideoPlayer->videoPlayerSetPlayStatus(status);
  124. }
  125. void MultimediaService::videoPlayerPlayListViewIndex(const DeviceWatcherType type, const int index, const int x, const int y, const int width, const int height, const int millesimal)
  126. {
  127. g_VideoPlayer->videoPlayerPlayListViewIndex(type, index, x, y, width, height, millesimal);
  128. }
  129. void MultimediaService::videoPlayerPlayPreviousListViewIndex()
  130. {
  131. g_VideoPlayer->videoPlayerPlayPreviousListViewIndex();
  132. }
  133. void MultimediaService::videoPlayerPlayNextListViewIndex()
  134. {
  135. g_VideoPlayer->videoPlayerPlayNextListViewIndex();
  136. }
  137. void MultimediaService::videoPlayerSeekToMillesimal(const int millesimal)
  138. {
  139. g_VideoPlayer->videoPlayerSeekToMillesimal(millesimal);
  140. }
  141. void MultimediaService::videoPlayerExit()
  142. {
  143. g_VideoPlayer->videoPlayerExit();
  144. }
  145. void MultimediaService::videoPlayerVisible(const bool flag)
  146. {
  147. g_VideoPlayer->videoPlayerVisible(flag);
  148. }
  149. void MultimediaService::videoPlayerSetGeometry(int x,int y,int width,int height)
  150. {
  151. g_VideoPlayer->videoPlayerSetGeometry(x,y,width,height);
  152. }
  153. MultimediaServicePrivate::MultimediaServicePrivate(MultimediaService* parent)
  154. : m_Parent(parent)
  155. {
  156. initialize();
  157. connectAllSlots();
  158. }
  159. MultimediaServicePrivate::~MultimediaServicePrivate()
  160. {
  161. }
  162. void MultimediaServicePrivate::initialize()
  163. {
  164. qDebug() << "MultimediaServicePrivate::initialize";
  165. bool ret = QDBusConnection::sessionBus().registerService(ArkMicroMultimediaService);
  166. ret = ret && QDBusConnection::sessionBus().registerObject(ArkMicroMultimediaPath,
  167. m_Parent,
  168. QDBusConnection::ExportNonScriptableSignals
  169. | QDBusConnection::ExportNonScriptableSlots);
  170. if (!ret) {
  171. qCritical() << "MultimediaService Register QDbus failed!";
  172. exit(EXIT_FAILURE);
  173. }
  174. }
  175. void MultimediaServicePrivate::connectAllSlots()
  176. {
  177. connectSignalAndSignalByNamesake(g_MusicPlayer, m_Parent, SIGNAL(onMusicPlayerFileArtist(const int,QStringList)));
  178. connectSignalAndSignalByNamesake(g_MusicPlayer, m_Parent, SIGNAL(onMusicPlayerPlayMode(const int)));
  179. connectSignalAndSignalByNamesake(g_MusicPlayer, m_Parent, SIGNAL(onMusicPlayerPlayStatus(const int, const int)));
  180. connectSignalAndSignalByNamesake(g_MusicPlayer, m_Parent, SIGNAL(onMusicPlayerElapsedInformation(const int, const int)));
  181. connectSignalAndSignalByNamesake(g_MusicPlayer, m_Parent, SIGNAL(onMusicPlayerID3TagChange(const int, const int, const QString&, const QString&, const QString&, const QString&, const int)));
  182. connectSignalAndSignalByNamesake(g_MusicPlayer, m_Parent, SIGNAL(onMusicPlayerFileNames(const int, const QString &)));
  183. connectSignalAndSignalByNamesake(g_MusicPlayer, m_Parent, SIGNAL(onMusicPlayerExit()));
  184. // connectSignalAndSignalByNamesake(g_MusicPlayer, m_Parent, SIGNAL(onMusicPlayerFilePath(const int, const QString &)));
  185. connectSignalAndSignalByNamesake(g_ImagePlayer, m_Parent, SIGNAL(onImagePlayerFileNames(const int, const QString &)));
  186. connectSignalAndSignalByNamesake(g_ImagePlayer, m_Parent, SIGNAL(onImagePlayerChange(const int, const QString &, const int, const int, const int)));
  187. connectSignalAndSignalByNamesake(g_VideoPlayer, m_Parent, SIGNAL(onVideoPlayerPlayMode(const int)));
  188. connectSignalAndSignalByNamesake(g_VideoPlayer, m_Parent, SIGNAL(onVideoPlayerShowStatus(const int)));
  189. connectSignalAndSignalByNamesake(g_VideoPlayer, m_Parent, SIGNAL(onVideoPlayerPlayStatus(const int, const int)));
  190. connectSignalAndSignalByNamesake(g_VideoPlayer, m_Parent, SIGNAL(onVideoPlayerFileNames(const int, const QString &)));
  191. connectSignalAndSignalByNamesake(g_VideoPlayer, m_Parent, SIGNAL(onVideoPlayerInformation(const int, const int, const QString &, const int)));
  192. connectSignalAndSignalByNamesake(g_VideoPlayer, m_Parent, SIGNAL(onVideoPlayerElapsedInformation(const int, const int)));
  193. connectSignalAndSignalByNamesake(g_VideoPlayer, m_Parent, SIGNAL(onVideoPlayerVisible(const bool)));
  194. connectSignalAndSignalByNamesake(g_DeviceWatcher, m_Parent, SIGNAL(onDeviceWatcherStatus(const int, const int)));
  195. connectSignalAndSignalByNamesake(g_VideoPlayer, m_Parent, SIGNAL(onSliderTouchEnable(bool))); //dll add 20190805
  196. connectSignalAndSignalByNamesake(g_VideoPlayer, m_Parent, SIGNAL(onVideoPlayerExit()));
  197. }