carlinkproxy.h 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. #ifndef CARLINKPROXY_H
  2. #define CARLINKPROXY_H
  3. #include <QtCore/QObject>
  4. #include <QtCore/QByteArray>
  5. #include <QtCore/QList>
  6. #include <QtCore/QMap>
  7. #include <QtCore/QString>
  8. #include <QtCore/QStringList>
  9. #include <QtCore/QVariant>
  10. #include <QtDBus/QtDBus>
  11. #include <string>
  12. using namespace std;
  13. /*
  14. * Proxy class for interface Local.DbusServer.CarLink
  15. */
  16. class LocalDbusServerCarLinkInterface: public QDBusAbstractInterface
  17. {
  18. Q_OBJECT
  19. public:
  20. static inline const char *staticInterfaceName()
  21. { return "Local.DbusServer.CarLink"; }
  22. public:
  23. LocalDbusServerCarLinkInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = 0);
  24. ~LocalDbusServerCarLinkInterface();
  25. public Q_SLOTS: // METHODS
  26. inline QDBusPendingReply<> requestLink(int type, int mode, int status)
  27. {
  28. QList<QVariant> argumentList;
  29. argumentList << QVariant::fromValue(type) << QVariant::fromValue(mode) << QVariant::fromValue(status);
  30. return asyncCallWithArgumentList(QLatin1String("requestLink"), argumentList);
  31. }
  32. inline QDBusPendingReply<> requestTouch(int x, int y, int pressed)
  33. {
  34. QList<QVariant> argumentList;
  35. argumentList << QVariant::fromValue(x) << QVariant::fromValue(y) << QVariant::fromValue(pressed);
  36. return asyncCallWithArgumentList(QLatin1String("requestTouch"), argumentList);
  37. }
  38. inline QDBusPendingReply<> requestWifi(string ssid, string passphrase, string channel_id)
  39. {
  40. QList<QVariant> argumentList;
  41. argumentList << QVariant::fromValue(QString::fromStdString(ssid)) << QVariant::fromValue(QString::fromStdString(passphrase)) << QVariant::fromValue(QString::fromStdString(channel_id));
  42. return asyncCallWithArgumentList(QLatin1String("requestWifi"), argumentList);
  43. }
  44. inline QDBusPendingReply<> requestCarBluetooth(string name, string address, string pin)
  45. {
  46. QList<QVariant> argumentList;
  47. argumentList << QVariant::fromValue(QString::fromStdString(name)) << QVariant::fromValue(QString::fromStdString(address)) << QVariant::fromValue(QString::fromStdString(pin));
  48. return asyncCallWithArgumentList(QLatin1String("requestCarBluetooth"), argumentList);
  49. }
  50. inline QDBusPendingReply<> requestPhoneIPAddress(string str)
  51. {
  52. QList<QVariant> argumentList;
  53. argumentList << QVariant::fromValue(QString::fromStdString(str));
  54. return asyncCallWithArgumentList(QLatin1String("requestPhoneIPAddress"), argumentList);
  55. }
  56. inline QDBusPendingReply<> requestPhoneBTAddress(string str)
  57. {
  58. QList<QVariant> argumentList;
  59. argumentList << QVariant::fromValue(QString::fromStdString(str));
  60. return asyncCallWithArgumentList(QLatin1String("requestPhoneBTAddress"), argumentList);
  61. }
  62. inline QDBusPendingReply<> requestBluetoothCmd(string cmd)
  63. {
  64. QList<QVariant> argumentList;
  65. argumentList << QVariant::fromValue(QString::fromStdString(cmd));
  66. return asyncCallWithArgumentList(QLatin1String("requestBluetoothCmd"), argumentList);
  67. }
  68. inline QDBusPendingReply<> requestBroadcast(bool enable)
  69. {
  70. QList<QVariant> argumentList;
  71. argumentList << QVariant::fromValue(enable);
  72. return asyncCallWithArgumentList(QLatin1String("requestBroadcast"), argumentList);
  73. }
  74. inline QDBusPendingReply<> requestKey(int key){
  75. QList<QVariant> argumentList;
  76. argumentList << QVariant::fromValue(key);
  77. return asyncCallWithArgumentList(QLatin1String("requestKey"), argumentList);
  78. }
  79. inline QDBusPendingReply<> requestNightMode(bool night){
  80. QList<QVariant> argumentList;
  81. argumentList << QVariant::fromValue(night);
  82. return asyncCallWithArgumentList(QLatin1String("requestNightMode"), argumentList);
  83. }
  84. Q_SIGNALS: // SIGNALS
  85. void onLinkStatus(int type, int mode, int status);
  86. void onCarLinkVersion(const int type, const QString ver);
  87. void onPhoneType(int type, int inserted);
  88. void onDateTime(const int type, const long long time);
  89. void onPinCode(const int type, const QString pincode); //send carlink's pincode(hicar)
  90. void onBlueToothCmd(const int type, const QString cmd); //send carlink's bluetooth of "AT" cmd
  91. void onCarLinkInitDone(const int type);
  92. void onLinkDuckAudio(const int type, double durationSecs, double volume); //send carlink's audio duck volume
  93. void onLinkUnduckAudio(const int type, double durationSecs); //send carlink's audio unduck volume
  94. void onTelephone(const int type, const QString name, const QString number);
  95. };
  96. namespace Local {
  97. namespace DbusServer {
  98. typedef ::LocalDbusServerCarLinkInterface CarLink;
  99. }
  100. }
  101. #endif