Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // DNMeasurement.h
- // MyDignio2
- //
- // Created by Administrator on 3/1/16.
- // Copyright © 2016 Dignio. All rights reserved.
- //
- #import "DNModel.h"
- #import <UIKit/UIKit.h>
- typedef NS_ENUM(NSUInteger, DNMeasurementType) {
- DNMeasurementTypeBloodPressure = 1 << 0,
- DNMeasurementTypeTemperature = 1 << 1,
- DNMeasurementTypeBloodGlucose = 1 << 2,
- DNMeasurementTypeBodyWeight = 1 << 3,
- DNMeasurementTypeOxygen = 1 << 4,
- DNMeasurementTypePulse = 1 << 5,
- DNMeasurementTypeFlexRange = 1 << 6,
- DNMeasurementTypePEF = 1 << 7,
- DNMeasurementTypeFEV1 = 1 << 8,
- DNMeasurementTypeSpirometer = 1 << 9,
- DNMeasurementTypeCRP = 1 << 10,
- DNMeasurementTypeWhiteBloodCells = 1 << 11,
- DNMeasurementTypeGlomerularFltRate = 1 << 12,
- DNMeasurementTypeHbA1c = 1 << 13,
- DNMeasurementTypeHemoglobinConcn = 1 << 14,
- DNMeasurementTypePainScale = 1 << 15,
- DNMeasurementTypePAI = 1 << 16,
- DNMeasurementTypeRespiration = 1 << 17,
- DNMeasurementTypeUnknown = 0,
- };
- typedef NS_ENUM(NSUInteger, DNAlertLevel) {
- DNAlertLevelNormal = 1 << 0,
- DNAlertLevelGreen = 1 << 1,
- DNAlertLevelBlue = 1 << 2,
- DNAlertLevelYellow = 1 << 3,
- DNAlertLevelOrange = 1 << 4,
- DNAlertLevelRed = 1 << 5,
- DNAlertLevelUnknown = 1 << 6,
- DNAlertLevelNotSet = 0,
- };
- @interface DNMeasurement : DNModel
- @property (nonatomic, assign) DNMeasurementType type;
- @property (nonatomic, strong) NSDate *time;
- @property (nonatomic, strong) NSDictionary *valueDict;
- @property (nonatomic, strong) NSString *inscription;
- @property (nonatomic, strong) NSNumber *measurementId;
- @property (nonatomic, assign) DNAlertLevel alertLevel;
- -(NSString *) getNoteIfAvailable;
- @end
- @interface DNMeasurement (Utility)
- + (NSDictionary *)typesWithMappedStringKeys;
- + (NSDictionary *)alertLevelWithMappedStringKeys;
- + (NSString *)representableStringLocalized:(DNMeasurementType)type;
- + (NSString *)unitOfValue:(DNMeasurementType)type;
- + (NSInteger)numberOfDecimalPlaces:(DNMeasurementType)type;
- + (NSInteger)chartYAxisRange:(DNMeasurementType)type;
- + (double)normalValueBottom:(DNMeasurementType)type;
- + (double)normalValueTop:(DNMeasurementType)type;
- + (NSString *)imageNameOfDevice:(DNMeasurementType)type;
- + (NSDictionary *)latestValue:(DNMeasurementType)type;
- + (NSDictionary *)latestValueBeforeDate:(DNMeasurementType)type time:(NSDate *)time;
- + (NSArray *)persistAfterFilterLatestMeasurements:(NSArray *)measurements;
- - (NSNumber *)measurementValueByCode:(NSString *)name;
- + (void)addMeasurement:(DNMeasurement *)measurement;
- + (NSArray *)measurementsByType:(DNMeasurementType)type;
- + (NSArray *)measurementsByTypeAfterDate:(DNMeasurementType)type time:(NSDate *)time;
- + (NSArray *)measurementsByTypeBetweenDates:(DNMeasurementType)type start:(NSDate *)start end:(NSDate *)end;
- + (NSString *) getFormattedValueStringForLatestValue:(DNMeasurementType)type;
- + (DNAlertLevel) getAlertLevelForLatestValue:(DNMeasurementType) type;
- + (NSString *)representableStringTranslationKey:(DNMeasurementType)type;
- @end
- @interface DNPostMeasurement : DNMeasurement
- @property (nonatomic, strong) NSString *deviceVendor;
- @property (nonatomic, strong) NSString *deviceModel;
- @property (nonatomic, strong) NSString *deviceSerialNumber;
- @property (nonatomic, strong) NSString *unit;
- @property (nonatomic, strong) NSString *timeZone;
- @property (nonatomic, strong) NSNumber *glucoseValue;
- @property (nonatomic, strong) NSNumber *systolicValue;
- @property (nonatomic, strong) NSNumber *diastolicValue;
- @property (nonatomic, strong) NSNumber *temperatureValue;
- @property (nonatomic, strong) NSNumber *pulseValue;
- @property (nonatomic, strong) NSNumber *oxygenValue;
- @property (nonatomic, strong) NSNumber *weightValue;
- @end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement