corrected version (with typedef struct IOTHUB_CLIENT_LL_UPLOADTOBLOB_HANDLE_DATA* IOTHUB_CLIENT_LL_UPLOADTOBLOB_HANDLE;) included in the sources

Dependents:   STM32F746_iothub_client_sample_mqtt

Fork of iothub_client by Azure IoT

Revision:
0:e393db310d89
Child:
9:3ec7e2695f98
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/iothub_client_ll.h	Tue Sep 15 21:47:12 2015 -0700
@@ -0,0 +1,83 @@
+// Copyright (c) Microsoft. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+
+#ifndef IOTHUB_CLIENT_LL_H
+#define IOTHUB_CLIENT_LL_H
+
+#include "agenttime.h"
+
+#include "macro_utils.h"
+
+#include "iothub_message.h"
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+#define IOTHUB_CLIENT_RESULT_VALUES       \
+    IOTHUB_CLIENT_OK,                     \
+    IOTHUB_CLIENT_INVALID_ARG,            \
+    IOTHUB_CLIENT_ERROR,                  \
+    IOTHUB_CLIENT_INVALID_SIZE,           \
+    IOTHUB_CLIENT_INDEFINITE_TIME         \
+
+DEFINE_ENUM(IOTHUB_CLIENT_RESULT, IOTHUB_CLIENT_RESULT_VALUES);
+
+#define IOTHUB_CLIENT_CONFIRMATION_RESULT_VALUES     \
+    IOTHUB_CLIENT_CONFIRMATION_OK,                   \
+    IOTHUB_CLIENT_CONFIRMATION_BECAUSE_DESTROY,      \
+    IOTHUB_CLIENT_CONFIRMATION_ERROR                 \
+
+DEFINE_ENUM(IOTHUB_CLIENT_CONFIRMATION_RESULT, IOTHUB_CLIENT_CONFIRMATION_RESULT_VALUES);
+
+#define IOTHUB_CLIENT_STATUS_VALUES       \
+    IOTHUB_CLIENT_SEND_STATUS_IDLE,       \
+    IOTHUB_CLIENT_SEND_STATUS_BUSY        \
+
+DEFINE_ENUM(IOTHUB_CLIENT_STATUS, IOTHUB_CLIENT_STATUS_VALUES);
+
+#define TRANSPORT_TYPE_VALUES \
+    TRANSPORT_LL, /*LL comes from "LowLevel" */ \
+    TRANSPORT_THREADED
+
+DEFINE_ENUM(TRANSPORT_TYPE, TRANSPORT_TYPE_VALUES);
+
+#define IOTHUBMESSAGE_DISPOSITION_RESULT_VALUES \
+    IOTHUBMESSAGE_ACCEPTED, \
+    IOTHUBMESSAGE_REJECTED, \
+    IOTHUBMESSAGE_ABANDONED
+
+DEFINE_ENUM(IOTHUBMESSAGE_DISPOSITION_RESULT, IOTHUBMESSAGE_DISPOSITION_RESULT_VALUES);
+
+typedef void* IOTHUB_CLIENT_LL_HANDLE;
+typedef void(*IOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK)(IOTHUB_CLIENT_CONFIRMATION_RESULT result, void* userContextCallback);
+typedef IOTHUBMESSAGE_DISPOSITION_RESULT (*IOTHUB_CLIENT_NOTIFICATION_CALLBACK_ASYNC)(IOTHUB_MESSAGE_HANDLE notificationMessage, void* userContextCallback);
+typedef const void*(*IOTHUB_CLIENT_TRANSPORT_PROVIDER)(void);
+
+typedef struct IOTHUB_CLIENT_CONFIG_TAG
+{
+    IOTHUB_CLIENT_TRANSPORT_PROVIDER protocol;
+    const char* deviceId;
+    const char* deviceKey;
+    const char* iotHubName;
+    const char* iotHubSuffix;
+    const char* protocolGatewayHostName;
+} IOTHUB_CLIENT_CONFIG;
+
+extern IOTHUB_CLIENT_LL_HANDLE IoTHubClient_LL_CreateFromConnectionString(const char* connectionString, IOTHUB_CLIENT_TRANSPORT_PROVIDER protocol);
+extern IOTHUB_CLIENT_LL_HANDLE IoTHubClient_LL_Create(const IOTHUB_CLIENT_CONFIG* config);
+extern void IoTHubClient_LL_Destroy(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle);
+
+extern IOTHUB_CLIENT_RESULT IoTHubClient_LL_SendEventAsync(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_MESSAGE_HANDLE eventMessageHandle, IOTHUB_CLIENT_EVENT_CONFIRMATION_CALLBACK eventConfirmationCallback, void* userContextCallback);
+extern IOTHUB_CLIENT_RESULT IoTHubClient_LL_GetSendStatus(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_CLIENT_STATUS *iotHubClientStatus);
+extern IOTHUB_CLIENT_RESULT IoTHubClient_LL_SetNotificationCallback(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, IOTHUB_CLIENT_NOTIFICATION_CALLBACK_ASYNC notificationCallback, void* userContextCallback);
+extern IOTHUB_CLIENT_RESULT IoTHubClient_LL_GetLastNotificationReceiveTime(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, time_t* lastNotificationReceiveTime);
+extern void IoTHubClient_LL_DoWork(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle);
+extern IOTHUB_CLIENT_RESULT IoTHubClient_LL_SetOption(IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, const char* optionName, const void* value);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* IOTHUB_CLIENT_LL_H */