|
39 | 39 | #include "property/types/CloudWrapperBool.h" |
40 | 40 | #include "property/types/CloudWrapperFloat.h" |
41 | 41 | #include "property/types/CloudWrapperInt.h" |
42 | | -#include "property/types/CloudWrapperUnsignedInt.h" |
43 | 42 | #include "property/types/CloudWrapperString.h" |
44 | 43 |
|
45 | 44 | #include "utility/time/TimeService.h" |
@@ -108,40 +107,73 @@ class ArduinoIoTCloudClass |
108 | 107 | /* The following methods are used for non-LoRa boards which can use the |
109 | 108 | * name of the property to identify a given property within a CBOR message. |
110 | 109 | */ |
111 | | - |
112 | | - void addPropertyReal(Property& property, String name, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
113 | | - void addPropertyReal(bool& property, String name, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
114 | | - void addPropertyReal(float& property, String name, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
115 | | - void addPropertyReal(int& property, String name, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
116 | | - void addPropertyReal(unsigned int& property, String name, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
117 | | - void addPropertyReal(String& property, String name, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
118 | | - |
119 | | - Property& addPropertyReal(Property& property, String name, Permission const permission); |
120 | | - Property& addPropertyReal(bool& property, String name, Permission const permission); |
121 | | - Property& addPropertyReal(float& property, String name, Permission const permission); |
122 | | - Property& addPropertyReal(int& property, String name, Permission const permission); |
123 | | - Property& addPropertyReal(unsigned int& property, String name, Permission const permission); |
124 | | - Property& addPropertyReal(String& property, String name, Permission const permission); |
| 110 | + template <typename T> void addPropertyReal(T& property, String name, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) |
| 111 | + { |
| 112 | + addPropertyReal(property, name, -1, permission_type, seconds, fn, minDelta, synFn); |
| 113 | + } |
| 114 | + template <typename T> Property& addPropertyReal(T& property, String name, Permission const permission) |
| 115 | + { |
| 116 | + return addPropertyReal(property, name, -1, permission); |
| 117 | + } |
125 | 118 |
|
126 | 119 | /* The following methods are for MKR WAN 1300/1310 LoRa boards since |
127 | 120 | * they use a number to identify a given property within a CBOR message. |
128 | 121 | * This approach reduces the required amount of data which is of great |
129 | 122 | * important when using LoRa. |
130 | 123 | */ |
131 | | - |
132 | | - void addPropertyReal(Property& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
133 | | - void addPropertyReal(bool& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
134 | | - void addPropertyReal(float& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
135 | | - void addPropertyReal(int& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
136 | | - void addPropertyReal(unsigned int& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
137 | | - void addPropertyReal(String& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))); |
138 | | - |
139 | | - Property& addPropertyReal(Property& property, String name, int tag, Permission const permission); |
140 | | - Property& addPropertyReal(bool& property, String name, int tag, Permission const permission); |
141 | | - Property& addPropertyReal(float& property, String name, int tag, Permission const permission); |
142 | | - Property& addPropertyReal(int& property, String name, int tag, Permission const permission); |
143 | | - Property& addPropertyReal(unsigned int& property, String name, int tag, Permission const permission); |
| 124 | + template <typename T> __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(T& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) |
| 125 | + { |
| 126 | + Property* p = new CloudWrapperInt<T>(property); |
| 127 | + addPropertyRealInternal(*p, name, tag, permission_type, seconds, fn, minDelta, synFn); |
| 128 | + } |
| 129 | + template <typename T> __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudInt<T>& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS) |
| 130 | + { |
| 131 | + addPropertyRealInternal(property, name, tag, permission_type, seconds, fn, minDelta, synFn); |
| 132 | + } |
| 133 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(String& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 134 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(Property& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 135 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudBool& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 136 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudColor& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 137 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudColoredLight& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 138 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudContactSensor& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 139 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudDimmedLight& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 140 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudFloat& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 141 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudLight& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 142 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudLocation& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 143 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudMotionSensor& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 144 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudSchedule& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 145 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudSmartPlug& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 146 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudString& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 147 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudSwitch& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 148 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudTelevision& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 149 | + __attribute__((deprecated("Use addProperty(property, Permission::ReadWrite) instead."))) void addPropertyReal(CloudTemperatureSensor& property, String name, int tag, permissionType permission_type = READWRITE, long seconds = ON_CHANGE, void(*fn)(void) = NULL, float minDelta = 0.0f, void(*synFn)(Property & property) = CLOUD_WINS); |
| 150 | + |
| 151 | + template <typename T> Property& addPropertyReal(T& property, String name, int tag, Permission const permission) |
| 152 | + { |
| 153 | + Property* p = new CloudWrapperInt<T>(property); |
| 154 | + return addPropertyToContainer(getThingPropertyContainer(), *p, name, permission, tag); |
| 155 | + } |
| 156 | + template <typename T> Property& addPropertyReal(CloudInt<T>& property, String name, int tag, Permission const permission) |
| 157 | + { |
| 158 | + return addPropertyToContainer(getThingPropertyContainer(), property, name, permission, tag); |
| 159 | + } |
144 | 160 | Property& addPropertyReal(String& property, String name, int tag, Permission const permission); |
| 161 | + Property& addPropertyReal(Property& property, String name, int tag, Permission const permission); |
| 162 | + Property& addPropertyReal(CloudBool& property, String name, int tag, Permission const permission); |
| 163 | + Property& addPropertyReal(CloudColor& property, String name, int tag, Permission const permission); |
| 164 | + Property& addPropertyReal(CloudColoredLight& property, String name, int tag, Permission const permission); |
| 165 | + Property& addPropertyReal(CloudContactSensor& property, String name, int tag, Permission const permission); |
| 166 | + Property& addPropertyReal(CloudDimmedLight& property, String name, int tag, Permission const permission); |
| 167 | + Property& addPropertyReal(CloudFloat& property, String name, int tag, Permission const permission); |
| 168 | + Property& addPropertyReal(CloudLight& property, String name, int tag, Permission const permission); |
| 169 | + Property& addPropertyReal(CloudLocation& property, String name, int tag, Permission const permission); |
| 170 | + Property& addPropertyReal(CloudMotionSensor& property, String name, int tag, Permission const permission); |
| 171 | + Property& addPropertyReal(CloudSchedule& property, String name, int tag, Permission const permission); |
| 172 | + Property& addPropertyReal(CloudSmartPlug& property, String name, int tag, Permission const permission); |
| 173 | + Property& addPropertyReal(CloudString& property, String name, int tag, Permission const permission); |
| 174 | + Property& addPropertyReal(CloudSwitch& property, String name, int tag, Permission const permission); |
| 175 | + Property& addPropertyReal(CloudTelevision& property, String name, int tag, Permission const permission); |
| 176 | + Property& addPropertyReal(CloudTemperatureSensor& property, String name, int tag, Permission const permission); |
145 | 177 |
|
146 | 178 | protected: |
147 | 179 |
|
|
0 commit comments