You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
2.6 KiB
82 lines
2.6 KiB
//
|
|
// DBDevices.h
|
|
// CareRingApp
|
|
//
|
|
// Created by Linktop on 2022/6/7.
|
|
// 绑定设备表
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
#import "SRDeviceInfo.h"
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
@class DeviceOtherInfo;
|
|
|
|
|
|
typedef NS_ENUM(NSInteger, DBDEVICE_CHARGE_TYPE) {
|
|
CHARGE_UNKNOW = -1, // Charging type not obtained
|
|
CHARGE_MA = 0, // Magnetic charging
|
|
CHARGE_WILESS = 1, // Wireless charging
|
|
CHARGE_NFC = 2, // NFC charging
|
|
};
|
|
|
|
typedef NS_ENUM(NSUInteger, RING_PROJECT_ID) {
|
|
PROJ_NOT_SUPPORT = 0, //Older device versions do not support this parameter
|
|
PROJ_SR03 = 0x10,
|
|
PROJ_SRO9W = 0x20 ,
|
|
PROJ_SRO9N = 0x21 ,
|
|
PROJ_SR01A = 0x22 ,
|
|
PROJ_SR23_NFC = 0x30 ,
|
|
PROJ_SR26 = 0x40 ,
|
|
};
|
|
|
|
@interface DBDevices : NSObject
|
|
@property(assign, nonatomic)NSNumber *cId; // unique index
|
|
@property(strong, nonatomic)NSString *macAddress; // Bluetooth peripheral mac address
|
|
@property(strong, nonatomic)DeviceOtherInfo *otherInfo; // Other information about the device
|
|
|
|
|
|
/// Query all DBDevices instances saved locally
|
|
/// - Parameter cmpBlk: return result
|
|
+(void)queryAllByCpmplete:(void(^)(NSMutableArray<DBDevices *> *results))cmpBlk;
|
|
|
|
|
|
/// Save a new binded device record locally
|
|
/// - Parameter complete: return result
|
|
-(void)insert:(void(^)(BOOL succ))complete;
|
|
|
|
|
|
/// Update other information of the device saved locally
|
|
/// - Parameter complete: return result
|
|
-(void)updateOtherInfo:(void(^)(BOOL succ))complete;
|
|
|
|
|
|
/// delete binded device,All data associated with the mac address of this device will
|
|
/// be cleared.
|
|
/// - Parameter cmpBlk: call back
|
|
-(void)deleteFromTable:(void (^)(void))cmpBlk;
|
|
|
|
/// Select ota parameters
|
|
/// - Parameter blk: call back. cat:Used to query firmware package information.If it is nil, an error has occurred.
|
|
-(void)chooseOTAugument:(void(^)(NSString * _Nullable cat))blk;
|
|
|
|
@end
|
|
|
|
@interface DeviceOtherInfo :NSObject
|
|
|
|
@property(assign, nonatomic)DEV_COLOR color; // ring's color
|
|
@property(assign, nonatomic)NSInteger size; // ring's size
|
|
@property(strong, nonatomic)NSString *sn, *fireWareVersion;// sn=serial number, fireWareVersion=Device firmware version number
|
|
@property(assign, nonatomic)MAIN_CHIP_TYPE mainChipType; // 主芯片型号
|
|
@property(assign, nonatomic)NSUInteger deviceGeneration; // 迭代版本
|
|
@property(assign, nonatomic)BOOL isSupportSportMode;
|
|
@property(assign, nonatomic)DBDEVICE_CHARGE_TYPE chargeType;
|
|
@property(assign, nonatomic)BOOL isSupportEcg;
|
|
@property(assign, nonatomic)RING_PROJECT_ID projectId;// Distinguish the model of the ring
|
|
|
|
/// Convert to a.b.c format
|
|
-(NSString *)transFirmVersionToRemoteType;
|
|
|
|
@end
|
|
|
|
NS_ASSUME_NONNULL_END
|
|
|