GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > PBS / V2-10-13

Constituent: pbs     Tag: linux-gcc


Interface   Data Structures   File List   Data Fields   Globals  

RW.ih File Reference

Resource Wait, inline version. More...

#include "PBI/Inline.h"
#include "PBI/Attribute.h"
#include "PBS/RW.h"
#include "PBS/RW_pubdefs.h"

Include dependency graph for RW.ih:

This graph shows which files directly or indirectly include this file:


Defines

#define RW__EXP_PROTO   INLINE_USR_EXP_PROTO
 Export Prototype spec.
#define RW__LCL_PROTO   INLINE_USR_LCL_PROTO
 Internal Prototype spec.
#define RW__EXP_FNC   INLINE_USR_EXP_FNC
 Export Function declaration.
#define RW__LCL_FNC   INLINE_USR_LCL_FNC
 Internal Function declaration.

Functions

RW__EXP_PROTO int RW__disable (RW_ctl *rw) ATTR_UNUSED_OK
 Disables wakeup calls.
RW__EXP_PROTO int RW__enable (RW_ctl *rw) ATTR_UNUSED_OK
 Enables wakeup calls.
RW__EXP_PROTO int RW__enabled (const RW_ctl *rw) ATTR_UNUSED_OK
 Returns the state of the enabled flag.
RW__EXP_PROTO RW_key RW__lock (RW_ctl *rw) ATTR_UNUSED_OK
 Locks a resource so it can be manipulated in an interlocked fashion.
RW__EXP_PROTO RW_keys RW__lock2 (RW_ctl *rw_0, RW_ctl *rw_1) ATTR_UNUSED_OK
 Locks two resource so they can be manipulated in an interlocked fashion.
RW__EXP_PROTO int RW__unlock (RW_ctl *rw, RW_key key) ATTR_UNUSED_OK
 This routine unlocks a previously locked resource.
RW__EXP_PROTO int RW__unlock2 (RW_ctl *rw_0, RW_ctl *rw_1, RW_keys keys) ATTR_UNUSED_OK
 This routine unlocks a previously locked resource.
RW__EXP_PROTO RW_key RW__wait (RW_ctl *rw, RW_key key) ATTR_UNUSED_OK
 Blocks a task/thread until there is a reasonable chance that a resource is available.
RW__EXP_PROTO int RW__wake (RW_ctl *rw, RW_key key) ATTR_UNUSED_OK
 This provides the signaling mechanism to wake up a thread of code which is waiting for a resource.

Detailed Description

Resource Wait, inline version.

Author:
JJRussell - russell@slac.stanford.edu
   CVS $Id: RW.ih,v 1.5 2005/10/01 01:00:12 russell Exp $

Function Documentation

RW__EXP_FNC int RW__disable RW_ctl rw  ) 
 

Disables wakeup calls.

Parameters:
rw The resource wait control structure
Return values:
0 RW was previously disabled
!=0 RW was previously enabled
Wakeup calls are disabled by this call. Effectively wakeup calls issued during the time the RW control structure is disabled are pended until reenabled by calling RW__enable().

RW__EXP_FNC int RW__enable RW_ctl rw  ) 
 

Enables wakeup calls.

Parameters:
rw The resource wait control structure
Return values:
0 RW was previously disabled
!=0 RW was previously enabled
Wakeup calls are enabled by this call. The routine also issues a wakeup if there are any pending wakeup calls.

RW__EXP_FNC int RW__enabled const RW_ctl rw  ) 
 

Returns the state of the enabled flag.

Parameters:
rw The resource wait control structure
Return values:
0 RW was previously disabled
!=0 RW was previously enabled
Warning:
As with all queries of this type, the answer is only good until it changes. The user is cautioned on its usage. It is primarily provided as a debugging tool.

RW__EXP_PROTO RW_key RW__lock RW_ctl rw  ) 
 

Locks a resource so it can be manipulated in an interlocked fashion.

Returns:
A key to be passed to the RW__unlock routine.
Parameters:
rw The RW handle

RW__EXP_PROTO RW_keys RW__lock2 RW_ctl rw_0,
RW_ctl rw_1
 

Locks two resource so they can be manipulated in an interlocked fashion.

Returns:
A set of keys to be passed to the RW__unlock2 routine
Parameters:
rw_0 The RW handle of the first resource to be locked
rw_1 The RW handle of the second resource to be locked

RW__EXP_PROTO int RW__unlock RW_ctl rw,
RW_key  key
 

This routine unlocks a previously locked resource.

Parameters:
rw The RW handle
key The key used to lock the resource, returned from RW__lock

RW__EXP_PROTO int RW__unlock2 RW_ctl rw_0,
RW_ctl rw_1,
RW_keys  keys
 

This routine unlocks a previously locked resource.

Parameters:
rw_0 The RW handle of the first resource to be unlocked
rw_1 The RW handle of the second resource to be unlocked
keys The keys used to lock the resources, returned from RW_lock2

RW__EXP_PROTO RW_key RW__wait RW_ctl rw,
RW_key  key
 

Blocks a task/thread until there is a reasonable chance that a resource is available.

Parameters:
rw The RW handle
key The key used to unlock the interrupts
Returns:
Status

RW__EXP_PROTO int RW__wake RW_ctl rw,
RW_key  key
 

This provides the signaling mechanism to wake up a thread of code which is waiting for a resource.

Parameters:
rw The RW handle
key The key used to unlock the resource.
Return values:
Status This routine checks if any thread is waiting for a resource, and if so wakes that thread. The resource should be locked on entry to this routine. This routine always exits with the resource still locked.


Generated on Fri Feb 9 02:19:37 2007 by  doxygen 1.4.4