Index: TestSupport.c =================================================================== diff -u -r6520e649188757399c2dfd58a30af80d96256295 -rb8c0a53bcfa6be12c305761b0b1b5c79e97b55ca --- TestSupport.c (.../TestSupport.c) (revision 6520e649188757399c2dfd58a30af80d96256295) +++ TestSupport.c (.../TestSupport.c) (revision b8c0a53bcfa6be12c305761b0b1b5c79e97b55ca) @@ -15,8 +15,8 @@ * ***************************************************************************/ -#include #include "Common.h" +#include "Messaging.h" #include "Timers.h" /** @@ -147,6 +147,56 @@ return result; } +/*********************************************************************//** + * @brief + * The getOverridePayloadFromMessage function extracts the override payload + * record from a given override message. + * @details \b Inputs: none + * @details \b Outputs: none + * @param message Pointer to an override message + * @param override Pointer to override payload record to populate from the + * given override message. + * @return Type of override received + *************************************************************************/ +OVERRIDE_TYPE_T getOverridePayloadFromMessage( MESSAGE_T *message, TEST_OVERRIDE_PAYLOAD_T *override ) +{ + OVERRIDE_TYPE_T reset = OVERRIDE_INVALID; + + // Verify payload length + if ( sizeof(TEST_OVERRIDE_PAYLOAD_T) == message->hdr.payloadLen ) + { + memcpy( override, message->payload, sizeof(TEST_OVERRIDE_PAYLOAD_T) ); + reset = ( TRUE == override->reset ? OVERRIDE_RESET_OVERRIDE : OVERRIDE_OVERRIDE ); + } + + return reset; +} + +/*********************************************************************//** + * @brief + * The getOverrideArrayPayloadFromMessage function extracts the override array + * payload record from a given override array message. + * @details \b Inputs: none + * @details \b Outputs: none + * @param message Pointer to an override message + * @param override Pointer to override array payload record to populate from the + * given override array message. + * @return Type of override received + *************************************************************************/ +OVERRIDE_TYPE_T getOverrideArrayPayloadFromMessage( MESSAGE_T *message, TEST_OVERRIDE_ARRAY_PAYLOAD_T *override ) +{ + OVERRIDE_TYPE_T reset = OVERRIDE_INVALID; + + // Verify payload length + if ( sizeof(TEST_OVERRIDE_ARRAY_PAYLOAD_T) == message->hdr.payloadLen ) + { + memcpy( override, message->payload, sizeof(TEST_OVERRIDE_ARRAY_PAYLOAD_T) ); + reset = ( TRUE == override->reset ? OVERRIDE_RESET_OVERRIDE : OVERRIDE_OVERRIDE ); + } + + return reset; +} + // ********** Release software configurations functions ********** /*********************************************************************//**