27#ifndef CORE_MQTT_AGENT_COMMAND_FUNCTIONS_H 
   28#define CORE_MQTT_AGENT_COMMAND_FUNCTIONS_H 
   64#ifndef MQTT_AGENT_FUNCTION_TABLE 
   66    #if defined( __STDC_VERSION__ ) && ( __STDC_VERSION__ >= 199901L ) 
   67        #define MQTT_AGENT_FUNCTION_TABLE               \ 
   69        [ NONE ] = MQTTAgentCommand_ProcessLoop,        \ 
   70        [ PROCESSLOOP ] = MQTTAgentCommand_ProcessLoop, \ 
   71        [ PUBLISH ] = MQTTAgentCommand_Publish,         \ 
   72        [ SUBSCRIBE ] = MQTTAgentCommand_Subscribe,     \ 
   73        [ UNSUBSCRIBE ] = MQTTAgentCommand_Unsubscribe, \ 
   74        [ PING ] = MQTTAgentCommand_Ping,               \ 
   75        [ CONNECT ] = MQTTAgentCommand_Connect,         \ 
   76        [ DISCONNECT ] = MQTTAgentCommand_Disconnect,   \ 
   77        [ TERMINATE ] = MQTTAgentCommand_Terminate      \ 
   83        #define MQTT_AGENT_FUNCTION_TABLE \ 
   85        MQTTAgentCommand_ProcessLoop,     \ 
   86        MQTTAgentCommand_ProcessLoop,     \ 
   87        MQTTAgentCommand_Publish,         \ 
   88        MQTTAgentCommand_Subscribe,       \ 
   89        MQTTAgentCommand_Unsubscribe,     \ 
   90        MQTTAgentCommand_Ping,            \ 
   91        MQTTAgentCommand_Connect,         \ 
   92        MQTTAgentCommand_Disconnect,      \ 
   93        MQTTAgentCommand_Terminate        \ 
  105typedef struct MQTTAgentCommandFuncReturns
 
  179                                         void * pVoidSubscribeArgs,
 
  196                                           void * pVoidSubscribeArgs,
 
  211                                       void * pVoidConnectArgs,
 
Functions for running a coreMQTT client in a dedicated thread.
 
MQTTStatus_t MQTTAgentCommand_Publish(MQTTAgentContext_t *pMqttAgentContext, void *pPublishArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a PUBLISH command.
Definition: core_mqtt_agent_command_functions.c:60
 
MQTTStatus_t MQTTAgentCommand_Ping(MQTTAgentContext_t *pMqttAgentContext, void *pUnusedArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a PING command.
Definition: core_mqtt_agent_command_functions.c:202
 
MQTTStatus_t MQTTAgentCommand_Terminate(MQTTAgentContext_t *pMqttAgentContext, void *pUnusedArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a TERMINATE command. Calls MQTTAgent_CancelAll to terminate all unfinished co...
Definition: core_mqtt_agent_command_functions.c:224
 
MQTTStatus_t MQTTAgentCommand_Disconnect(MQTTAgentContext_t *pMqttAgentContext, void *pUnusedArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a DISCONNECT command.
Definition: core_mqtt_agent_command_functions.c:181
 
MQTTStatus_t MQTTAgentCommand_Connect(MQTTAgentContext_t *pMqttAgentContext, void *pVoidConnectArgs, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a CONNECT command.
Definition: core_mqtt_agent_command_functions.c:147
 
MQTTStatus_t MQTTAgentCommand_Subscribe(MQTTAgentContext_t *pMqttAgentContext, void *pVoidSubscribeArgs, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a SUBSCRIBE command.
Definition: core_mqtt_agent_command_functions.c:91
 
MQTTStatus_t MQTTAgentCommand_ProcessLoop(MQTTAgentContext_t *pMqttAgentContext, void *pUnusedArg, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for a NONE command. This function does not call MQTT_ProcessLoop itself,...
Definition: core_mqtt_agent_command_functions.c:44
 
MQTTStatus_t MQTTAgentCommand_Unsubscribe(MQTTAgentContext_t *pMqttAgentContext, void *pVoidSubscribeArgs, MQTTAgentCommandFuncReturns_t *pReturnFlags)
Function to execute for an UNSUBSCRIBE command.
Definition: core_mqtt_agent_command_functions.c:119
 
MQTTStatus_t(* MQTTAgentCommandFunc_t)(MQTTAgentContext_t *pMqttAgentContext, void *pArgs, MQTTAgentCommandFuncReturns_t *pFlags)
Function prototype for a command.
Definition: core_mqtt_agent_command_functions.h:125
 
A structure of values and flags expected to be returned by command functions.
Definition: core_mqtt_agent_command_functions.h:106
 
bool addAcknowledgment
Flag to indicate an acknowledgment should be tracked.
Definition: core_mqtt_agent_command_functions.h:109
 
bool runProcessLoop
Flag to indicate MQTT_ProcessLoop() should be called after this command.
Definition: core_mqtt_agent_command_functions.h:110
 
uint16_t packetId
Packet ID of packet sent by command.
Definition: core_mqtt_agent_command_functions.h:107
 
bool endLoop
Flag to indicate command loop should terminate.
Definition: core_mqtt_agent_command_functions.h:108
 
Information used by each MQTT agent. A context will be initialized by MQTTAgent_Init(),...
Definition: core_mqtt_agent.h:153