8#import <Foundation/Foundation.h>
10NS_ASSUME_NONNULL_BEGIN
16@property (nonatomic, strong, readonly) NSDictionary<NSString *, id> *
dps;
22@property (nonatomic, strong, readonly) NSDictionary<NSString *, NSString *> *
dpName;
23@property (nonatomic, strong, readonly) NSDictionary<NSString *, NSString *> *
displayMsgs;
24@property (nonatomic, strong, readonly) NSString *
schemaExt;
32+ (instancetype)createWithTargetInfo:(
id)targetInfo;
34@property (nonatomic, strong, readonly) id<ThingSmartDpDataSourceProtocol>
dpDataSource;
46- (nullable __kindof
ThingSmartDp *)smartDpWithDpId:(NSInteger)dpId quickOp:(BOOL)quickOp;
49 quickOp:(BOOL)quickOp;
52typedef NS_ENUM(NSInteger, ThingSmartDpType) {
53 ThingSmartDpType_Bool,
54 ThingSmartDpType_Enum,
56 ThingSmartDpType_Light,
57 ThingSmartDpType_String,
62@property (nonatomic, strong, readonly)
id dpValue;
64@property (nonatomic, strong, nullable, readonly) NSString *
displayValue;
65@property (nonatomic, strong, nullable, readonly) NSString *
displayUnit;
76+ (nullable __kindof
ThingSmartDp *)smartDpWithTargetInfo:(
id)targetInfo
78 quickOp:(BOOL)quickOp;
86 quickOp:(BOOL)quickOp;
90@property (nonatomic, strong, readonly) id<ThingSmartDpDataSourceProtocol>
dpDataSource;
94@property (nonatomic, assign, readonly) ThingSmartDpType
smartDpType;
96@property (nonatomic, strong, readonly) NSString *
strategyCode;
98@property (nonatomic, assign, readonly) NSInteger
dpId;
99@property (nonatomic, strong, readonly) NSString *
dpType;
100@property (nonatomic, strong, readonly) NSString *
name;
101@property (nonatomic, strong, readonly) NSString *
iconname;
102@property (nonatomic, strong, readonly) NSString *
unit;
104@property (nonatomic, strong, readonly)
id curDpValue;
107@property (nonatomic, strong, readonly) NSString *
titleStatus;
112- (nullable NSDictionary *)publishCommands:(
id)newDpValue;
116- (NSString *)valueStatusWithDpValue:(
id)dpValue;
123@property (nonatomic, assign, readonly) NSUInteger lightHueMin;
124@property (nonatomic, assign, readonly) NSUInteger lightHueMax;
125@property (nonatomic, assign, readonly) NSUInteger currentLightHue;
126- (NSString *)lightHueDsecLocalizedKey:(NSUInteger)lightHue;
128@property (nonatomic, assign, readonly) NSUInteger lightSaturationMin;
129@property (nonatomic, assign, readonly) NSUInteger lightSaturationMax;
130@property (nonatomic, assign, readonly) NSUInteger currentLightSaturatio;
132@property (nonatomic, assign, readonly) NSUInteger lightValueMin;
133@property (nonatomic, assign, readonly) NSUInteger lightValueMax;
134@property (nonatomic, assign, readonly) NSUInteger currentLightValue;
136@property (nonatomic, assign, readonly) BOOL v2Type;
138- (nullable NSDictionary *)publishCommandsWithLightHue:(NSUInteger)lightHue
139 lightSaturation:(NSUInteger)lightSaturation
140 lightValue:(NSUInteger)lightValue;
145@property (nonatomic, assign, readonly) BOOL switchStatus;
148@property (nonatomic, assign, readonly) BOOL writeOnlySwitch;
150- (nullable NSDictionary *)publishSwitchCommands:(BOOL)open;
NSString * valueStatus
Get 'curDpValue' display content under the current DP.
NSString * standardDpCode
NSString * titleStatus
Get title display content under the current DP.
ThingSmartSchemaModel * schemaModel
SchemaModel of current DP.
ThingSmartDpType smartDpType
id< ThingSmartDpDataSourceProtocol > dpDataSource
DataSource.
Device or Group DP Schema Parser Tool.
ThingSmartSwitchDp * switchDp
Switch DP of the current device (group)
NSArray< __kindof ThingSmartDp * > * allDp
Get all DP of the current device (group), quickOp property is 'NO'.
NSArray< __kindof ThingSmartDp * > * operableDp
Operate DP of the current device (group), quickOp property is 'YES'.
NSArray< __kindof ThingSmartDp * > * displayDp
Display DP of the current device (group) , quickOp property is 'NO'.
id< ThingSmartDpDataSourceProtocol > dpDataSource
DataSource.
NSArray< NSString * > * standardDpCodes
NSString * dpValueDisplayStr()
NSDictionary< NSString *, NSString * > * dpName
NSDictionary< NSString *, NSString * > * displayMsgs
NSDictionary< NSString *, id > * dps
NSArray< NSNumber * > * quickOpDps
ThingSmartStandSchemaModel * standSchemaModel
NSArray< ThingSmartSchemaModel * > * schemaArray
NSArray< NSNumber * > * displayDps
NSArray< NSNumber * > * switchDps