The Cayenne MQTT mbed Library provides functions to easily connect to the Cayenne IoT project builder.

Fork of Cayenne-MQTT-mbed by myDevicesIoT

Revision:
1:90dccf306268
Parent:
0:09ef59d2d0f7
Child:
6:82e142a864ad
--- a/src/CayenneUtils/CayenneDataArray.h	Fri Oct 07 17:21:45 2016 +0000
+++ b/src/CayenneUtils/CayenneDataArray.h	Fri Oct 07 22:24:51 2016 +0000
@@ -26,14 +26,26 @@
 
 namespace Cayenne
 {
+	/**
+	* @class DataArray
+	* Class for manipulating a data array of unit/value pairs.
+	* @param BUFFER_SIZE Maximum buffer size to use for data array, in bytes.
+	* @param MAX_VALUES Maximum number of unit/value pairs in the array.
+	*/
 	template<int BUFFER_SIZE = CAYENNE_MAX_MESSAGE_SIZE, int MAX_VALUES = CAYENNE_MAX_MESSAGE_VALUES>
 	class DataArray
 	{
 	public:
+		/**
+		* Construct an empty array. 
+		*/
 		DataArray() {
 			clear();
 		}
 
+		/**
+		* Clear the array.
+		*/
 		void clear() {
 			for (int i = 0; i < CAYENNE_MAX_MESSAGE_VALUES; ++i) {
 				_values[i].unit = NULL;
@@ -43,6 +55,13 @@
 			_index = 0;
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		* @param[in] unitInFlash If true the unit string is in flash memory, otherwise false.
+		* @param[in] valueInFlash If true the value string is in flash memory, otherwise false.
+		*/
 		void add(const char* unit, const char* value, bool unitInFlash = false, bool valueInFlash = false) {
 			if (_valueCount >= CAYENNE_MAX_MESSAGE_VALUES)
 				return;
@@ -79,6 +98,11 @@
 			_valueCount++;
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const char* unit, const int value) {
 			char str[2 + 8 * sizeof(value)];
 #if defined(__AVR__) || defined (ARDUINO_ARCH_ARC32)
@@ -89,6 +113,11 @@
 			add(unit, str);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const char* unit, const unsigned int value) {
 			char str[1 + 8 * sizeof(value)];
 #if defined(__AVR__) || defined (ARDUINO_ARCH_ARC32)
@@ -99,6 +128,11 @@
 			add(unit, str);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const char* unit, const long value) {
 			char str[2 + 8 * sizeof(value)];
 #if defined(__AVR__) || defined (ARDUINO_ARCH_ARC32)
@@ -109,6 +143,11 @@
 			add(unit, str);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const char* unit, const unsigned long value) {
 			char str[1 + 8 * sizeof(value)];
 #if defined(__AVR__) || defined (ARDUINO_ARCH_ARC32)
@@ -120,13 +159,22 @@
 		}
 
 #if defined(__AVR__) || defined (ARDUINO_ARCH_ARC32)
-
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const char* unit, const float value) {
 			char str[33];
 			dtostrf(value, 5, 3, str);
 			add(unit, str);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const char* unit, const double value) {
 			char str[33];
 			dtostrf(value, 5, 3, str);
@@ -134,13 +182,22 @@
 		}
 
 #else
-
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const char* unit, const float value) {
 			char str[33];
 			snprintf(str, 33, "%2.3f", value);
 			add(unit, str);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const char* unit, const double value) {
 			char str[33];
 			snprintf(str, 33, "%2.3f", value);
@@ -150,53 +207,97 @@
 #endif
 
 #ifdef CAYENNE_USING_PROGMEM
-
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		void add(const char* unit, const __FlashStringHelper* value) {
 			const char* valueString = reinterpret_cast<const char *>(value);
 			add(unit, valueString, false, true);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		void add(const __FlashStringHelper* unit, const char* value) {
 			const char* unitString = reinterpret_cast<const char *>(unit);
 			add(unitString, value, true, false);
 		}
-
+		
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		void add(const __FlashStringHelper* unit, const __FlashStringHelper* value) {
 			const char* unitString = reinterpret_cast<const char *>(unit);
 			const char* valueString = reinterpret_cast<const char *>(value);
 			add(unitString, valueString, true, true);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const __FlashStringHelper* unit, const int value) {
 			char str[2 + 8 * sizeof(value)];
 			itoa(value, str, 10);
 			add(unit, str);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const __FlashStringHelper* unit, const unsigned int value) {
 			char str[1 + 8 * sizeof(value)];
 			utoa(value, str, 10);
 			add(unit, str);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const __FlashStringHelper* unit, const long value) {
 			char str[2 + 8 * sizeof(value)];
 			ltoa(value, str, 10);
 			add(unit, str);
 		}
-
+		
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const __FlashStringHelper* unit, const unsigned long value) {
 			char str[1 + 8 * sizeof(value)];
 			ultoa(value, str, 10);
 			add(unit, str);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const __FlashStringHelper* unit, const float value) {
 			char str[33];
 			dtostrf(value, 5, 3, str);
 			add(unit, str);
 		}
 
+		/**
+		* Add the specified unit/value pair to the array.
+		* @param[in] unit The unit to add.
+		* @param[in] value The value to add.
+		*/
 		inline void add(const __FlashStringHelper* unit, const double value) {
 			char str[33];
 			dtostrf(value, 5, 3, str);
@@ -204,11 +305,18 @@
 		}
 
 #endif
-
+		/**
+		* Get the unit/value pair array.
+		* @return Pointer to the array.
+		*/
 		const CayenneValuePair* getArray() const {
 			return _values;
 		}
 
+		/**
+		* Get the number of items in the unit/value pair array.
+		* @return Count of items.
+		*/
     	size_t getCount() const {
 			return _valueCount;
 		}