Index: firmware/App/Modes/OperationModes.c =================================================================== diff -u -r9ea1971251bb0064e626c21e7d94215114254a98 -r3518e8a088c32e75c0c8960d5e629a7401095feb --- firmware/App/Modes/OperationModes.c (.../OperationModes.c) (revision 9ea1971251bb0064e626c21e7d94215114254a98) +++ firmware/App/Modes/OperationModes.c (.../OperationModes.c) (revision 3518e8a088c32e75c0c8960d5e629a7401095feb) @@ -46,10 +46,10 @@ /// Structure for confirmation request. typedef struct { - GENERIC_CONFIRM_ID_T requestID; ///< Request ID - GENERIC_CONFIRM_COMMAND_T requestType; ///< Request Type - U32 timeStamp; ///< Timestamp for request - CONFIRMATION_REQUEST_STATUS_T status; ///< Request status (pending, accepted, rejected) + GENERIC_CONFIRM_ID_T requestID; ///< Request ID + GENERIC_CONFIRM_COMMAND_T requestType; ///< Request Type + U32 timeStamp; ///< Timestamp for request + CONFIRMATION_REQUEST_STATUS_T status; ///< Request status (pending, accepted, rejected) } CONFIRMATION_REQUEST_T; // ********** private data ********** @@ -91,9 +91,9 @@ /*********************************************************************//** * @brief - * The initOperationModes function initializes the Operation Modes module. - * @details Inputs: none - * @details Outputs: Operation Modes module initialized. + * The initOperationModes function initializes the Operation Modes unit. + * @details \b Inputs: none + * @details \b Outputs: Operation Modes unit initialized. * @return none *************************************************************************/ void initOperationModes( void ) @@ -130,8 +130,9 @@ /*********************************************************************//** * @brief * The execOperationModes function executes the Operation Modes state machine. - * @details Inputs: none - * @details Outputs: currentMode is set by state machine. + * @details \b Alarm: ALARM_ID_TD_SOFTWARE_FAULT if current mode is invalid. + * @details \b Inputs: none + * @details \b Outputs: currentMode is set by state machine. * @return none *************************************************************************/ void execOperationModes( void ) @@ -236,8 +237,9 @@ * The requestNewOperationMode function requests transition to a new * operation mode. The request will be arbitrated when the state machine * is next executed. - * @details Inputs: none - * @details Outputs: modeRequest[] + * @details \b Alarm: ALARM_ID_TD_SOFTWARE_FAULT if given new mode is invalid. + * @details \b Inputs: none + * @details \b Outputs: modeRequest[] * @return none *************************************************************************/ void requestNewOperationMode( TD_OP_MODE_T newMode ) @@ -257,8 +259,8 @@ /*********************************************************************//** * @brief * The getCurrentOperationMode function gets the current operation mode. - * @details Inputs: currentMode - * @details Outputs: none + * @details \b Inputs: currentMode + * @details \b Outputs: none * @return the current operation mode *************************************************************************/ TD_OP_MODE_T getCurrentOperationMode( void ) @@ -269,8 +271,8 @@ /*********************************************************************//** * @brief * The getPreviousOperationMode function gets the previous operation mode. - * @details Inputs: lastMode - * @details Outputs: none + * @details \b Inputs: lastMode + * @details \b Outputs: none * @return the previous operation mode *************************************************************************/ TD_OP_MODE_T getPreviousOperationMode( void ) @@ -281,8 +283,8 @@ /*********************************************************************//** * @brief * The getCurrentSubMode function gets the current operation sub-mode. - * @details Inputs: currentSubMode - * @details Outputs: none + * @details \b Inputs: currentSubMode + * @details \b Outputs: none * @return the current operation sub-mode *************************************************************************/ U32 getCurrentSubMode( void ) @@ -294,8 +296,9 @@ * @brief * The initiateAlarmAction function initiate an alarm or alarm recovery * action according to the current operation mode. - * @details Inputs: currentMode - * @details Outputs: given action forwarded to current operation mode for execution + * @details \b Alarm: ALARM_ID_TD_SOFTWARE_FAULT if given alarm action is invalid. + * @details \b Inputs: currentMode + * @details \b Outputs: given action forwarded to current operation mode for execution * @param action ID of action to be initiated * @return none *************************************************************************/ @@ -338,8 +341,10 @@ * @brief * The arbitrateModeRequest function arbitrates any pending mode transition * requests. - * @details Inputs: modeRequest[] - * @details Outputs: modeRequest[] is reset + * @note Thread protection prevents new mode requests from being made while + * arbitration is in progress. + * @details \b Inputs: modeRequest[] + * @details \b Outputs: modeRequest[] is reset * @return the next operation mode (current mode if no requests pending) *************************************************************************/ static TD_OP_MODE_T arbitrateModeRequest( void ) @@ -376,8 +381,9 @@ * @brief * The transitionToNewOperationMode function calls the transition to function * for a new operation mode that we are transitioning to. - * @details Inputs: none - * @details Outputs: transition function called for new mode + * @details \b Alarm: ALARM_ID_TD_SOFTWARE_FAULT if given new mode is invalid. + * @details \b Inputs: none + * @details \b Outputs: transition function called for new mode * @return none *************************************************************************/ static void transitionToNewOperationMode( TD_OP_MODE_T newMode ) @@ -419,8 +425,8 @@ * @brief * The broadcastOperationMode function sends the current operation mode at * the prescribed interval. - * @details Inputs: broadcastModeIntervalCtr - * @details Outputs: HD operation mode broadcast message sent. + * @details \b Inputs: broadcastModeIntervalCtr + * @details \b Outputs: HD operation mode broadcast message sent. * @return none *************************************************************************/ static void broadcastOperationMode( void ) @@ -439,8 +445,8 @@ /*********************************************************************//** * @brief * The getConfirmationRequestStatus function returns the status of a confirmation request - * @details Inputs: confirmRequests[] - * @details Outputs: confirmRequests[] consumed/cleared if completed. + * @details \b Inputs: confirmRequests[] + * @details \b Outputs: confirmRequests[] consumed/cleared if completed. * @param requestID ID of confirmation being requested * @return Status of given confirmation *************************************************************************/ @@ -505,8 +511,8 @@ /*********************************************************************//** * @brief * The setConfirmationRequestStatus function sets the status of a confirmation request - * @details Inputs: confirmRequests[] - * @details Outputs: confirmRequests[]. + * @details \b Inputs: confirmRequests[] + * @details \b Outputs: confirmRequests[]. * @param requestID ID of confirmation being requested * @param status Status to set for given confirmation (open, close, reject) * @return none @@ -528,8 +534,8 @@ /*********************************************************************//** * @brief * The addConfirmationRequest function sends a confirmation request to UI - * @details Inputs: confirmRequests[] - * @details Outputs: confirmRequests[] new added. + * @details \b Inputs: confirmRequests[] + * @details \b Outputs: confirmRequests[] new added. * @param requestID ID of confirmation being requested * @param requestType Type of confirmation being requested (open, close, reject) * @param rejectReason Reason for reject if type is reject @@ -577,8 +583,8 @@ /*********************************************************************//** * @brief * The setCurrentSubState function sets the current subState. - * @details Inputs: subState - * @details Outputs: currentSubState + * @details \b Inputs: none + * @details \b Outputs: currentSubState * @param subState the enumerated sub state. * @return none *************************************************************************/ @@ -590,8 +596,8 @@ /*********************************************************************//** * @brief * The setCurrent4thLevelState function sets the current 4th level state. - * @details Inputs: state - * @details Outputs: current4thLevelState + * @details \b Inputs: none + * @details \b Outputs: current4thLevelState * @param subState the enumerated sub state. * @return none *************************************************************************/ @@ -604,9 +610,9 @@ * @brief * The sendOperationStatusEvent function constructs and sends an HD operation * status event. - * @details Inputs: currentMode, currentSubMode, currentSubState, current4thLevelState - * @details Outputs: dat1, dat2. - * @param none + * @details \b Message \b Sent: MSG_ID_TD_EVENT + * @details \b Inputs: currentMode, currentSubMode, currentSubState, current4thLevelState + * @details \b Outputs: none * @return none *************************************************************************/ void sendOperationStatusEvent( void ) @@ -637,8 +643,8 @@ * @brief * The testSetOperationMode function will transition to a given operation * mode if the transition is legal. - * @details Inputs: none - * @details Outputs: modeRequest[] + * @details \b Inputs: none + * @details \b Outputs: modeRequest[] * @param newMode ID of requested mode to transition to * @return TRUE if request successful, FALSE if not *************************************************************************/ @@ -665,8 +671,8 @@ * @brief * The testSetOpModePublishIntervalOverride function sets the override of the * operation mode publication interval. - * @details Inputs: none - * @details Outputs: opModePublishInterval + * @details \b Inputs: none + * @details \b Outputs: opModePublishInterval * @param ms milliseconds between operation mode broadcasts * @return TRUE if override set successful, FALSE if not *************************************************************************/ @@ -690,8 +696,8 @@ * @brief * The testResetOpModePublishIntervalOverride function resets the override of the * operation mode data publication interval. - * @details Inputs: none - * @details Outputs: opModePublishInterval + * @details \b Inputs: none + * @details \b Outputs: opModePublishInterval * @return TRUE if override reset successful, FALSE if not *************************************************************************/ BOOL testResetOpModePublishIntervalOverride( void )