A modelling and serializer library for Microsoft Azure IoTHub client applications

Dependents:   sht15_remote_monitoring f767zi_mqtt remote_monitoring simplesample_amqp ... more

This library implements a serializer library to be used in projects involving Microsoft Azure IoT Hub connectivity. The code is replicated from https://github.com/Azure/azure-iot-sdks

Revision:
0:1f9b2707ec7d
Child:
10:c2aee3965a83
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jsonencoder.h	Tue Sep 15 21:57:26 2015 -0700
@@ -0,0 +1,46 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+
+#ifndef JSONENCODER_H
+#define JSONENCODER_H
+
+#include "macro_utils.h"
+#include "strings.h"
+
+#ifdef __cplusplus
+#include "cstddef"
+extern "C" {
+#else
+#include "stddef.h"
+#endif
+
+#include "multitree.h"
+
+#define JSON_ENCODER_RESULT_VALUES           \
+JSON_ENCODER_OK,                             \
+JSON_ENCODER_INVALID_ARG,                    \
+JSON_ENCODER_ALREADY_EXISTS,                 \
+JSON_ENCODER_MULTITREE_ERROR,                \
+JSON_ENCODER_TOSTRING_FUNCTION_ERROR,        \
+JSON_ENCODER_ERROR                          
+
+DEFINE_ENUM(JSON_ENCODER_RESULT, JSON_ENCODER_RESULT_VALUES);
+
+#define JSON_ENCODER_TOSTRING_RESULT_VALUES  \
+JSON_ENCODER_TOSTRING_OK,                    \
+JSON_ENCODER_TOSTRING_INVALID_ARG,           \
+JSON_ENCODER_TOSTRING_ERROR
+
+DEFINE_ENUM(JSON_ENCODER_TOSTRING_RESULT, JSON_ENCODER_TOSTRING_RESULT_VALUES);
+
+typedef JSON_ENCODER_TOSTRING_RESULT(*JSON_ENCODER_TOSTRING_FUNC)(STRING_HANDLE, const void* value);
+
+extern JSON_ENCODER_TOSTRING_RESULT JSONEncoder_CharPtr_ToString(STRING_HANDLE, const void* value);
+extern JSON_ENCODER_RESULT JSONEncoder_EncodeTree(MULTITREE_HANDLE treeHandle, STRING_HANDLE destination, JSON_ENCODER_TOSTRING_FUNC toStringFunc);
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif /* JSONENCODER_H */