From d6d9a09d505d11148599a95a5be3e1351edbe0ac Mon Sep 17 00:00:00 2001 From: hc Date: Mon, 13 Apr 2026 15:17:52 +0800 Subject: Local iHealth SDK, device detail screen, iOS event fixes --- .../Communication_SDK/Headers/ECG3.h | 94 ++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 libs/ihealth-sdk/ios/ReactNativeIOSLibrary/Communication_SDK/Headers/ECG3.h (limited to 'libs/ihealth-sdk/ios/ReactNativeIOSLibrary/Communication_SDK/Headers/ECG3.h') diff --git a/libs/ihealth-sdk/ios/ReactNativeIOSLibrary/Communication_SDK/Headers/ECG3.h b/libs/ihealth-sdk/ios/ReactNativeIOSLibrary/Communication_SDK/Headers/ECG3.h new file mode 100644 index 0000000..d8d8736 --- /dev/null +++ b/libs/ihealth-sdk/ios/ReactNativeIOSLibrary/Communication_SDK/Headers/ECG3.h @@ -0,0 +1,94 @@ +// +// ECG3.h +// iHealthDemoCode +// +// Created by zhiwei jing on 16/7/12. +// Copyright © 2016年 zhiwei jing. All rights reserved. +// + +#import +#import "ECGMacroFile.h" + +/** + Sync Time Successfully + */ +typedef void (^DisposeECG3SyncTimeSuccessBlock)(void); + +/** + Error block + + @param errorId see ECG3ErrorID enum + */ +typedef void(^DisposeECG3ErrorBlock)(ECG3ErrorID errorId); +/** + Start Measure + */ +typedef void (^DisposeECG3StartMeasureBlock)(void); +/** + Finish Measure + */ +typedef void (^DisposeECG3FinishMeasureSuccessBlock)(void); + + /** + ECG3 Wave Data + */ +typedef void (^DisposeECG3WaveDataBlock)(NSArray* waveDataArray); + +/** + ECG3 HR Data + */ +typedef void (^DisposeECG3PluseResultBlock)(BOOL hasHR,NSUInteger HR); +/** + get Battery + */ +typedef void (^DisposeECG3GetBatteryBlock)(NSNumber *battery); +/** + ECG3 + */ +@interface ECG3 : NSObject + +@property (strong, nonatomic) NSString *currentUUID; +@property (strong, nonatomic) NSString *serialNumber; +@property (strong, nonatomic) NSString *firmwareVersion; + +/** + * Sync time + * @param syncTimeBlock Sync time successfully + * @param errorBlock Communication error codes, see ECG3 error descriptions. + */ +-(void)commandECG3SyncTime:(DisposeECG3SyncTimeSuccessBlock)syncTimeBlock withErrorBlock:(DisposeECG3ErrorBlock)errorBlock; + + +/** + * Start Measure + * @param startMeasureBlock True: Success, False: Failed. + * @param waveDataBlock waveData:ECGWaveData use for draw wave + * @param pluseResultBlock hasHR: whether have heart; HR: heart rate (unit: bpm) only valid when isHaveHeart is true + * @param errorBlock Communication error codes, see ECG3 error descriptions. + */ +-(void)commandECG3StartMeasure:(DisposeECG3StartMeasureBlock)startMeasureBlock withWaveData:(DisposeECG3WaveDataBlock)waveDataBlock withPulseResult:(DisposeECG3PluseResultBlock)pluseResultBlock withErrorBlock:(DisposeECG3ErrorBlock)errorBlock; + + + +/** + * Finish Measure + * @param finishMeasureBlock finish successfully + * @param errorBlock Communication error codes, see ECG3 error descriptions. + */ +-(void)commandECG3FinishMeasure:(DisposeECG3FinishMeasureSuccessBlock)finishMeasureBlock withErrorBlock:(DisposeECG3ErrorBlock)errorBlock; + + + + +/** + * Get Battery + * @param batteryBlock from 0~100. + * @param errorBlock Communication error codes, see ECG3 error descriptions. + */ +-(void)commandECG3GetBatteryInfo:(DisposeECG3GetBatteryBlock)batteryBlock withErrorBlock:(DisposeECG3ErrorBlock)errorBlock; + +/** + Disconnect device + */ +- (void)disconnectDevice; +@end -- cgit