PxMsgRelDataAccess()

Release the access to the data area of a message (task service).

APPLIES TO

1.0.0

SYNOPSIS
PxError_t PxMsgRelDataAccess (PxMsg_t msgid);
ARGUMENTS
msgid

Message object

ERROR CODES

PXERR_MSG_ILLMSG

msgid is not a valid message object

PXERR_MSG_ILLUSER

The calling task is not user of this message

PXERR_PROT_ILL_HANDLE

The associated protection handle is not valid

PXERR_REQUEST_INVALID_PARAMETER

Request with invalid parameter

PXERR_ILL_NULLPOINTER_PARAMETER

Illegal null pointer parameter in the call

PXERR_PROT_ILL_SIZE

The size of the protection region is not valid

PXERR_PROT_ILL_ALIGN

Alignment of protection region is not valid

DESCRIPTION

PxMsgRelDataAccess releases the access to the data area of the message msgid. It is required that the calling task is the current user of msg. After calling PxMsgRelDataAccess no access to the data area of the message msg is possible. The access right may be recovered through PxMsgGetData.

IMPLEMENTATION GUIDELINES
Before call
  • msgid must be a valid message object, requested via PxMsgRequest…​ or PxMsgEnvelop…​ or received by a PxMsgReceive…​ call (V). This id may be checked with one of the following macros:

    • PxMsgIdIsValid() must be true.

    • PxMsgIdGet() must not be _PXIllegalObjId.

    • PxMsgIdError() must be PXERR_NOERROR otherwise the returned error code has to be interpreted (C).

After call
  • The function returns PXERR_NOERROR if the access to the message data could be released. Any other return value describes an error, which has to be interpreted (C).

Best Practice
  • No restrictions.

SEE ALSO
USAGE
#include "pxdef.h"

PxError_t Err = PxMsgRelDataAccess(msgid);

if (Err != PXERR_NOERROR) {
    // Report error
}