NewExerciseRealtimeModel.swift 898 Bytes
//
//  NewExerciseRealtimeModel.swift
//  HDFwear
//
//  Created by admin on 2024/1/19.
//

import Foundation
import UIKit
import HandyJSON
import SwiftDate

class NewExerciseRealtimeModel: NSObject {
    required override init() { }
    
    var hr: UInt32 = 0
    var step: UInt32 = 0
    var calorie: Float = 0
    
    
    override var description: String {
        return "NewExerciseRealtimeModel: HR=\(hr), Step=\(step), Calorie=\(calorie)"
    }
    
    class func toExerciseRealtimeModel(_ data: [UInt8]) -> NewExerciseRealtimeModel? {
        guard data.count >= 9 else {
            return nil
        }
        let s = NewExerciseRealtimeModel()
        s.hr = data[0..<1].reduce(0) { ($0 << 8) + UInt32($1) }
        s.step = data[1..<5].reduce(0) { ($0 << 8) + UInt32($1) }
        s.calorie = Float(data[5..<9].reduce(0) { ($0 << 8) + UInt32($1) }) / 100
        return s;
    }
}