Microsoft Azure IoTHub client libraries
Dependents: sht15_remote_monitoring RobotArmDemo iothub_client_sample_amqp f767zi_mqtt ... more
This library implements the Microsoft Azure IoTHub client library. The code is replicated from https://github.com/Azure/azure-iot-sdks
iothub_transport_ll.h@38:a05929a75111, 2016-04-08 (annotated)
- Committer:
- Azure.IoT Build
- Date:
- Fri Apr 08 13:24:33 2016 -0700
- Revision:
- 38:a05929a75111
- Child:
- 40:1a94db9139ea
1.0.4
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Azure.IoT Build | 38:a05929a75111 | 1 | // Copyright (c) Microsoft. All rights reserved. |
Azure.IoT Build | 38:a05929a75111 | 2 | // Licensed under the MIT license. See LICENSE file in the project root for full license information. |
Azure.IoT Build | 38:a05929a75111 | 3 | |
Azure.IoT Build | 38:a05929a75111 | 4 | #ifndef IOTHUB_TRANSPORT_LL_H |
Azure.IoT Build | 38:a05929a75111 | 5 | #define IOTHUB_TRANSPORT_LL_H |
Azure.IoT Build | 38:a05929a75111 | 6 | |
Azure.IoT Build | 38:a05929a75111 | 7 | #include "azure_c_shared_utility/doublylinkedlist.h" |
Azure.IoT Build | 38:a05929a75111 | 8 | #include "iothub_message.h" |
Azure.IoT Build | 38:a05929a75111 | 9 | #include "iothub_client_ll.h" |
Azure.IoT Build | 38:a05929a75111 | 10 | |
Azure.IoT Build | 38:a05929a75111 | 11 | #ifdef __cplusplus |
Azure.IoT Build | 38:a05929a75111 | 12 | extern "C" |
Azure.IoT Build | 38:a05929a75111 | 13 | { |
Azure.IoT Build | 38:a05929a75111 | 14 | #endif |
Azure.IoT Build | 38:a05929a75111 | 15 | |
Azure.IoT Build | 38:a05929a75111 | 16 | typedef void* TRANSPORT_LL_HANDLE; |
Azure.IoT Build | 38:a05929a75111 | 17 | typedef void* IOTHUB_DEVICE_HANDLE; |
Azure.IoT Build | 38:a05929a75111 | 18 | |
Azure.IoT Build | 38:a05929a75111 | 19 | typedef IOTHUB_CLIENT_RESULT(*pfIoTHubTransport_SetOption)(TRANSPORT_LL_HANDLE handle, const char *optionName, const void* value); |
Azure.IoT Build | 38:a05929a75111 | 20 | typedef TRANSPORT_LL_HANDLE(*pfIoTHubTransport_Create)(const IOTHUBTRANSPORT_CONFIG* config); |
Azure.IoT Build | 38:a05929a75111 | 21 | typedef void (*pfIoTHubTransport_Destroy)(TRANSPORT_LL_HANDLE handle); |
Azure.IoT Build | 38:a05929a75111 | 22 | typedef IOTHUB_DEVICE_HANDLE(*pfIotHubTransport_Register)(TRANSPORT_LL_HANDLE handle, const char* deviceId, const char* deviceKey, IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle, PDLIST_ENTRY waitingToSend); |
Azure.IoT Build | 38:a05929a75111 | 23 | typedef void(*pfIotHubTransport_Unregister)(IOTHUB_DEVICE_HANDLE deviceHandle); |
Azure.IoT Build | 38:a05929a75111 | 24 | typedef int (*pfIoTHubTransport_Subscribe)(IOTHUB_DEVICE_HANDLE handle); |
Azure.IoT Build | 38:a05929a75111 | 25 | typedef void (*pfIoTHubTransport_Unsubscribe)(IOTHUB_DEVICE_HANDLE handle); |
Azure.IoT Build | 38:a05929a75111 | 26 | typedef void (*pfIoTHubTransport_DoWork)(TRANSPORT_LL_HANDLE handle, IOTHUB_CLIENT_LL_HANDLE iotHubClientHandle); |
Azure.IoT Build | 38:a05929a75111 | 27 | typedef IOTHUB_CLIENT_RESULT(*pfIoTHubTransport_GetSendStatus)(IOTHUB_DEVICE_HANDLE handle, IOTHUB_CLIENT_STATUS *iotHubClientStatus); |
Azure.IoT Build | 38:a05929a75111 | 28 | |
Azure.IoT Build | 38:a05929a75111 | 29 | #define TRANSPORT_PROVIDER_FIELDS \ |
Azure.IoT Build | 38:a05929a75111 | 30 | pfIoTHubTransport_SetOption IoTHubTransport_SetOption; \ |
Azure.IoT Build | 38:a05929a75111 | 31 | pfIoTHubTransport_Create IoTHubTransport_Create; \ |
Azure.IoT Build | 38:a05929a75111 | 32 | pfIoTHubTransport_Destroy IoTHubTransport_Destroy; \ |
Azure.IoT Build | 38:a05929a75111 | 33 | pfIotHubTransport_Register IoTHubTransport_Register; \ |
Azure.IoT Build | 38:a05929a75111 | 34 | pfIotHubTransport_Unregister IoTHubTransport_Unregister; \ |
Azure.IoT Build | 38:a05929a75111 | 35 | pfIoTHubTransport_Subscribe IoTHubTransport_Subscribe; \ |
Azure.IoT Build | 38:a05929a75111 | 36 | pfIoTHubTransport_Unsubscribe IoTHubTransport_Unsubscribe; \ |
Azure.IoT Build | 38:a05929a75111 | 37 | pfIoTHubTransport_DoWork IoTHubTransport_DoWork; \ |
Azure.IoT Build | 38:a05929a75111 | 38 | pfIoTHubTransport_GetSendStatus IoTHubTransport_GetSendStatus /*there's an intentional missing ; on this line*/ \ |
Azure.IoT Build | 38:a05929a75111 | 39 | |
Azure.IoT Build | 38:a05929a75111 | 40 | typedef struct TRANSPORT_PROVIDER_TAG |
Azure.IoT Build | 38:a05929a75111 | 41 | { |
Azure.IoT Build | 38:a05929a75111 | 42 | TRANSPORT_PROVIDER_FIELDS; |
Azure.IoT Build | 38:a05929a75111 | 43 | }TRANSPORT_PROVIDER; |
Azure.IoT Build | 38:a05929a75111 | 44 | |
Azure.IoT Build | 38:a05929a75111 | 45 | #ifdef __cplusplus |
Azure.IoT Build | 38:a05929a75111 | 46 | } |
Azure.IoT Build | 38:a05929a75111 | 47 | #endif |
Azure.IoT Build | 38:a05929a75111 | 48 | |
Azure.IoT Build | 38:a05929a75111 | 49 | #endif /* IOTHUB_TRANSPORT_LL_H */ |