bluetoothcontrol.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. #ifndef BLUETOOTHCONTROL_H
  2. #define BLUETOOTHCONTROL_H
  3. #include <string>
  4. #include "types.h"
  5. using namespace std;
  6. class BlueToothControl
  7. {
  8. public:
  9. static BlueToothControl *instance();
  10. string addr() const
  11. {
  12. return mAddr;
  13. }
  14. string name() const
  15. {
  16. return mName;
  17. }
  18. string pinCode() const
  19. {
  20. return mPinCode;
  21. }
  22. void updateInfo(const char *addr, const char *name, const char *pin);
  23. void setMacAddr(const char *addr)
  24. {
  25. mAddr = addr;
  26. }
  27. void setMacAddr(const string addr)
  28. {
  29. mAddr = addr;
  30. }
  31. void setName(const char *name)
  32. {
  33. mName = name;
  34. }
  35. void setName(const string name)
  36. {
  37. mName = name;
  38. }
  39. void setPinCode(const char *pin)
  40. {
  41. mPinCode = pin;
  42. }
  43. void setPinCode(const string pin)
  44. {
  45. mPinCode = pin;
  46. }
  47. void setMobileAddr(const char *addr)
  48. {
  49. mMobileAddr = addr;
  50. }
  51. void setMobileAddr(const string addr)
  52. {
  53. mMobileAddr = addr;
  54. }
  55. void setMobileName(const char *name)
  56. {
  57. mMobileName = name;
  58. }
  59. void setMobileName(const string name)
  60. {
  61. mMobileName = name;
  62. }
  63. void setMobilePinCode(const char *pin)
  64. {
  65. mMobilePinCode = pin;
  66. }
  67. void setMobilePinCode(const string pin)
  68. {
  69. mMobilePinCode = pin;
  70. }
  71. //modify void sendPairStatus(BtPairStatus status);
  72. void sendPairStatus(BtPairStatus status, int ispaired);
  73. void sendIndication(BtIndication state, const char *phoneNum);
  74. void sendHfpConnection(HfpConnection status);
  75. /***************************** add 20180226******************/
  76. void setBTstatus(int status)
  77. {
  78. BTstatus = status;
  79. }
  80. int status() const
  81. {
  82. return BTstatus;
  83. }
  84. void setCurPhoneType(int phone)
  85. {
  86. phone_type = phone;
  87. }
  88. //告知手机:车机端可支持的特性
  89. void configMDBT(string addr, string pin, bool connected = true);
  90. void BTBeginIdentify();
  91. void setBTIdentifyResult(void* result);
  92. void setCurMDBTInfo(void*);
  93. //保存当前已连接蓝牙的地址,默认为空
  94. void setCurConnectBT(char* addr);
  95. //比对蓝牙地址:在车机已经连接蓝牙的情况下,需要判断车机连接的蓝牙是否是当前连接的手机的蓝牙
  96. int compareBTAddr(string local_get, string md);
  97. private:
  98. string curConnectedBT;
  99. int BTstatus;
  100. int phone_type; // 1:android; 2: iphone;
  101. /*******************************************************************/
  102. private:
  103. BlueToothControl();
  104. private:
  105. static BlueToothControl *mInstance;
  106. string mAddr;
  107. string mName;
  108. string mPinCode;
  109. string mMobileAddr;
  110. string mMobileName;
  111. string mMobilePinCode;
  112. };
  113. #endif // BLUETOOTHCONTROL_H