PxMsgGetOwner()

Return the owner TaskId of the message.

APPLIES TO

8.2.0

SYNOPSIS
PxTask_t PxMsgGetOwner (PxMsg_t msgid);
ARGUMENTS
msgid

The message object

RETURN VALUES
  • Message owner

ERROR CODES

PXERR_MSG_ILLMSG

msgid is not a valid object id

PXERR_MSG_ILLUSER

The calling task is not user of this message

DESCRIPTION

PxMsgGetOwner returns the message’s owner.

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 returned value is the id of type PxTask_t. This id may be checked with one of the following macros:

    • PxTaskIdIsValid() must be true.

    • PxTaskIdGet() must not be _PXIllegalObjId.

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

  • Additionally the task id may be checked with PxTaskCheck() (F).

Best Practice
  • No restrictions.

SEE ALSO
USAGE
#include "pxdef.h"

PxTask_t Task = PxMsgGetOwner(msgid)

if (PxTaskIdGet(task) == _PXIllegalObjId)  {
    // Report error
}
else {
    // Handle task
}