[Previous] [Contents] [Index] [Next]

PtPulseArmFd()

Arm a pulse for delivery from a process with a given file descriptor

Synopsis:

PtPulseMsgId_t *PtPulseArmFd( PtAppContext_t app, 
                              pid_t pulse, 
                              int fd, 
                              PtPulseMsg_t *msg );

Description:

This function arms a pulse and creates a "pulse message" to be sent to another process. The other process can use the pulse message and PtPulseDeliver() to send the pulse.

The app argument is the address of the application context, a structure that manages all the data associated with this application. For Photon 1.1x, this must be specified as NULL, so that the default context is used.

The pulse argument is a pulse ID returned by PtAppCreatePulse(). The fd argument is a file descriptor associated with the process that's going to deliver the pulse back to this process.

The msg argument points a pulse message that's created by the function. You'll need to send it to the process that's going to deliver the pulse.

When the pulse is no longer needed, you should call PtPulseDisarm() to release any resources that PtPulseArmFd() allocated (e.g. a virtual proxy in QNX 4).

Returns:

A pointer to the pulse message ID, or NULL if an error occurred.

Classification:

Photon

Safety:
Interrupt handler No
Signal handler No
Thread No

See also:

PtAppCreatePulse(), PtAppDeletePulse(), PtAppPulseTrigger(), PtChannelCreate(), PtPulseArmPid(), PtPulseDeliver(), PtPulseDisarm()

Interprocess Communication and Lengthy Operations in the Programmer's Guide


[Previous] [Contents] [Index] [Next]