Operating systems, development tools, and professional
services for connected embedded systems
Home
Developer Resources
Developer Support

QNX Developer Support

PDF Documents
More resources
[Previous] [Contents] [Index] [Next]

_pulse

Structure that describes a pulse

Synopsis:

#include <sys/neutrino.h>

struct _pulse {
    uint16_t                    type;
    uint16_t                    subtype;
    int8_t                      code;
    uint8_t                     zero[3];
    union sigval                value;
    int32_t                     scoid;
};

Description:

The _pulse structure describes a pulse, a fixed-size, nonblocking message that carries a small payload (four bytes of data plus a single byte code). The members include:

type
_PULSE_TYPE (0)
subtype
_PULSE_SUBTYPE (0)
code
A code that identifies the type of pulse. The QNX Neutrino OS reserves the negative codes, including the following:
  • _PULSE_CODE_UNBLOCK
  • _PULSE_CODE_DISCONNECT
  • _PULSE_CODE_THREADDEATH
  • _PULSE_CODE_COIDDEATH
  • _PULSE_CODE_NET_ACK, _PULSE_CODE_NET_UNBLOCK, and _PULSE_CODE_NET_DETACH -- reserved for the io_net resource manager.

You can define your own pulses, with a code in the range from _PULSE_CODE_MINAVAIL through _PULSE_CODE_MAXAVAIL.

value
Information that's relevant to the code:
  • _PULSE_CODE_UNBLOCK -- the receive ID (rcvid) associated with the blocking message.
  • _PULSE_CODE_DISCONNECT -- no value defined.
  • _PULSE_CODE_THREADDEATH -- the thread ID of the thread that died.
  • _PULSE_CODE_COIDDEATH -- the connection ID of a connection that was attached to a destroyed channel.

For more details, see ChannelCreate().

If you define your own pulses, you can decide what information you want to store in this field.

scoid
Server connection ID.

Classification:

QNX Neutrino

See also:

ChannelCreate(), MsgReceive(), MsgReceivePulse(), MsgReceivePulsev(), MsgReceivev(), MsgSendPulse(), sigevent


[Previous] [Contents] [Index] [Next]
 
©2013 QNX Software Systems Limited, a subsidiary of BlackBerry.   BlackBerry Logo