/************************************************************************** * * Copyright (c) 2024-2025 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file MsgQueues.h * * @author (last) Vinayakam Mani * @date (last) 30-Aug-2024 * * @author (original) Vinayakam Mani * @date (original) 07-Aug-2024 * ***************************************************************************/ #ifndef __MSG_QUEUES_H__ #define __MSG_QUEUES_H__ #include "DDCommon.h" #include "CommBuffers.h" #include "MessageSupport.h" /** * @defgroup MsgQueues MsgQueues * @brief Message queues service unit. Provides message queue functionality * including support functions for adding and getting a message. * * @addtogroup MsgQueues * @{ */ // ********** public definitions ********** /// List of message queues. typedef enum Msg_Queues { MSG_Q_IN = 0, ///< Incoming message queue NUM_OF_MSG_QUEUES ///< Number of message queues } MSG_QUEUE_T; // ********** public function prototypes ********** void initMsgQueues( void ); BOOL addToMsgQueue( MSG_QUEUE_T queue, MESSAGE_WRAPPER_T *msg ); BOOL getFromMsgQueue( MSG_QUEUE_T queue, MESSAGE_WRAPPER_T *msg ); BOOL isMsgQueueEmpty( MSG_QUEUE_T queue ); BOOL isMsgQueueFull( MSG_QUEUE_T queue ); void blankMessage( MESSAGE_T *message ); void blankMessageInWrapper( MESSAGE_WRAPPER_T *message ); /**@}*/ #endif