ConfigControllerBase.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. //
  2. // RecordSettingViewController.h
  3. // XMFamily
  4. //
  5. // Created by hzjf on 14-8-27.
  6. // Copyright (c) 2014年 hzjf. All rights reserved.
  7. //
  8. /***
  9. SDK初始化类,这几个文件是调用大部分sdk接口所必须要使用或者继承之后使用的父类
  10. BaseViewController 普通的视图控制器或者功能类如果要使用FunSDK的json接口,可以继承自这个类,包括FUN_DevGetConfig_Json和FUN_DevSetConfig_Json接口 (在这个demo中,大部分的json接口都已经封装,可以直接使用对应的config类文件)
  11. *****/
  12. #import <UIKit/UIKit.h>
  13. #import "FunSDK/JObject.h"
  14. #import "BaseViewController.h"
  15. #define CFG_GET 0x1
  16. #define CFG_SET 0x2
  17. #define CFG_GET_SET 0x3
  18. @interface CfgParam:NSObject{
  19. }
  20. @property (nonatomic, copy) NSString* name;
  21. @property (nonatomic, copy) NSString* devId;
  22. @property (nonatomic, assign) NSInteger channel;
  23. @property (nonatomic) JObject* cfg;
  24. @property (nonatomic, copy) NSString* cfgTmp;
  25. @property (nonatomic, assign) BOOL isGet;
  26. @property (nonatomic, assign) BOOL isSet;
  27. @property (nonatomic, assign) BOOL isOnce;
  28. @property (nonatomic, assign) BOOL isSaveLocal;
  29. @property (nonatomic, assign) NSInteger errorCode;
  30. @property (nonatomic, assign) NSInteger typeInfo;
  31. @property (nonatomic, copy) NSString* errorInfo;
  32. @property (nonatomic, assign) NSInteger param2;
  33. @property (nonatomic, copy) NSMutableArray* autoUJ;
  34. @property (nonatomic, copy) NSString* cmdString;
  35. @property (nonatomic, assign) NSInteger cmdGet;
  36. @property (nonatomic, assign) NSInteger cmdSet;
  37. -(instancetype)initWithName:(NSString *)name andDevId:(NSString *)devId andChannel:(NSInteger)channel andConfig:(JObject *)cfg andOnce:(BOOL)once andSaveLocal:(BOOL)savalocal;
  38. -(void)setAutoUJ:(NSMutableArray *)autoUJ;
  39. -(int)UpdateToUI;
  40. -(int)UpdateToJson;
  41. +(instancetype)initWithName:(NSString *)devId andConfig:(JObject *)cfg andChannel:(NSInteger)channel andCfgType:(int)nCfgType;
  42. @end
  43. typedef enum EUI_TYPE{
  44. EUI_Unkown,
  45. EUI_Lable,
  46. EUI_Switch,
  47. EUI_CommBox_Str,
  48. EUI_CommBox_Int,
  49. EUI_Slider_Value,
  50. }EUI_TYPE;
  51. @interface UJObject : NSObject{
  52. }
  53. @property (nonatomic, strong) NSObject *pUI;
  54. @property (nonatomic, assign) JObject *pJson;
  55. @property (nonatomic, assign) EUI_TYPE type;
  56. @property (nonatomic, strong) NSMutableArray *param;
  57. @property (nonatomic, assign) int intValueType;
  58. -(int)UpdateToUI;
  59. -(int)UpdateToJson;
  60. +(instancetype)init:(NSObject *)ui UIType:(EUI_TYPE)type JsonObj:(JObject *)json type:(int)intValuetype;
  61. +(instancetype)init:(NSObject *)ui JsonObj:(JObject *)json;
  62. +(instancetype)init:(NSObject *)ui JsonObj:(JObject *)json intValueType:(int)type;
  63. @end
  64. @interface ConfigControllerBase : BaseViewController
  65. @property (nonatomic, copy) NSString* devID; //设备id
  66. @property (nonatomic, assign) int channel; //通道号
  67. @property (nonatomic) JObject *config;
  68. @property (nonatomic, strong) NSMutableArray *commboxArray;//数据和控件关联所需的控件数组
  69. @property (nonatomic, strong) NSMutableDictionary* cfgs;
  70. @property (nonatomic, strong) NSMutableDictionary* cmds;
  71. @property (nonatomic) int nGetCfgCount;
  72. @property (nonatomic) int nSetCfgCount;
  73. - (void)AddConfig:(CfgParam *)param;
  74. - (void)RemoveConfig:(NSString *)name;
  75. - (void)RemoveAllConfig;
  76. - (CfgParam *)GetConfigParam:(NSString *)name;
  77. - (int)GetConfig;
  78. - (int)GetConfig:(NSString *)name;
  79. - (int)SetConfig:(NSString *)name timeOut:(NSInteger)time;
  80. - (int)SetConfig;
  81. - (int)SetConfig:(NSString *)name;
  82. - (void)OnGetConfig:(CfgParam *)param;
  83. - (void)OnInitAutoUI:(CfgParam *)param;
  84. - (void)OnSetConfig:(CfgParam *)param;
  85. - (void)OnFunSDKResult:(NSNumber *)pParam;
  86. - (void)AddCmdfig:(CfgParam *)param;
  87. - (void)RemoveCmdfig:(NSString *)name;
  88. - (void)RemoveAllCmdfig;
  89. - (CfgParam *)GetCmdfigParam:(NSString *)name;
  90. //- (int)GetCmdfig;
  91. //- (int)GetCmdfig:(NSString *)name;
  92. //- (int)SetCmdfig:(NSString *)name timeOut:(NSInteger)time;
  93. //- (int)SetCmdfig;
  94. //- (int)SetCmdfig:(NSString *)name;
  95. - (id)CMD_Result:(NSNumber *) pParam Name:(NSString*)name;
  96. @end