BabyCentralManager.h 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. /*
  2. BabyBluetooth
  3. 简单易用的蓝牙ble库,基于CoreBluetooth 作者:刘彦玮
  4. https://github.com/coolnameismy/BabyBluetooth
  5. @brief 蓝牙中心模式实现类
  6. */
  7. // Created by 刘彦玮 on 15/7/30.
  8. // Copyright (c) 2015年 刘彦玮. All rights reserved.
  9. //
  10. #import <Foundation/Foundation.h>
  11. #import <CoreBluetooth/CoreBluetooth.h>
  12. #import "BabyToy.h"
  13. #import "BabySpeaker.h"
  14. #import "BabyDefine.h"
  15. @interface BabyCentralManager : NSObject<CBCentralManagerDelegate,CBPeripheralDelegate> {
  16. @public
  17. //方法是否处理
  18. BOOL needScanForPeripherals;//是否扫描Peripherals
  19. BOOL needConnectPeripheral;//是否连接Peripherals
  20. BOOL needDiscoverServices;//是否发现Services
  21. BOOL needDiscoverCharacteristics;//是否获取Characteristics
  22. BOOL needReadValueForCharacteristic;//是否获取(更新)Characteristics的值
  23. BOOL needDiscoverDescriptorsForCharacteristic;//是否获取Characteristics的描述
  24. BOOL needReadValueForDescriptors;//是否获取Descriptors的值
  25. //一次性处理
  26. BOOL oneReadValueForDescriptors;
  27. //方法执行时间
  28. int executeTime;
  29. NSTimer *connectTimer;
  30. //pocket
  31. NSMutableDictionary *pocket;
  32. //主设备
  33. CBCentralManager *centralManager;
  34. //回叫方法
  35. BabySpeaker *babySpeaker;
  36. @private
  37. //已经连接的设备
  38. NSMutableArray *connectedPeripherals;
  39. //已经连接的设备
  40. NSMutableArray *discoverPeripherals;
  41. //需要自动重连的外设
  42. NSMutableArray *reConnectPeripherals;
  43. }
  44. //扫描Peripherals
  45. - (void)scanPeripherals;
  46. //连接Peripherals
  47. - (void)connectToPeripheral:(CBPeripheral *)peripheral;
  48. //断开设备连接
  49. - (void)cancelPeripheralConnection:(CBPeripheral *)peripheral;
  50. //断开所有已连接的设备
  51. - (void)cancelAllPeripheralsConnection;
  52. //停止扫描
  53. - (void)cancelScan;
  54. //获取当前连接的peripherals
  55. - (NSArray *)findConnectedPeripherals;
  56. //获取当前连接的peripheral
  57. - (CBPeripheral *)findConnectedPeripheral:(NSString *)peripheralName;
  58. /**
  59. sometimes ever,sometimes never. 相聚有时,后会无期
  60. this is center with peripheral's story
  61. **/
  62. //sometimes ever:添加断开重连接的设备
  63. - (void)sometimes_ever:(CBPeripheral *)peripheral ;
  64. //sometimes never:删除需要重连接的设备
  65. - (void)sometimes_never:(CBPeripheral *)peripheral ;
  66. @end